डेटा कैटलॉग
Catalogs provide persistent metadata layers that let Ilum's execution engines (Spark, Trino, DuckDB, and Flink) share table definitions across sessions, jobs, and engines. Ilum supports four catalogs: हाइव मेटास्टोर, प्रोजेक्ट नेस्सी, एकता कैटलॉगऔर DuckLake. Each is integrated with workloads, data storage, and session management, enabling reliable and collaborative data workflows. Tables defined once are queryable from every engine that can connect to the same catalog.
समर्थित कैटलॉग
हाइव कैटलॉग (डिफ़ॉल्ट)
- हाइव कैटलॉग तालिका मेटाडेटा को लगातार संग्रहीत करने के लिए Apache Hive मेटास्टोर का लाभ उठाता है।
- यह है डिफ़ॉल्ट रूप से सक्षम इलम में और सभी स्पार्क एसक्यूएल संचालन के लिए स्वचालित रूप से उपयोग किया जाता है।
- No additional setup is required. Ilum configures Hive Metastore and integrates it with Spark, Trino, storage, and the Table Explorer UI.
- क्लासिक डेटा लेकहाउस परिदृश्यों के लिए आदर्श जहां मेटाडेटा स्थायित्व, स्कीमा खोज और ट्रिनो, हाइव या सुपरसेट जैसे उपकरणों के साथ संगतता महत्वपूर्ण है।
नेस्सी कैटलॉग (वैकल्पिक)
- नेस्सी कैटलॉग एकीकृत प्रोजेक्ट नेस्सीसक्षम गिट जैसा संस्करण नियंत्रण आपके डेटा लेक के लिए।
- यह आपको अनुमति देता है शाखा, टैगऔर डुबो आपके डेटा कैटलॉग में परिवर्तन, सहयोगी और लेखा परीक्षक कार्यप्रवाहों को आपकी तालिकाओं में लाना.
- नेस्सी है वैकल्पिक इलम में और अतिरिक्त सेटअप की आवश्यकता है। एक बार कॉन्फ़िगर होने के बाद, यह अपाचे आइसबर्ग के माध्यम से स्पार्क के साथ एकीकृत होता है।
- संस्करण विश्लेषण, डेटा प्रयोग, सीआई/सीडी पाइपलाइनों, और पूर्ण कैटलॉग-स्तरीय रोलबैक या पृथक वातावरण की आवश्यकता वाले परिदृश्यों के लिए सबसे उपयुक्त।
Unity Catalog (Optional)
- Unity Catalog OSS is an open-source data catalog for lakehouse architectures, providing a unified metadata layer with built-in governance features.
- It uses a three-level namespace (catalog → schema → table) for better data organization and provides comprehensive audit logging and data lineage.
- Unity Catalog is वैकल्पिक in Ilum and requires configuration. It offers fine-grained access control and centralized governance across workspaces.
- ⚠️ Known Limitation: Unity Catalog OSS currently has compatibility issues with MinIO. For production use, AWS S3, GCS, or ADLS are recommended.
- Best suited for organizations needing centralized governance, detailed audit trails, and fine-grained access control for their data lakehouse.
DuckLake (Default for DuckDB)
- DuckLake is a catalog built to bring concurrent capabilities to DuckDB.
- It is based on the parquet format and supports multiple backends.
- It supports time travel queries, schema evolution, and partitioning.
- यह है डिफ़ॉल्ट रूप से सक्षम in Ilum and used automatically for all DuckDB operations, but can’t be integrated with anything else than DuckDB.
फ़ीचर तुलना
| फ़ीचर/पहलू | हाइव कैटलॉग (डिफ़ॉल्ट) | नेस्सी कैटलॉग (वैकल्पिक) | Unity Catalog (Optional) | DuckLake (Default for DuckDB) |
|---|---|---|---|---|
| हठ | Yes – table metadata stored in Hive Metastore | Yes – versioned metadata via Nessie service | Yes – metadata stored in Unity Catalog metastore | Yes - metadata stored in attached metadata DB |
| संस्करण नियंत्रण | नहीं | Yes – supports branches, tags, merges | No – rely on table format features | Yes - supports time-travel and schema evolution |
| मल्टी-टेबल लेनदेन | नहीं | Yes – atomic changes across multiple tables | नहीं | Yes - has concurrent access over multi-table operations |
| डिफ़ॉल्ट रूप से सक्षम | हाँ | नहीं (वैकल्पिक, मैन्युअल रूप से कॉन्फ़िगर किया जाना चाहिए) | नहीं (वैकल्पिक, मैन्युअल रूप से कॉन्फ़िगर किया जाना चाहिए) | Yes (for DuckDB) |
| प्रारूप समर्थन | लकड़ी की छत, ओआरसी, डेल्टा, हिमशैल (बाहरी कैटलॉग के माध्यम से) | हिमशैल | Iceberg, Delta Lake, Parquet | Parquet |
| MinIO Support | ✅ Yes | ✅ Yes | ⚠️ Limited (known compatibility issues) | ✅ Yes |
| के लिए सबसे अच्छा | स्थिर स्कीमा, SQL एनालिटिक्स, पारंपरिक डेटा लेकहाउस | प्रायोगिक शाखाएं, शासन, डेटा संवर्धन कार्यप्रवाह | Centralized governance, audit trails, multi-workspace control | Multi-user workloads on DuckDB |
| अनुकूलता | स्पार्क, हाइव, ट्रिनो, सुपरसेट, आदि द्वारा व्यापक रूप से समर्थित। | स्पार्क, फ्लिंक, ट्रिनो में समर्थित | Supported in Spark, Delta Lake, various cloud platforms | DuckDB only |
| इलम में एकीकरण | पूरी तरह से स्वचालित, कॉन्फ़िगर किया गया आउट-ऑफ-द-बॉक्स | बाहरी Nessie सेवा और स्पार्क कॉन्फ़िगरेशन की आवश्यकता है | Requires Unity Catalog service and Spark config | Configured automatically |
कैटलॉग चयन गाइड
| उपयोग का मामला | हाइव कैटलॉग | नेस्सी कैटलॉग | एकता कैटलॉग | DuckLake |
|---|---|---|---|---|
| लंबी अवधि के टेबल भंडारण | ✅ | ✅ | ✅ | (if using DuckDB) |
| गिट-जैसे ब्रांचिंग/डेटा की टैगिंग | ✅ | |||
| मल्टी-टेबल ट्रांसेक्शनल पाइपलाइन | ✅ | ✅ | ||
| पारंपरिक SQL विश्लेषिकी + BI | ✅ | ✅ | ✅ | |
| Development → Staging → Prod workflows | ✅ | ✅ | ✅ | |
| ऑडिटेबिलिटी और रोलबैक | ✅ | ✅ | ✅ | |
| ट्रिनो/सुपरसेट के साथ आसान संगतता | ✅ | (अप्रत्यक्ष) | (अप्रत्यक्ष) |
इलम में कैटलॉग कैसे काम करते हैं
- हाइव कैटलॉग सीधे इलम कोर में एकीकृत है। यह पूर्व-परिनियोजित हाइव मेटास्टोर के साथ आता है और डिफ़ॉल्ट इलम स्टोरेज (जैसे, MinIO या S3) से जुड़ा है।
- नेस्सी कैटलॉग उपयोगकर्ता कॉन्फ़िगर किया गया है। आपको Nessie सेवा परिनियोजित करनी होगी और Iceberg कैटलॉग गुणों का उपयोग करके इसे कनेक्ट करने के लिए अपने Spark सत्रों को कॉन्फ़िगर करना होगा।
- एकता कैटलॉग is user-configured. You must enable the Unity Catalog service via Helm and configure your metastore type. Note the MinIO compatibility limitation for production deployments.
- DuckLake is automatically set up in DuckDB workloads.
- Table Explorer in Ilum automatically lists Hive tables. Nessie and Unity Catalog tables can also be made visible with proper catalog configuration in Spark jobs.
नेस्सी जैसे वैकल्पिक घटकों को तैनात करने और सक्षम करने के विवरण के लिए, यहां जाएं:
👉 इलम परिनियोजन गाइड