إصدار TiDB 4.0 لنظام DBMS الموزع

متاح توزيع إصدار DBMS TiDB4.0تم تطويره تحت تأثير تقنيات Google مفتاح البراغي и F1. ينتمي TiDB إلى فئة أنظمة HTAP (المعاملات الهجينة / المعالجة التحليلية) القادرة على توفير المعاملات في الوقت الفعلي (OLTP) ومعالجة الاستعلامات التحليلية. المشروع مكتوب بلغة Go و وزعت من خلال مرخص بموجب Apache 2.0.

ميزات TiDB:

  • دعم SQL وتوفير واجهة عميل متوافقة مع بروتوكول MySQL ، مما يجعل من السهل تكييف التطبيقات الحالية المكتوبة لـ MySQL مع TiDB ، كما يسمح لك باستخدام مكتبات العملاء الشائعة. بالإضافة إلى بروتوكول MySQL ، يمكنك استخدام API المستندة إلى JSON والموصل لـ Spark للوصول إلى DBMS.
  • من بين ميزات SQL ، يتم دعم الفهارس والوظائف التجميعية GROUP BY و ORDER BY والتعبيرات المميزة والدمج (LEFT JOIN / RIGHT JOIN / CROSS JOIN) وطرق العرض ووظائف النافذة والاستعلامات الفرعية. الفرص المتاحة كافية لتنظيم العمل مع TiDB لتطبيقات الويب مثل PhpMyAdmin ، Gogs وورد ؛
  • التوسع والمرونة: يمكن زيادة سعة التخزين والمعالجة ببساطة عن طريق إضافة عقد جديدة. يتم توزيع البيانات عبر العقد مع التكرار للسماح بمواصلة العمليات في حالة فشل العقد الفردية. يتم التعامل مع حالات الفشل تلقائيًا.
  • يضمن النظام الاتساق ويبدو كأنه نظام DBMS واحد كبير لبرنامج العميل ، على الرغم من حقيقة أن البيانات من العديد من العقد تُستخدم بالفعل لإكمال المعاملة.
  • لتخزين البيانات فعليًا على العقد، يمكن استخدام واجهات خلفية مختلفة، على سبيل المثال، محركات التخزين المحلية GoLevelDB وBoltDB أو محركات التخزين الموزعة الخاصة بنا تيكف وتيفلاش. يقوم TiKV بتخزين البيانات في سلاسل بتنسيق المفتاح/القيمة وهو أكثر مثالية لمهام معالجة المعاملات (OLTP). يقوم TiFlash بتخزين البيانات بطريقة عمودية ويسمح لك بتحقيق أداء أعلى عند حل المشكلات التحليلية (OLAP).
  • القدرة على تغيير مخطط التخزين بشكل غير متزامن ، مما يسمح لك بإضافة أعمدة وفهارس بسرعة دون إيقاف معالجة العمليات الجارية.

في الإصدار الجديد:

  • افتراضيًا، يتم تمكين أداة تجميع البيانات المهملة الموزعة Green GC، والتي يمكن أن تزيد بشكل كبير من سرعة جمع البيانات المهملة في مجموعات كبيرة وتحسين الاستقرار؛
  • تمت إضافة دعم للمعاملات الكبيرة، التي يقتصر حجمها تقريبًا على حجم الذاكرة الفعلية. تمت زيادة الحد الأقصى لحجم المعاملة الواحدة من 100 ميجابايت إلى 10 جيجابايت؛
  • تمت إضافة دعم لأوامر النسخ الاحتياطي والاستعادة للنسخ الاحتياطي؛
  • تمت إضافة القدرة على ضبط الأقفال على الجداول؛
  • تمت إضافة آلية عزل المعاملات على مستوى القراءة المتوافقة مع MySQL (القراءة ملتزم بها)؛
  • تمت إضافة دعم لتعبيرات LIKE وWHERE إلى أمر "ADMIN SHOW DDL JOBS"؛
  • تمت إضافة المعلمة oom-use-tmp-storage، والتي تسمح لك باستخدام الملفات المؤقتة لتخزين النتائج المتوسطة مؤقتًا عندما لا يكون هناك ذاكرة وصول عشوائي كافية؛
  • تمت إضافة الكلمة الأساسية Random لتعيين قيم عشوائية للسمات؛
  • أصبح لدى الأمر LOAD DATA الآن القدرة على استخدام التعبيرات السداسية العشرية والثنائية؛
  • تمت إضافة 15 معلمة للتحكم في سلوك المحسن؛
  • تمت إضافة أدوات لتشخيص أداء استعلامات SQL. تمت إضافة سجل للاستعلامات البطيئة، يمكن الوصول إليها من خلال جداول النظام SLOW_QUERY / CLUSTER_SLOW_QUERY؛
  • تمت إضافة دعم لوظائف العمل بالتسلسلات؛
  • تمت إضافة القدرة على تغيير معلمات التكوين ديناميكيًا المقروءة من PD (برنامج تشغيل الموضع، خادم إدارة المجموعة). تمت إضافة القدرة على استخدام تعبير "SET CONFIG" لتغيير إعدادات عقد PD/TiKV.
  • تمت إضافة إعداد الحد الأقصى لاتصالات الخادم للحد الأقصى لعدد الاتصالات المتزامنة بالخادم (الافتراضي 4096)؛
  • تحسين الأداء في الحالات التي تتم فيها تغطية الأعمدة المطلوبة بالكامل بواسطة الفهارس؛
  • تمت إضافة تحسين الاستعلام بناءً على دمج الفهرس؛
  • تحسين أداء العمليات ذات نطاقات القيمة؛
  • تقليل حمل وحدة المعالجة المركزية عن طريق التخزين المؤقت لنتائج الوصول إلى الفهارس وتصفية التكرارات؛
  • تمت إضافة دعم لتنسيق تخزين الصفوف الجديد الذي يسمح لك بزيادة أداء الجداول التي تحتوي على عدد كبير من الأعمدة؛
  • تدعم الدالة GROUP_CONCAT الآن التعبير "ORDER BY"؛
  • تمت إضافة القدرة على استخراج البيانات من سجل TiFlash عبر SQL؛
  • يدعم الأمر RECOVER TABLE الآن استعادة الجداول المقتطعة؛
  • تمت إضافة جدول نظام DDLJobs للاستعلام عن تفاصيل حول تنفيذ مهمة DDL؛
  • تمت إضافة القدرة على استخدام أمر SHOW CONFIG لعرض إعدادات PD وTiKV؛
  • متضمنة ذاكرة التخزين المؤقت للمعالج المساعد بشكل افتراضي؛
  • يمكن الآن التحكم في عدد coroutines (goroutines) في مرحلة إعادة المحاولة للالتزام باستخدام إعداد الالتزام-التزامن؛
  • تمت إضافة القدرة على عرض مناطق تقسيم الجدول؛
  • تمت إضافة القدرة على تحديد حجم التخزين المؤقت إلى خادم Tidb؛
  • تمت إضافة دعم للعمليات "إدراج في قسم tbl_name (partition_name_list)" و"استبدال في قسم tbl_name (partition_name_list)"؛
  • في التجزئة المستخدمة للتقسيم، تمت إضافة دعم التصفية بناءً على السمة "خالية"؛
  • بالنسبة للجداول المقسمة، تمت إضافة دعم لعمليات فحص الفهرس والتنظيف والإصلاح.

المصدر: opennet.ru

إضافة تعليق