لقد تم الإعلان عن ذلك إطلاق النسخة الجديدة من «Valkey 8.1»، شوكة Redis التي ولدت بعد انتقالها إلى ترخيص خاص، والتي تسعى إلى الحفاظ على الفلسفة المفتوحة للمشروع الأصلي.
فالكي 8.1 فهو يتميز بعدد كبير من التحسينات والتغييرات، الذي يركز بشكل أساسي على تحسينات الأداء التي تقلل من زمن الوصول وتزيد من كفاءة الذاكرة والقدرات المعيارية الجديدة.
الميزات الجديدة الرئيسية في Valkey 8.1
A من أهم التغييرات في هذا الإصدار هو إعادة كتابة جدول التجزئة بالكامل، يتم استخدامها في كل من تخزين البيانات ذات القيمة الرئيسية وأنواع البيانات المنظمة مثل Hash وSet وSorted Set. بفضل هذا التصميم الجديد، تم تحقيق انخفاض في استخدام الذاكرة: 20 بايت أقل لكل مفتاح بدون TTL، وما يصل إلى 30 بايتًا إذا كان للمفتاح عمر محدد. بالإضافة إلى ذلك، أدى تقليل الوصول إلى الذاكرة العشوائية إلى تحسين الأداء بنسبة 10% في بيئات الإدخال/الإخراج أحادية الخيط.
من الميزات الجديدة الأخرى في Valkey 8.1 هي إمكانية التكرار على المفاتيح في العمليات مثل أمر KEYS أو تتميز عملية نقل المفاتيح بين العقد في مجموعة الآن بنظام تحميل ذاكرة التخزين المؤقت مسبقًا، الذي يسمح بتوفر المفتاح التالي قبل بدء المعالجة. لقد أدى هذا النهج إلى زيادة سرعة البحث عن المفتاح بمقدار 3,5 مرة من خلال الاستفادة بشكل أفضل من ذاكرة التخزين المؤقت للمعالج.
تحسينات متعددة الخيوط في الإدخال/الإخراج وTLS
تستمر شركة Valkey في التحول إلى نموذج الإدخال/الإخراج متعدد الخيوط. الآن، تتم معالجة اتصال TLS في تدفقات منفصلة، مما أدى إلى مضاعفة القدرة على قبول اتصالات جديدة. تم أيضًا عزل وظائف مثل SSL_pending() وERR_clear_error() في خيوط منفصلة، مما أدى إلى زيادة الأداء بنسبة 10% لعمليات SET وزيادة بنسبة 22% لعمليات GET.
تم تحسين التكرار، وخاصةً في البيئات ذات TLS النشط، مما يؤدي إلى التخلص من العمليات المكررة مثل عمليات التحقق غير الضرورية. وقد أدى ذلك إلى تحسن بنسبة 18% في المزامنة الكاملة أثناء النسخ بدون أقراص وانخفاض بنسبة 47% في تكلفة عمليات النسخ والكتابة.
تحسينات على المجموعات المرتبة والأنواع الاحتمالية
El أمر ZRANK تم تحسين المجموعات المرتبة و لقد أصبح الآن أسرع بنسبة 45%، في حين اعتمدت ZADD تعليمات SIMD لتحقيق قدر أكبر من الكفاءة. بالنسبة لأنواع البيانات الاحتمالية، تم تحسين استخدام HyperLogLog لاستخدام 12 كيلوبايت فقط من الذاكرة الثابتة، كما سمح استخدام تعليمات AVX2 بضرب أداء عمليات PFMERGE وPFCOUNT بما يصل إلى 12 مرة، وBITCOUNT بما يصل إلى 5 مرات.
إلغاء التجزئة النشط دون انقطاع والمزيد من التحكم في السجلات
El تم أيضًا تحسين نظام إلغاء التجزئة النشط لتجنب الانسدادات أو التأخير. الآن، تستغرق كل دورة إلغاء تجزئة 500 ميكروثانية فقط، وتم تنفيذ استراتيجية لمكافحة المجاعة لمنع تأجيل هذه المهام بسبب العمليات طويلة الأمد.
قدم خيارات تكوين جديدة لتنسيق السجلات، بما في ذلك تنسيقات الوقت المخصصة ووضع COMMANDLOG الجديد الذي يسجل الطلبات والاستجابات الطويلة. بالإضافة إلى ذلك، تم توسيع أمر LATENCY LATEST بمقاييس جديدة، مما يوفر رؤية أكبر لأوقات الذروة وحجم الاستجابة المسجلة.
الميزات والوحدات والدعم الجديدة
فالكي يسمح لك الآن بتنفيذ عملية SET IFEQ، الذي يشترط كتابة مفتاح للقيمة الحالية. أيضًا تم تقديم الدعم المعياري لمحركات النصوص، مما يفتح إمكانية استخدام لغات بديلة للغة Lua من خلال وحدات مخصصة.
في هذا الإصدار أيضًا ظهور عدة وحدات لأول مرة:
- وحدة البحث (جوجل): محرك بحث تشابه المتجهات، مثالي لحالات التعلم الآلي التي تتطلب زمن انتقال منخفضًا وإنتاجية عالية.
- وحدة JSON (AWS): يسمح بالتلاعب المباشر بأجزاء مستند JSON، مما يتجنب المعالجة الكاملة للمحتوى على العميل.
- وحدة مرشح بلوم (AWS): تنفيذ مرشحات بلوم، المفيدة لتحديد العضوية المحتملة لعنصر في مجموعة، بكفاءة احتمالية
أخيرًا ، إذا كنت مهتمًا بأن تكون قادرًا على معرفة المزيد عنها ، فيمكنك الرجوع إلى التفاصيل في الرابط التالي.