مُفَسِّرات Go أسرع: اللحاق بـ C++

2025-04-05
مُفَسِّرات Go أسرع: اللحاق بـ C++

تم تنفيذ محرك تقييم SQL المضمّن في Vitess، وهو قاعدة البيانات مفتوحة المصدر التي تُشغّل PlanetScale، في الأصل كمحوّل AST كان يعمل مباشرةً على AST SQL المُولَّدة بواسطة مُحلِّلنا. خلال العام الماضي، استبدلناه تدريجيًا بآلة افتراضية، والتي على الرغم من كتابتها بلغة Go بشكلٍ أصلي، إلا أنها تُقدّم أداءً مُشابهاً لرمز التقييم الأصلي بلغة C++ في MySQL. والأكثر لفتًا للنظر، أن الآلة الافتراضية الجديدة أثبتت مرارًا وتكرارًا أنها أسهل في الصيانة من مُفَسِّر Go الأصلي، على الرغم من أنها أسرع بمقدار أوامر حجمية. دعونا نراجع خيارات التنفيذ التي اتخذناها للحصول على هذه النتائج المُذهلة.

اقرأ المزيد
التطوير

PlanetScale تكشف عن معدل الفشل الحقيقي لـ EBS: إنه ليس ثنائياً، بل تدهوراً مستمراً

2025-03-18
PlanetScale تكشف عن معدل الفشل الحقيقي لـ EBS: إنه ليس ثنائياً، بل تدهوراً مستمراً

بناءً على استخدامها الضخم لخدمة Amazon EBS، تكشف PlanetScale أن معدل الفشل الحقيقي أعلى بكثير مما تشير إليه وثائق AWS. تشير المقالة إلى أن بطء EBS أكثر شيوعًا بكثير من الفشل التام، مع تقلبات متكررة في الأداء حتى عند تحقيق ضمانات أداء AWS، مما يتسبب في انقطاع الخدمة عن التطبيقات. هذا التدهور ليس عشوائيًا؛ إنه متأصل في تعقيد النظام. تقوم PlanetScale بالتخفيف من المشكلات من خلال المراقبة والاستبدال التلقائي لأحجام EBS، مما أدى في النهاية إلى PlanetScale Metal لتجنب مشكلات أداء تخزين الشبكة.

اقرأ المزيد

PlanetScale Metal: التخلص من اختناق مدخلات/مخرجات قواعد البيانات السحابية

2025-03-13
PlanetScale Metal: التخلص من اختناق مدخلات/مخرجات قواعد البيانات السحابية

تستعرض هذه المقالة تاريخ تطور تقنيات تخزين الكمبيوتر، من الشرائط إلى محركات الأقراص الثابتة إلى محركات الأقراص ذات الحالة الثابتة (SSDs)، وتحديات أداء مدخلات/مخرجات التي تسببها الحوسبة السحابية. تستخدم خدمات قواعد البيانات السحابية التقليدية عادةً تخزينًا متصلًا بالشبكة (NAS)، مما يؤدي إلى ارتفاع زمن الوصول وتقييد عمليات إدخال/إخراج في الثانية (IOPS). يستخدم منتج Metal من PlanetScale محركات أقراص NVMe محلية، ويربط الحوسبة والتخزين مباشرةً، لتحقيق زمن وصول منخفض للغاية، وعمليات إدخال/إخراج في الثانية غير محدودة، وقدرة عالية على تحمل البيانات، وبذلك يحل مشكلة اختناق مدخلات/مخرجات قواعد البيانات السحابية بالكامل.

اقرأ المزيد
التكنولوجيا تقنية التخزين

التغلب على تنازع أقفال عدادات قواعد البيانات: نمط العداد ذي الفتحات

2025-02-04
التغلب على تنازع أقفال عدادات قواعد البيانات: نمط العداد ذي الفتحات

غالبًا ما تؤدي تحديثات عدادات قواعد البيانات في سيناريوهات عالية التزامن إلى تنازع الأقفال، مما يتسبب في انخفاض الأداء وحتى حالات الاختناق. تُقدم هذه المقالة نمطًا يسمى "عدادات ذات فتحات" يخفف بشكل فعال من تنازع الأقفال عن طريق توزيع العدادات على فتحات متعددة. يُوزع هذا النمط عمليات التحديث على صفوف متعددة، مما يلغي اختناق تحديثات الصف الواحد ويُحسّن أداء التزامن. استخدم GitHub حلًا مشابهًا لمعالجة مشكلات العد؛ والفكرة الرئيسية هي توزيع عمليات التحديث على صفوف متعددة، ثم تجميعها للحصول على العدد النهائي.

اقرأ المزيد