منصوبے کے بارے میں
Apache Iceberg ایک اعلیٰ کارکردگی والا ٹیبل فارمیٹ ہے جسے بڑے پیمانے کے تجزیاتی ٹیبلز کے لیے ڈیزائن کیا گیا ہے۔ یہ متعدد پروسیسنگ انجنوں—بشمول Apache Spark، Trino، Apache Flink، Presto، Apache Hive، اور Impala—کو ایک ہی ٹیبلز کے ساتھ محفوظ طریقے سے اور بیک وقت کام کرنے کے قابل بناتا ہے۔
یہ پروجیکٹ ایک مستحکم فارمیٹ کی تفصیلات (specification) اور Java میں ایک ریفرنس امپلیمینٹیشن فراہم کرتا ہے۔ Java لائبریری کو کئی ماڈیولز میں تقسیم کیا گیا ہے:
- Core API اور Implementation: `iceberg-api` اور `iceberg-core` پبلک API اور بنیادی منطق فراہم کرتے ہیں، جس میں Avro ڈیٹا فائلوں کی سپورٹ شامل ہے۔
- File Format Support: Parquet (`iceberg-parquet`)، ORC (`iceberg-orc`)، اور Arrow (`iceberg-arrow`) کے لیے اختیاری ماڈیولز۔
- Integration Modules: Spark (`iceberg-spark`)، Flink (`iceberg-flink`)، اور Hive (`iceberg-mr`) کے لیے مخصوص امپلیمینٹیشنز، cũng جیسے کہ ایک Hive metastore امپلیمینٹیشن (`iceberg-hive-metastore`)۔
- Application Support: `iceberg-data` JVM ایپلی کیشنز کو براہ راست ٹیبلز کے ساتھ کام کرنے کی اجازت دیتا ہے۔
Java امپلیمینٹیشن کے علاوہ، Iceberg ایکو سسٹم میں Go، Python (PyIceberg)، Rust، اور C++ میں بھی امپلیمینٹیشنز شامل ہیں۔