مستقبل بحيرات البيانات: شرح Apache Iceberg

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

أبرز تنسيق جداول مفتوح المصدر تم إنشاؤه لتحليل البيانات على نطاق واسع هو Apache Iceberg. إن Iceberg في طليعة هذه التحولات ويعزز قيمة البيانات في معمارية البيت البحيري. بالإضافة إلى ذلك، يوفر Iceberg حلولًا للعديد من المشاكل التي تواجهها البحيرات البيانية، بما في ذلك تطور النظام البياني، وعمليات ACID، واتساق البيانات، وأداء الاستعلامات. 

هذا المنشور على المدونة هو الأول في سلسلة تتألف من ثلاثة أجزاء تستكشف Apache Iceberg ودوره في الهندسة المعمارية الحديثة للبيانات. في هذا المنشور، سيكون التركيز على المواضيع التالية:

  1. التطور من مستودعات البيانات إلى البحيرات البيانية
  2. التحديات المرتبطة بالنهج التقليدي
  3. كيفية عنونة مشاكل Apache Iceberg هذه

سيتناول المنشورات التالية في هذه السلسلة استكشافًا أعمق في بنية Iceberg واستكشاف كيفية عمل الاستعلامات ضمن جداول Iceberg.

ملخص موجز: تطور بحيرات البيانات من مستودعات البيانات

على مدى سنوات لا تُحصى، اعتمدت الشركات على مستودعات البيانات التي كانت تعتبر الأساس المركزي للتحليلات. يعمل مستودع البيانات كمستودع مركزي مخصص لالتقاط البيانات المهيكلة من مصادر متنوعة لإنتاج تقارير ورؤى بكفاءة. في الوقت الحالي، تُيسر مستودعات البيانات أداء الاستعلامات السريعة بالإضافة إلى آليات حوكمة قوية، مما يمكنها من أن تكون موثوقة ومنظمة بشكل جيد.

ومع ذلك، واجهت المنظمات مشاكل جديدة مع زيادة حجم البيانات.

  1. زيادة تكاليف التخزين بسبب رسوم الحوسبة العالية وتكاليف التخزين
  2. فرض النموذج البياني الصارم الذي جعل تكامل البيانات شبه المهيكلة أو غير المهيكلة صعبًا
  3. الدعم لأحمال العمل AI والتعلم الآلي كان محدودًا

كحل، بدأت الشركات في استخدام بحيرات البيانات. فعل ذلك سمح للشركات بالاحتفاظ بالبيانات الخام والبيانات المهيكلة والبيانات غير المهيكلة في تخزين رخيص مثل Amazon S3، Azure Data Lake Storage، Google Cloud Storage، وHadoop Distributed File System.

فوائد بحيرات البيانات تشمل العوامل التالية:

  1. تقليل تكاليف التخزين ضمن بيئات السحابة المعينة
  2. استخدام تنسيقات بيانات جديدة مثل البيانات غير المهيكلة، البيانات شبه المهيكلة، وحتى البيانات المهيكلة
  3. تعزيز استخدام تطبيقات AI والتعلم الآلي

حتى مع هذه المزايا، قدمت بحيرات البيانات مشاكل جديدة مثل:

  1. غياب الحوكمة والمخطط النمطي، الذي تسبب في تجمعات بيانات غير متناسقة.
  2. استخدام غير فعال للفهرسة وفحوصات الجدول الكاملة جعل أداء الاستعلام أبطأ.
  3. غياب معاملات ACID أدى إلى صعوبة ضمان سلامة البيانات في الإعدادات متعددة المستخدمين.

ظهور بيت البيانات

يدمج بيت البيانات جميع مزايا التوسعية والاقتصادية لبحيرة البيانات مع الإنتاجية والموثوقية، وميزات المعاملات لمستودع البيانات. هذا هو نمط التصميم الحديث.

تشمل المزايا الرئيسية لبيت البيانات:

  1. استيعاب وظائف التخزين والمعالجة بسعر أقل
  2. التحكم الفعال في البيانات من خلال معاملات ACID
  3. تعديل التخطيط النمطي دون التأثير على الاستعلامات الحالية – تطور النمط النمطي
  4. استرجاع الإصدارات السابقة للجدول من خلال قدرات السفر عبر الزمن

أدت إدخال هذه القدرات إلى تطوير تنسيقات الجداول الحديثة مثل Delta Lake وApache Hudi وApache Iceberg. جعلت هذه الهياكل من السهل على بحيرات البيانات العمل كمستودعات بيانات مع الحفاظ على حرية البقاء مرنة وغير منظمة بسبب إدخال طبقات البيانات الوصفية المنظمة. بين هذه التنسيقات الجدولية، ظهر Apache Iceberg كخيار رائد، ويقدم حلاً قويًا للمؤسسات التي تتطلع إلى الانتقال إلى هندسات بيت البيانات.

Apache Iceberg: لعبة تغيير لبيت البيانات

ما هو تنسيق الجدول؟

استخدام شكل الجدول يوفر وسيلة لإدارة مجموعات كبيرة من المعلومات المخزنة في بحيرة بيانات بشكل فعال. إنه يضمن بعض الوظائف، بما في ذلك:

  1. تنظيم البيانات في جداول لإدارة واستعلام فعالين.
  2. القضاء بكفاءة على البيانات وتحديثها، وتعديل النماذج.
  3. تحسين أداء أوقات الاستجابة للاستعلامات عن طريق تغيير البيانات الوصفية.

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

التطور من Hive إلى Iceberg

كان شكل الجدول Hive يهدف إلى حل مشكلة تنظيم بحيرات البيانات في السنوات الأولى. الهدف كان السماح للمستخدمين بتنظيم مجموعات البيانات في جداول باستخدام استعلامات مثل تلك المستخدمة في SQL بواسطة Apache Hive و Presto. ومع ذلك، هناك عيوب كبيرة في شكل Hive:

  1. عدم اتساق بسبب كتابات متزامنة من مصادر مختلفة بسبب عدم وجود عمليات ACID.
  2. عمليات قوائم ملفات قانونية مكلفة بسبب إدارة غير فعالة للبيانات الوصفية.
  3. استعلامات بطيئة بسبب تحديات تقسيم البيانات التي تتطلب تحسينًا يدويًا.

كيف يحل Apache Iceberg هذه التحديات

يعد Apache Iceberg تنسيق جدول حديث يزيل المشاكل المعروضة مع Hive مع توفير معاملات ACID، تطور المخطط، وأداء سريع في الاستعلامات على بيانات البحيرات.

من بين الفوائد الهامة لـ Apache Iceberg:

  1. معاملات ACID التي تضمن تحديثات البيانات الموثوقة والاتساق.
  2. القدرة على السفر عبر الزمن واستعلام لقطات البيانات التاريخية.
  3. تطور المخطط الذي يسمح بإضافة، تغيير، أو إسقاط الأعمدة دون تعطيل الاستعلابات الحالية.
  4. تطور التقسيم الذي يحسن تلقائيًا استراتيجيات التقسيم.
  5. تقليل الفحوصات غير الضرورية للملفات يمكن تنفيذ الاستعلامات بشكل أسرع بسبب الإدارة الفعالة للبيانات الوصفية.

ملاحظات نهائية

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

  • الجزء 2: تصميم Apache Iceberg، بما في ذلك البيانات والبيانات الوصفية، وطبقات الفهرس.
  • الجزء 3: آليات الاستعلامات في Iceberg، بما في ذلك القراءة والكتابة، والسفر عبر الزمن، وأساليب تحسين الاستعلامات.

Source:
https://dzone.com/articles/the-future-of-data-lakehouses-apache-iceberg