إصدار Redis 6.0

مُعد إصدار نظام إدارة قواعد البيانات (DBMS). ريديس 6.0، ينتمي إلى فئة أنظمة NoSQL. يوفر Redis وظائف تشبه Memcached لتخزين بيانات المفتاح/القيمة، معززة بدعم تنسيقات البيانات المنظمة مثل القوائم والتجزئة والمجموعات، والقدرة على تشغيل معالجات البرامج النصية من جانب الخادم في Lua. رمز المشروع زودت بموجب ترخيص BSD. وحدات إضافية توفر إمكانات متقدمة لمستخدمي المؤسسات مثل RediSearch وRedisGraph وRedisJSON وRedisML وRedisBloom منذ العام الماضي زودت بموجب ترخيص RSAL الملكية. ويستمر المشروع في تطوير الإصدارات المفتوحة من هذه الوحدات بموجب ترخيص AGPLv3 هيئة جيدة.

على عكس Memcached، يوفر Redis تخزينًا مستمرًا للبيانات على القرص ويضمن سلامة قاعدة البيانات في حالة إيقاف التشغيل في حالات الطوارئ. يتم توزيع الكود المصدري للمشروع بموجب ترخيص BSD. تتوفر مكتبات العملاء لمعظم اللغات الشائعة، بما في ذلك Perl وPython وPHP وJava وRuby وTcl. يدعم Redis المعاملات، التي تسمح لك بتنفيذ مجموعة من الأوامر في خطوة واحدة، مما يضمن الاتساق والاتساق (الأوامر الواردة من الطلبات الأخرى لا يمكن أن تتداخل) في تنفيذ مجموعة معينة من الأوامر، وفي حالة حدوث مشاكل، يسمح لك بالتراجع التغييرات. يتم تخزين جميع البيانات مؤقتًا بالكامل في ذاكرة الوصول العشوائي (RAM).

يتم توفير أوامر مثل الزيادة/النقصان، والقائمة القياسية وعمليات التعيين (الاتحاد، والتقاطع)، وإعادة تسمية المفاتيح، والتحديدات المتعددة، ووظائف الفرز لإدارة البيانات. يتم دعم وضعين للتخزين: المزامنة الدورية للبيانات على القرص وصيانة سجل التغيير على القرص. وفي الحالة الثانية، يتم ضمان السلامة الكاملة لجميع التغييرات. من الممكن تنظيم النسخ المتماثل للبيانات الرئيسية والتابعة إلى عدة خوادم، ويتم ذلك في وضع غير محظور. يتوفر أيضًا وضع المراسلة "النشر/الاشتراك"، حيث يتم إنشاء قناة، ويتم توزيع الرسائل منها على العملاء عن طريق الاشتراك.

مفتاح تحسيناتتمت إضافته في Redis 6.0:

  • افتراضيًا، يتم اقتراح بروتوكول RESP3 الجديد، لكن إعداد الاتصال يبدأ في وضع RESP2 ويتحول العميل إلى البروتوكول الجديد فقط إذا تم استخدام أمر HELLO الجديد عند التفاوض على الاتصال. يسمح لك RESP3 بإرجاع أنواع البيانات المعقدة مباشرة دون الحاجة إلى تحويل المصفوفات العامة من جانب العميل ومن خلال فصل أنواع الإرجاع.
  • دعم قائمة التحكم بالوصول (دوري أبطال آسيا)، مما يتيح لك التحديد الدقيق للعمليات التي يمكن للعميل إجراؤها وتلك التي لا يمكنه تنفيذها. تتيح قوائم ACL أيضًا الحماية من الأخطاء المحتملة أثناء التطوير، على سبيل المثال، يمكن منع المعالج الذي ينفذ عملية BRPOLPUSH فقط من تنفيذ عمليات أخرى، وإذا تم نسيان استدعاء FLUSHALL الذي تمت إضافته أثناء تصحيح الأخطاء عن طريق الخطأ في كود الإنتاج، فسيؤدي ذلك إلى لا تؤدي إلى مشاكل. لا يؤدي تنفيذ قائمة التحكم بالوصول (ACL) إلى تحمل أي نفقات إضافية وليس له أي تأثير فعليًا على الأداء. تم أيضًا إعداد وحدات الواجهة لـ ACL، مما يجعل من الممكن إنشاء طرق المصادقة الخاصة بك. لعرض جميع انتهاكات ACL المسجلة، يتم توفير أمر "ACL LOG". لإنشاء مفاتيح جلسة غير متوقعة، تمت إضافة الأمر "ACL GENPASS" باستخدام HMAC المستند إلى SHA256.
  • Поддержка SSL / TLS لتشفير قناة الاتصال بين العميل والخادم.
  • Поддержка تخزين البيانات مؤقتًا من جانب العميل. للتوفيق بين ذاكرة التخزين المؤقت من جانب العميل وحالة قاعدة البيانات، يتوفر وضعان: 1. تذكر المفاتيح التي طلبها العميل مسبقًا على الخادم لإبلاغه بفقدان أهمية الإدخال في ذاكرة التخزين المؤقت للعميل. 2. آلية “البث”، وفيها يشترك العميل في بادئات مفاتيح معينة ويقوم الخادم بإعلامه في حالة تغير المفاتيح التي تندرج تحت هذه البادئات. وتتمثل ميزة وضع "البث" في أن الخادم لا يهدر ذاكرة إضافية في تخزين خريطة القيم المخزنة مؤقتًا على جانب العميل، ولكن العيب هو زيادة عدد الرسائل المرسلة.
  • تمت إزالة وسيط رسائل Disque، الذي يسمح لك باستخدام Redis لمعالجة قوائم انتظار الرسائل، من البنية الأساسية في وحدة منفصلة.
  • وأضاف وكيل الكتلة، وكيل لمجموعة من خوادم Redis، مما يسمح للعميل بالعمل مع العديد من خوادم Redis كما لو كانت مثيلًا واحدًا. يمكن للوكيل توجيه الطلبات إلى العقد بالبيانات الضرورية، والاتصالات المتعددة، وإعادة تكوين المجموعة في حالة اكتشاف فشل العقدة، وتنفيذ الطلبات التي تمتد عبر عقد متعددة.
  • تم تحسين واجهة برمجة التطبيقات (API) الخاصة بوحدات الكتابة بشكل كبير، مما أدى بشكل أساسي إلى تحويل Redis إلى إطار عمل يسمح لك بإنشاء أنظمة في شكل وحدات إضافية.
  • تم تنفيذ وضع النسخ المتماثل حيث يتم حذف ملفات RDB فورًا بعد استخدامها.
  • تم تحسين بروتوكول النسخ المتماثل PSYNC2، مما جعل من الممكن إجراء إعادة المزامنة الجزئية في كثير من الأحيان، من خلال زيادة فرص تحديد الإزاحات المشتركة بين النسخة المتماثلة والرئيسية.
  • تم تسريع تحميل ملفات RDB. اعتمادًا على محتوى الملف، يتراوح التسارع من 20 إلى 30%. تم تسريع تنفيذ أمر INFO بشكل ملحوظ عندما يكون هناك عدد كبير من العملاء المتصلين.
  • تمت إضافة أمر STRALGO جديد مع تنفيذ خوارزميات معالجة السلسلة المعقدة. حاليًا، تتوفر خوارزمية LCS واحدة فقط (أطول تسلسل لاحق مشترك)، والتي يمكن أن تكون مفيدة عند مقارنة تسلسلات RNA وDNA.

المصدر: opennet.ru

إضافة تعليق