元数据管理:DataHub和OpenMetadata对比分析

Dazdata MDS

OpenMetadata和DataHub是目前最流行的两种开源数据编目工具。这两种工具在功能方面都有明显的重叠,但是,它们也有一些区别。在这里,我们将根据它们的体系结构、引入方法、功能、可用集成等来比较这两种工具。

OpenMetadata

OpenMetadata是创建Databook以解决Uber数据编目问题的团队学习的结果。OpenMetadata查看了现有的数据编目系统,发现拼图中缺少的部分是统一的元数据模型。

最重要的是,他们增加了元数据的灵活性和可扩展性。虽然,因为它在市场上的新鲜感;其可靠的数据治理引擎,以及强大的搜索引擎的支持,OpenMetadata引起了极大的关注。

DataHub

DataHub是LinkedIn解决数据发现和编目问题的第二次尝试;他们早些时候开源了另一个名为WhereHows的工具。

在第二次迭代中,LinkedIn通过创建充当 DataHub 主干的通用元数据服务,解决了拥有非常广泛的数据系统、查询语言和访问机制的问题。

OpenMetadata和DataHub有什么区别?

让我们根据以下标准比较OpenMetadata与DataHub:

  • 架构和技术堆栈
  • 元数据建模和引入
  • 数据治理功能
  • 数据沿袭
  • 数据质量和数据分析
  • 上游和下游集成

我们精心策划了上述标准,以便在了解关键知识的情况下对这些工具进行比较 - 特别是如果您要选择其中一个作为元数据管理平台,为您的组织推动特定用例。

让我们详细考虑这些因素中的每一个,并澄清我们对它们表现的理解。

OpenMetadata vs. DataHub:架构和技术堆栈

DataHub使用Kafka介导的摄取引擎将数据存储在三个独立的层中 - MySQLElasticsearch和使用Kafka流neo4j

这些层中的数据通过 API 服务层提供。除了标准的 REST API 之外,DataHub 还支持 Kafka 和 GraphQL 用于下游消费。DataHub使用Pegasus定义语言(PDL)和自定义注释来存储模型元数据。

元数据管理:DataHub和OpenMetadata对比分析_第1张图片

OpenMetadata使用MySQL作为数据库,将所有元数据存储在统一元数据模型中。元数据是完全可搜索的,因为它由Elasticsearch提供支持,与DataHub相同。OpenMetadata 不使用专用的图形数据库,但它确实使用 JSON 模式来存储实体关系

使用 OpenMetadata 的系统和个人与 REST API 交互,可以直接调用它,也可以通过 UI 调用它。要了解有关数据模型的更多信息,请参阅解释 OpenMetadata 高级设计的文档页面。

元数据管理:DataHub和OpenMetadata对比分析_第2张图片

OpenMetadata vs. DataHub:元数据建模和摄取

这两种工具之间的主要区别之一是,DataHub专注于基于拉取和推送的数据提取,而OpenMetadata显然是为基于拉取的数据提取机制而设计的。

默认情况下,DataHub和OpenMetadata都主要使用基于推送的提取,尽管不同之处在于DataHub使用Kafka,而OpenMetadata使用Airflow来提取数据。

DataHub中的不同服务可以过滤来自Kafka的数据并提取它们需要的内容,而OpenMetadata的Airflow将数据推送到API服务器DropWizard,用于下游应用程序。

这两种工具在存储元数据的方式上也有所不同。如上一节所述,DataHub使用带注释的PDL,而OpenMetadata使用基于注释的JSON模式的文档。

OpenMetadata vs. DataHub:数据治理功能

在今年早些时候的发布中,DataHub集成了他们所谓的行动框架,以增强数据治理引擎。操作框架是一个基于事件的系统,允许您触发外部工作流以实现可观测性。数据治理引擎会自动批注新的和更改的实体。

OpenMetadata和DataHub都有内置的基于角色的访问控制,用于管理访问和所有权。

OpenMetadata 引入了其他几个概念,例如重要性,以通过其他上下文提供更好的搜索和发现体验。DataHub 使用称为“域”的构造作为常规标记和词汇表术语之上的高级标记,以便为您提供更好的搜索体验。

OpenMetadata vs. DataHub:数据沿袭

借助最新版本的 DataHub,它现在能够支持列级数据沿袭。OpenMetadata预计将于2022年<>月中旬发布,也有望增强列级谱系。

OpenMetadata的Python SDK for Lineage允许您使用用于存储世系数据的entityLineage架构规范从数据源实体获取自定义世系数据。

除了自动世系捕获之外,DataHub 还提供从名为“基于文件的世系”的数据源将世系数据作为文件引入的功能。数据中心使用此处指定的基于 YAML 的世系文件格式。

OpenMetadata vs. DataHub:数据质量和数据分析

尽管DataHub不久前已经为某些数据质量相关功能制定了路线图项目,但它们尚未实现。但是,DataHub确实提供了与Great Expectationsdbt等工具的集成。您可以使用这些工具来获取元数据及其测试和验证结果。

在 DataHub 上查看这个“Great Exceptions”的演示

OpenMetadata对质量有不同的看法。他们将数据质量和剖析集成到工具中。因为有许多用于检查数据质量的开源工具,所以有很多方法可以定义测试,但 OpenMetadata 选择在定义测试的元数据标准方面支持远大期望。

如果远大期望已经与您的其他工作流程集成,并且您更愿意将其作为您的中央数据质量工具,那么您可以通过 OpenMetadata 的Great Exceptions成来实现它。

OpenMetadata vs. DataHub:上游和下游集成

DataHub和OpenMetadata都有一个基于插件的元数据摄取架构。这使它们都能够与数据堆栈中的一系列工具顺利集成。

DataHub提供了一个GraphQL API,一个开放API和几个SDK,用于开发DataHub和与DataHub交互的应用程序或工具。此外,您可以使用 CLI 安装所需的插件。这些与数据中心交互的各种方法允许您将数据摄取到数据中心,并将数据从数据中心取出以供进一步使用。

OpenMetadata 支持五十多个用于摄取元数据的连接器,从数据库到 BI 工具,从消息队列到数据管道,包括其他元数据编目工具,如 Apache Atlas 和 Amundsen。OpenMetadata目前提供两种集成 - Great ExpectationsPrefect

OpenMetadata vs. DataHub:比较摘要

DataHub和OpenMetadata都试图解决数据编目,搜索,发现,治理和质量方面的相同问题。这两种工具都是出于为需要支持大量数据源、团队和用例的大型组织解决这些问题而诞生的。

尽管这些工具在发布历史和成熟度方面略有不同,但它们的功能存在显着重叠。

你可能感兴趣的:(大数据,MDS现代数据栈,元数据管理,大数据治理)