ما هو الإدخال/إخراج التنبؤ؟

الإدخال/الإخراج التنبؤي هو مجموعة من تحسينات Azure Databricks التي تحسن الأداء لتفاعلات البيانات. يتم تجميع قدرات الإدخال/الإخراج التنبؤية في الفئات التالية:

  • تقلل عمليات القراءة المتسارعة من الوقت المستغرق لمسح البيانات ضوئيا وقراءتها.
  • تقلل التحديثات المتسارعة من كمية البيانات التي يجب إعادة كتابتها أثناء التحديثات والحذف والدمج.

الإدخال/الإخراج التنبؤي حصري لمحرك Photon على Azure Databricks.

استخدام الإدخال/إخراج التنبؤ لتسريع القراءات

يتم استخدام الإدخال/الإخراج التنبؤي لتسريع أداء مسح البيانات وتصفيتها لجميع العمليات على أنواع الحوسبة المدعومة.

هام

يتم دعم قراءات الإدخال/الإخراج التنبؤية من قبل الأنواع بلا خادم والمحترفين من مستودعات SQL، والمجموعات المسرعة بفوتون التي تقوم بتشغيل Databricks Runtime 11.3 LTS وما فوق.

يحسن الإدخال/الإخراج التنبؤي أداء المسح الضوئي من خلال تطبيق تقنيات التعلم العميق للقيام بما يلي:

  • حدد نمط الوصول الأكثر كفاءة لقراءة البيانات ومسح البيانات المطلوبة بالفعل فقط.
  • قم بإزالة فك ترميز الأعمدة والصفوف غير المطلوبة لإنشاء نتائج الاستعلام.
  • حساب احتمالات معايير البحث في استعلامات انتقائية مطابقة لصف. أثناء تشغيل الاستعلامات، نستخدم هذه الاحتمالات لتوقع مكان حدوث صف المطابقة التالي وقراءة تلك البيانات فقط من التخزين السحابي.

استخدام الإدخال/إخراج التنبؤ لتسريع التحديثات

يتم استخدام الإدخال/الإخراج التنبؤي للتحديثات تلقائيا لجميع الجداول التي تم تمكين متجهات الحذف بها باستخدام أنواع الحوسبة التالية الممكنة بواسطة Photon:

  • مستودعات SQL بلا خادم.
  • مستودعات Pro SQL.
  • المجموعات التي تقوم بتشغيل Databricks Runtime 14.0 وما فوق.

إشعار

يتوفر دعم الإدخال/إخراج التنبؤ للتحديثات في Databricks Runtime 12.2 LTS والإصدارات الأحدث، ولكن Databricks توصي باستخدام 14.0 وما فوق للحصول على أفضل أداء.

راجع ما هي متجهات الحذف؟.

هام

يتحكم إعداد مسؤول مساحة العمل في ما إذا كانت متجهات الحذف ممكنة تلقائيا لجداول Delta الجديدة. راجع تمكين متجهات الحذف تلقائيا.

يمكنك تمكين دعم متجهات الحذف على جدول Delta Lake عن طريق تعيين خاصية جدول Delta Lake. يمكنك تمكين متجهات الحذف أثناء إنشاء جدول أو تغيير جدول موجود، كما في الأمثلة التالية:

CREATE TABLE <table-name> [options] TBLPROPERTIES ('delta.enableDeletionVectors' = true);

ALTER TABLE <table-name> SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);

تحذير

عند تمكين متجهات الحذف، تتم ترقية إصدار بروتوكول الجدول. بعد الترقية، لن يكون الجدول قابلا للقراءة من قبل عملاء Delta Lake الذين لا يدعمون متجهات الحذف. راجع كيف تدير Azure Databricks توافق ميزة Delta Lake؟.

للحصول على قائمة بالعملاء الذين يدعمون متجهات الحذف، راجع التوافق مع عملاء Delta.

في Databricks Runtime 14.1 وما فوق، يمكنك إسقاط ميزة جدول متجهات الحذف لتمكين التوافق مع عملاء Delta الآخرين. راجع ميزات جدول Drop Delta.

يستفيد الإدخال/الإخراج التنبؤي من متجهات الحذف لتسريع التحديثات عن طريق تقليل تكرار إعادة كتابة الملفات الكاملة أثناء تعديل البيانات على جداول Delta. يحسن DELETEالإدخال/إخراج التنبؤ عمليات و MERGEو UPDATE .

بدلا من إعادة كتابة كافة السجلات في ملف بيانات عند تحديث أي سجل أو حذفه، يستخدم الإدخال/الإخراج التنبؤي متجهات الحذف للإشارة إلى أنه تمت إزالة السجلات من ملفات البيانات الهدف. يتم استخدام ملفات البيانات التكميلية للإشارة إلى التحديثات.

تعمل القراءات اللاحقة على الجدول على حل حالة الجدول الحالية عن طريق تطبيق التغييرات المذكورة على أحدث إصدار للجدول.

هام

تشترك تحديثات الإدخال/الإخراج التنبؤية في جميع القيود مع متجهات الحذف. في Databricks Runtime 12.2 LTS والإكبر، توجد القيود التالية:

  • مشاركة دلتا غير معتمدة على الجداول مع تمكين متجهات الحذف.
  • لا يمكنك إنشاء ملف بيان لجدول به متجهات حذف موجودة. قم بتشغيل REORG TABLE ... APPLY (PURGE) وتأكد من عدم تشغيل أي عمليات كتابة متزامنة لإنشاء بيان.
  • لا يمكنك إنشاء ملفات بيان بشكل متزايد لجدول مع تمكين متجهات الحذف.