opensource project
name | desc | link |
---|---|---|
unitycatalog | Unity Catalog: Open, Multimodal Catalog for Data & AI | https://github.com/unitycatalog/unitycatalog |
Apache Atlas | Apache Atlas – Data Governance and Metadata framework for Hadoop | https://atlas.apache.org/ |
datahub | The #1 open source metadata platform. | https://datahubproject.io/ |
Metacat | Metacat is a unified metadata exploration API service. | https://github.com/Netflix/metacat |
openmetadata | Open and unified metadata platform for data discovery, observability, and governance | https://open-metadata.org/ |
apache polaris | Apache Polaris is an open-source, fully-featured catalog for Apache Iceberg™. | https://polaris.apache.org/ |
projectnessie | Project Nessie: Transactional Catalog for Data Lakes with Git-like semantics | https://projectnessie.org/ |
GRAVITINO | Apache Gravitino 是一个高性能、地理分布和联邦元数据湖。通过使用技术数据目录和元数据湖,您可以管理所有数据源(包括文件存储、关系型数据库和事件流)的访问,并在不同的云服务提供商上安全地使用多个引擎(如 Spark、Trino 或 Flink)处理不同格式的数据,同时执行数据治理。 | https://gravitino.apache.org/ |
lakekeeper | A secure, fast, and user-friendly Apache Iceberg REST Catalog built with Rust and available under the Apache License. | https://docs.lakekeeper.io/ |
tabulario/iceberg-rest | Sample REST image for experimentation and testing with Iceberg RESTCatalog implementations (注意:这是一个参考实现,仅可用于实验) | Apache Iceberg背后公司 Tabular |
datahub依赖解析
DataHub Docker Images:
请勿对任何映像使用 latest 或 debug 标记,因为这些标记不受支持,并且仅由于遗留原因而存在。请使用 head 或特定于 v0.8.40 等版本的标签。对于生产环境,我们建议使用特定于版本的标签,而不是 head。
spark.sql.catalogImplementation
spark.sql.catalogImplementation
是 Spark SQL
中的一个配置项,用于指定 catalog 的实现方式。目前,Spark SQL
支持两种 catalog 实现方式:
- hive: 这是 Spark SQL 默认的 catalog 实现方式,使用 Hive 的 metastore 来存储和管理表的元数据。
- in-memory: 这种实现方式将表的元数据存储在内存中,适合于小规模的数据集和开发环境。
以下是一些第三方 catalog 的实现方式:
- org.apache.iceberg.spark.SparkCatalog
- org.apache.spark.sql.hudi.catalog.HoodieCatalog
- org.apache.spark.sql.delta.catalog.DeltaCatalog
- org.apache.spark.sql.hive.HiveExternalCatalog
- org.apache.iceberg.hive.HiveCatalog
- org.apache.spark.sql.hive.HiveSessionCatalog
- org.apache.spark.sql.catalyst.catalog.SessionCatalog
- org.apache.spark.sql.catalyst.catalog.InMemoryCatalog
spark.sql.catalog.spark_catalog 还有什么其他子属性,这些子属性分别是什么
spark.sql.catalog.{catalog_name}.type
是和 spark.sql.catalogImplementation
对标的?
https://iceberg.apache.org/javadoc/1.4.1/org/apache/iceberg/spark/SparkCatalog.html
事实上spark.sql.catalog.{catalog_name}.type
属性已经不大够用了,被扩展出来了很多其他字段.
2025/04/14 初步探索datahub,感觉这个部署还是十分困难的,依赖比较多。