暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

OpenMetadata:设计原则、架构、应用程序等

大数据杂货铺 2024-02-09
151


 

1.什么是OpenMetadata?   

 OpenMetadata 是一个开源元数据存储,可以帮助您在整个数据生态系统中实现数据编目、发现和协作。OpenMetadata于2021年下半年推出。它已经有 12 个小版本,最新的版本是0.12.0;主要版本尚未发布。

OpenMetadata 的灵感来自于构建Uber 元数据基础设施时积累的经验,这可以被认为是 OpenMetadata 的第一次迭代。Uber 的元数据系统具有Databook等内部工具。

OpenMetadata 创始人 Suresh Srinivas在他们的公告博客中列举了 Uber 内部系统本身并未开源、而是从头开始构建 Open Metadata 的原因。其根本原因在于确保公司和开源社区的优先事项在此类工具的演变过程中不会发生冲突。

OpenMetadata 是开源数据编目领域的最新成员之一,其中包括AmundsenDataHubApache Atlas等其他工具。

在这里,我们将根据以下关键主题向您介绍 OpenMetadata 的基础知识:

·设计原则和架构选择

·特征

·支持集成

最后,我们还将为您提供进一步的阅读材料、链接和资源。让我们开始吧。    

 

2.定义 OpenMetadata 的设计原则和架构选择  

 

在本节中,我们将了解指导 OpenMetadata 设计和架构的以下原则:

·统一元数据模型

·用于集成的开放和标准化 API

·元数据可扩展性

·基于拉取的元数据摄取

·元数据的图形存储

 

2.1.统一元数据模型  


 

企业使用一系列数据源来服务于不同的目的。这些数据源的架构与特定用例保持一致;有些是面向文档的,有些存储地理位置数据,等等。由于这些数据源存储数据的方式不同,因此它们自然会以不同的方式存储底层元数据。

为了实现组织范围内的数据发现数据治理数据沿袭功能,您需要有一个统一的元数据模型。这将使您能够以集中方式配置和维护不同的集成。通过统一的元数据模型,还可以轻松公开元数据以供内部微服务和外部应用程序使用。这是来自OpenMetadata 博客的图表,描述了诸如设置之类的内容。    

从分散、重复、不一致的元数据到统一的元数据系统。

 

2.2.用于集成的开放和标准化 API

统一的元数据模型帮助OpenMetadata更好地与不同的数据源集成。添加基于有据可查且广泛接受的模式标准的开放 API ,有助于 OpenMetadata 为各种下游应用程序公开统一的数据模型,例如数据目录、数据质量引擎等。

您可以获得REST API 的开放 API 规范,该规范公开了从Swagger 规范文档中提取和丰富的 OpenMetadata 中的所有元数据。

开放 API 由遵循JSON 架构规范的相同强类型、结构良好且带注释的架构支持。OpenMetadata 还使用相同的规范来定义数据质量测试     

2.3.元数据可扩展性


    

如果在任何企业中你可以确定一件事,那就是组织、流程和优先级总是在变化。为了满足自定义需求,元数据模型需要足够灵活,以处理任何其他数据点、节点和其他字段。

这意味着统一元数据模型在概念上可以分为两部分——基础元数据模型和扩展元数据模型。

基本元数据模型由跨多个数据源通用的所有元数据组成,扩展元数据模型将处理任何特定于数据源的自定义。OpenMetadata 与DataHub 和许多其他数据中心非常相似,被设计为可扩展的。

 

2.4.基于拉取的元数据摄取


    

大多数元数据摄取系统都是基于拉式的,这意味着元数据提取是元数据引擎的责任,而不是数据源的责任。某些元数据目录(例如DataHub)支持基于推送和拉取的元数据摄取。

OpenMetadata 采用了基于拉动的方法,正如 OpenMetadata 的作者所认为的那样,“没有任何元数据系统可以是纯粹基于推式的”。

这种选择背后的想法是,不能合理地期望数据源将数据推送到元数据聚合系统中。提取元数据并将其转换为统一元数据模型的工作由数据编目工具承担,就像 ETL 工具创建数据湖和数据仓库的工作一样。    

 

2.5.元数据的图形存储

OpenMetadata 采用集中方式存储元数据的方法,其中元数据与所有团队、工具和流程“积极组织为连接数据的图形”。

这使组织能够构建、维护和利用可供下游应用程序使用的“元数据图”,以实现许多增值功能,例如数据编目、数据治理、数据沿袭、自动化数据质量以及测试、数据分析数据可观测性等等。

 

3.OpenMetadata的应用

    

OpenMetadata 旨在支持以下应用程序:

·数据发现

·数据治理

·数据沿袭

·数据质量

·集成

·元数据版本控制

 

3.1.数据发现


   

OpenMetadata 的数据发现功能由全文搜索引擎提供支持,该引擎不仅可以搜索实体定义,还可以搜索其描述、扩展元数据、对话线程任务公告。当您进入OpenMetadata控制台时,您可以使用快捷方式发起搜索CMD + K,如下图所示:    

OpenMetadata 中的搜索功能快照。

为了补充搜索引擎功能,OpenMetadata 提供了一种简单的方法来导航数据源的技术和业务元数据。技术元数据按原样从数据源捕获,并通过对话线程、任务和公告等功能进行丰富,如前所述。

 

3.2.数据治理


   

在统一元数据模型的支持下,OpenMetadata 实现了以下三个功能来实现整个组织的数据治理:

·基于角色的访问控制 (RBAC)

·所有权

·重要性

复杂的基于角色的访问控制系统具有组织范围的团队层次结构基于角色策略规则的访问控制,为 OpenMetadata 中的数据治理奠定了坚实的基础。    

在 RBAC 之上构建所有权和重要性层可以增强 OpenMetadata 为企业带来的价值。让我们看一下正在运行的 OpenMetadata 的 RBAC 引擎。

下图显示了 UI 上的页面,您可以在其中创建和管理角色:

OpenMetadata 支持基于角色的访问控制 (RBAC)。

此图显示了 UI 上的页面,您可以在其中创建和管理不同的策略。

附加到角色的策略有助于控制对元数据操作的访问。

 

3.3.数据沿袭


   

OpenMetadata 主要利用其查询解析器来收集沿袭数据,但是,它也使用dbt数据源查询日志来构建和丰富数据沿袭。

OpenMetadata 通过以下方式管理数据沿袭:

·自动收集数据沿袭    

·手动添加数据沿袭

·编辑现有数据沿袭

OpenMetadata 以自动化方式捕获谱系,由 Airflow、Prefect 等工具触发。

它还允许您手动添加沿袭,因为在某些情况下数据源可能无法提供有关沿袭的可靠信息。

最后,如果数据沿袭可视化未反映不同数据资产之间的实际沿袭, OpenMetadata 则向前迈出了一步,允许您编辑数据沿袭。

以下是 OpenMetadata 中数据沿袭的可视化方式的快速浏览:

查看具有沿袭的数据资产的上游和下游依赖关系。    

 

3.4.数据质量


   

解决跨数据源的数据质量问题是当今数据工程领域中最具挑战性的任务之一,但同样,由于 OpenMetadata 的统一数据模型,可以轻松定义测试并在不同数据源的数据资产上运行配置文件。

OpenMetadata 允许您将不同的测试分组在一起并创建一个测试套件,如下图所示:

运行测试以监控数据可靠性。

您可以对所需的数据资产运行测试套件。下图显示了示例数据资产之一的测试运行的输出:    

对特定数据资产运行质量测试。

OpenMetadata 在 UI 中紧密集成了数据质量,使数据团队能够将其成为日常工作流程的一部分。这样,使用数据的团队始终可以看到数据质量问题,从而更快、更轻松地解决这些问题。

 

3.5.元数据版本控制


    

与使用 CDC 工具捕获数据更改的方式类似,OpenMetadata 使您能够借助元数据版本控制捕获数据资产结构以及任何相关元数据的更改。OpenMetadata 的元数据版本控制遵循主要.次要版本控制模式,任何次要版本都向后兼容,而任何主要版本向后不兼容。

版本历史有助于跟踪数据资产的更改。    

当开发人员和数据用户在具有不同数据源的跨团队协作以及尝试调试数据问题时,元数据版本控制有助于为他们提供有价值的信息。这使得整个组织的数据处理变得透明,从而实现团队之间更好的整体协作,同时保持元数据的干净和最新。

 

4.OpenMetadata 支持的集成  

 

现在,大多数数据编目工具都可以使用类似 Singer 的基于连接器的模型来进行数据提取。

OpenMetadata 目前提供了 50 多个连接器,用于从数据库、数据湖、数据仓库商业智能工具消息队列数据管道甚至其他数据目录等数据源获取元数据

由于 OpenMetadata 是开源的,您可能会看到社区成员在需要时编写更多连接器。OpenMetadata 还与数据质量工作负载的Great Expectations和数据工作流程的Prefect集成。

 

5.OpenMetadata资源  

 

尽管 OpenMetadata 推出仅一年多时间,但已经取得了相当大的发展。以下是精选的资源列表,可以帮助您顺利完成 OpenMetadata 学习之旅并跟上进一步的发展。    

·GitHub 存储库

·松弛社区

·谷歌集团

·演示

·技术博客

·路线图

·社区讨论

·Swagger API 规范

 

6.结论  

 

在这里,我们向您介绍了 OpenMetadata 的基本设计、架构和突出功能。

如果您正在考虑将 OpenMetadata 评估为堆栈的元数据管理平台,我们上面分享的资源应该能够引导您走向正确的方向。

评估 OpenMetadata 时,请花些时间检查您的数据编目、治理和沿袭要求以及 OpenMetadata 在这些领域的功能,并查看是否有足够的一致性来完成 POC。

此外,与任何其他开源项目一样,根据特定的一般标准对其进行评估,例如受欢迎程度、成熟度、活动、发布周期和路线图。所有这些事情的综合视图将帮助您决定哪种数据编目和治理工具对您的业务最有意义。    

原文链接:https://atlan.com/openmetadata-explained/

          

              

文章转载自大数据杂货铺,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论