حجم الجدول على Azure Databricks
يختلف حجم الجدول الذي تم الإبلاغ عنه للجداول المدعومة من Delta Lake على Azure Databricks عن الحجم الإجمالي لدلائل الملفات المقابلة في تخزين كائن السحابة. تتناول هذه المقالة سبب وجود هذا الاختلاف وتوصيات للتحكم في التكاليف.
تشير أحجام الجداول التي تم الإبلاغ عنها في Azure Databricks من خلال UIs والأوامر DESCRIBE
إلى الحجم الإجمالي لملفات البيانات على القرص لتلك الملفات المشار إليها في الإصدار الحالي من جدول Delta. تتطلب معظم العمليات التي تكتب إلى الجداول إعادة كتابة ملفات البيانات الأساسية، ولكن يتم الاحتفاظ بملفات البيانات القديمة لفترة من الوقت لدعم استعلامات السفر عبر الوقت.
ملاحظة
إذا قمت بحذف السجلات أو تحديثها بانتظام في الجداول، يمكن أن تعمل متجهات الحذف على تسريع الاستعلامات وتقليل الحجم الإجمالي لملفات البيانات. راجع ما هي متجهات الحذف؟.
توصي Databricks باستخدام الجداول المدارة في كتالوج Unity مع تمكين التحسين التنبؤي. باستخدام الجداول المدارة والتحسين التنبؤي، يتم تشغيل OPTIMIZE
Databricks تلقائيا والأوامر VACUUM
لمنع إنشاء ملفات البيانات غير المستخدمة. توقع أن يكون هناك دائما فرق في الحجم بين الإصدار الحالي من الجدول والحجم الإجمالي لملفات البيانات في تخزين كائن السحابة. وذلك لأن ملفات البيانات غير المشار إليها في الإصدار الحالي مطلوبة لدعم استعلامات السفر عبر الوقت. راجع التحسين التنبؤي للجداول المدارة لكتالوج Unity.
عند تنظيف ملفات البيانات غير المستخدمة باستخدام VACUUM
أو استخدامها DRY RUN
لمعاينة الملفات التي تم تعيينها لإزالتها، تبلغ المقاييس عن عدد الملفات وحجم البيانات التي تمت إزالتها. يختلف حجم وعدد الملفات التي تمت إزالتها حسب VACUUM
بشكل كبير، ولكن ليس من غير المألوف أن يتجاوز حجم الملفات التي تمت إزالتها الحجم الإجمالي للإصدار الحالي من الجدول.
عند OPTIMIZE
التشغيل على جدول هدف، تجمع ملفات البيانات الجديدة السجلات من ملفات البيانات الموجودة. تؤثر التغييرات التي تم إجراؤها أثناء OPTIMIZE
تنظيم البيانات فقط، ولا تحدث أي تغييرات على محتويات البيانات الأساسية. يزيد الحجم الإجمالي لملفات البيانات المقترنة بالجدول بعد OPTIMIZE
التشغيل، لأن الملفات المضغوطة الجديدة تتعايش في الدليل الذي يحتوي على ملفات البيانات التي لم تعد مرجعية.
حجم الجدول الذي تم الإبلاغ عنه بعد OPTIMIZE
أصغر بشكل عام من الحجم قبل OPTIMIZE
التشغيل، لأن الحجم الإجمالي لملفات البيانات المشار إليها بواسطة إصدار الجدول الحالي ينخفض مع ضغط البيانات. VACUUM
يجب تشغيله بعد مرور حد الإيجار لإزالة ملفات البيانات الأساسية.
ملاحظة
قد ترى مقاييس مشابهة لعمليات مثل REORG TABLE
أو DROP FEATURE
. تزيد جميع العمليات التي تتطلب إعادة كتابة ملفات البيانات من الحجم الإجمالي للبيانات في الدليل الذي يحتوي على حتى VACUUM
إزالة ملفات البيانات التي لم تعد مشار إليها في إصدار الجدول الحالي.