Iceberg هو تنسيق عالي الأداء للجداول التحليلية الضخمة. يجلب Iceberg موثوقية وبساطة جداول SQL إلى البيانات الضخمة ، مع جعلها ممكنة للمحركات مثل Spark و Trino و Flink و Presto و Hive و Impala للعمل بأمان مع الطاولات نفسها ، في نفس الوقت.
الخلفية والوثائق متوفرة في https://iceberg.apache.org
Iceberg تحت التطوير النشط في مؤسسة برمجيات Apache.
مواصفات تنسيق Iceberg مستقرة ويتم إضافة ميزات جديدة مع كل إصدار.
توجد مكتبة Java الأساسية في هذا المستودع وهو التنفيذ المرجعي للمكتبات الأخرى.
الوثائق متاحة لجميع المكتبات والتكامل.
يتتبع Iceberg مشكلات في GitHub ويفضل تلقي المساهمات كطلبات سحب.
تحدث مناقشات المجتمع في المقام الأول على القائمة البريدية DEV أو حول قضايا محددة.
تم بناء Iceberg باستخدام Gradle مع Java 11 أو 17 أو 21.
./gradlew build./gradlew build -x test -x integrationTest./gradlew spotlessApply./gradlew spotlessApply -DallModulesيتم تنظيم دعم طاولة الجليد في وحدات المكتبة:
iceberg-common على فصول فائدة مستخدمة في الوحدات الأخرىiceberg-api يحتوي على واجهة برمجة تطبيقات Iceberg العامةiceberg-core على تطبيقات واجهة برمجة تطبيقات Iceberg ودعم ملفات بيانات AVRO ، وهذا ما يجب أن تعتمد عليه محركات المعالجةiceberg-parquet هي وحدة اختيارية للعمل مع الجداول المدعومة من ملفات Parqueticeberg-arrow هي وحدة اختيارية لقراءة الباركيه في ذاكرة السهمiceberg-orc هي وحدة اختيارية للعمل مع الجداول المدعومة من ملفات ORCiceberg-hive-metastore هو تطبيق طاولات الجبال الجليدية المدعومة من عميل Hive Metastore Thrifticeberg-data هي وحدة اختيارية للعمل مع الجداول مباشرة من تطبيقات JVMيحتوي Iceberg أيضًا على وحدات لإضافة دعم Iceberg لمحركات المعالجة:
iceberg-spark هو تطبيق لبرارة API DataSource V2 لـ Iceberg مع عروض فرعية لكل إصدارات Spark (استخدم الجرار وقت التشغيل لإصدار مظللة)iceberg-flink على فصول للتكامل مع Apache Flink (استخدم Iceberg-Flink-Runtime لإصدار مظللة)iceberg-mr على مدخلات وفئات أخرى للاندماج مع Apache Hiveملحوظة
تتطلب الاختبارات Docker تنفيذها. على MacOS (مع سطح المكتب Docker) ، قد تحتاج إلى إنشاء اسم رمزي لمقبس Docker من أجل اكتشاف الاختبارات:
sudo ln -s $HOME/.docker/run/docker.sock /var/run/docker.sock
راجع صفحة الدعم متعددة المحركات لمعرفة توافق جبل الجليد مع إصدارات مختلفة للشرارة والفلنك والخلية. بالنسبة للمحركات الأخرى مثل Presto أو Trino ، يرجى زيارة مواقع الويب الخاصة بهم للحصول على تفاصيل تكامل Iceberg.
يحتوي هذا المستودع على تنفيذ Java لـ Iceberg. يمكن العثور على تطبيقات أخرى على: