Metis:构建下一代数据管理平台,统一元数据、数据治理与数据血缘

Meta Description: 本文介绍某海外住宿平台如何将数据目录升级为下一代数据管理平台 Metis,通过统一元数据服务、数据门户和数据血缘服务,实现大规模数据资产管理、数据治理、数据质量提升和数据仓库可观测性建设。

某海外住宿平台如何将数据目录演进为一个面向大规模数据仓库管理与治理的平台。

Metis:构建下一代数据管理平台,统一元数据、数据治理与数据血缘

引言:为什么需要下一代数据管理平台

我们的目标,是帮助公司在大规模场景下管理复杂的数据生态系统。

要做到这一点,我们必须准确了解生态系统中的所有数据资产,以及这些资产之间的相互关系。换句话说,我们需要准确、可信的元数据。数据管理平台 Metis 正是为此而生。它以希腊神话中的智慧女神 Metis 命名,旨在确保公司能够在大规模场景下采集、管理并使用可信元数据。

对于大型数据仓库而言,元数据管理、数据治理和数据血缘并不是孤立能力。只有把数据资产、所有权、质量、合规、搜索发现和血缘关系统一起来,团队才能真正提升数据可信度和使用效率。

从数据目录到数据管理平台

Metis 是公司现有元数据产品和基础设施的一次系统性升级。

最早的数据门户,是我们推动数据民主化的第一次尝试。它成功帮助数据用户找到可信的数据资产,显著提升了生产力。从当时来看,这套系统也具有相当前瞻性的设计。

随着数据可靠性和合规监管变得越来越重要,我们需要更全面、更深入地理解数据的转换过程。于是,我们采用某开源血缘分析项目作为数据血缘解决方案。该方案为 SLA Tracker 等产品提供支持,例如数据及时性可视化产品。它将数据上线时间元数据与血缘信息结合起来,从而帮助我们调试上游数据延迟问题。

随着公司对元数据的需求持续增加,并逐渐扩展到成本管理、数据质量等更多领域,我们对数据目录的要求也进一步提升。我们需要它具备以下能力:

  • 管理数据资产及其描述性元数据;
  • 提供提升数据质量的保障措施和建议;
  • 保留数据集历史记录,既便于调试,也满足治理需求。

从实践角度看,数据管理平台建设不仅是技术架构升级,也是一项跨团队、跨流程的长期工程。企业在推进类似项目时,可以借助 PingCode 这类智能化研发管理工具,把目标、需求、评审、开发、测试、发布和 Wiki 知识沉淀串联起来,让数据治理相关工作更容易被跟踪和复盘;如果团队更关注任务协作、文档、日历、甘特图、工时和审批等通用协同场景,也可以结合 Worktile 这类项目协作系统提升项目推进效率。

我们很快意识到,数据管理必须作为一项独立能力持续发展。因此,我们将 Metis 打造成了访问所有数据元数据的一站式平台。

Metis 数据管理平台包含哪些能力

Metis 由三大核心产品组成:数据门户、统一元数据服务,也就是 UMS,以及数据血缘服务。这个平台使公司能够管理跨多个领域的数百万个数据资产。它支持的部分资产包括:

  • Hive 和 Trino 数据集;
  • 由公司指标平台 Minerva 支持的指标和维度;
  • 来自 Superset 和某商业 BI 工具的图表与仪表盘;
  • 数据模型,包括经过内部认证的数据模型;
  • 机器学习特征和模型;
  • 公司内部团队与员工信息。严格来说,它们不是数据资产,但对支持高质量的数据所有权,并确保上述数据资产的元数据保持最新至关重要。

Metis 架构:统一元数据、搜索与血缘服务

Metis:构建下一代数据管理平台,统一元数据、数据治理与数据血缘

从宏观层面看,Metis 由以下几个部分组成:

数据门户
面向用户提供数据目录和管理界面。

Viaduct
公司内部的 GraphQL API 层,用于对离线数据生态系统进行建模。

UMS Core 服务
后端核心服务,包含元数据管理所需的系统架构和业务逻辑。

元数据存储
主要包括以下几类:

  • MySQL:主要用于存储需要集中管理的关键元数据;
  • 血缘图:一种集中式服务,用于收集和提供数据血缘信息;
  • Elasticsearch:支持搜索与发现类场景。

离线组件
位于 UMS Core 服务之外,用于执行离线任务,例如离线元数据一致性检查和策略执行。

离线数据集
将离线元数据导出为数据集,用于分析场景。

数据门户:数据资产搜索与管理入口

数据门户是公司数据目录的用户界面。用户可以在这里查找和管理 Metis 支持的所有资产。

它是一个使用 React 和 TypeScript 构建的单页应用,因此具备足够的灵活性,可以支持数据管理和数据治理所需的各类工作流。前端通过 GraphQL API 与 UMS 以及其他服务通信。这样设计非常关键,因为我们希望避免按顺序获取血缘信息,也希望避免一次性过度获取大量元数据,从而确保流畅的用户体验。

搜索与发现:让可信数据资产更容易被找到

数据门户的使用体验始于搜索。无论是数据使用者还是数据所有者,都需要通过搜索找到所需资源。

在设计搜索与发现体验时,我们遵循了两个原则:

第一,在搜索结果中直接展示相关元数据,帮助用户找到真正需要的数据资产。

第二,如果用户并不清楚自己具体需要哪个数据资产,系统应优先展示高质量、常用且更可信的数据资产。

因此,搜索结果通常会优先返回高质量、经过认证的数据集,并展示描述、近期用户数量、最后修改时间等信息,帮助用户判断应该选择哪个资产。

Metis:构建下一代数据管理平台,统一元数据、数据治理与数据血缘

管理能力:从数据目录升级为治理平台

找到所需资产后,用户可以进入实体页面,执行各种使用、管理和治理操作。我们将实体页面上的内容按照数据类型或操作类别分组,并组织成不同标签页。

与使用和文档相关的标签页,可以帮助用户快速了解如何使用某张表。“配置”标签页包含列和表的说明,“联系点”标签页包含所有者和消费者信息,“文档”标签页则提供关于如何使用这张表的更多细节。

除此之外,这些页面还允许用户执行管理操作。例如,用户可以为包含个人数据的列添加标签。变更或删除这类标签时,需要经过审核,以确保数据仓库中的个人数据能够被正确识别。

Metis:构建下一代数据管理平台,统一元数据、数据治理与数据血缘

上面的例子只展示了我们如何将数据门户从一个可搜索的数据目录,升级为一个集中管理和治理所有数据资产的平台。

统一元数据服务:Metis 的后端核心

统一元数据服务,简称 UMS,是集中式数据管理平台的后端核心。它提供以下能力:

  • 一个集中式 Schema,并在其上构建 GraphQL API 层,用于访问元数据;
  • 一个集中式关系图,用于连接原本分散孤立的元数据;
  • 集中式元数据管理能力,使系统能够在不重复造轮子的情况下满足合规和治理需求。

将元数据集中到 UMS 中,可以避免所有元数据提供方与使用方彼此单独集成。相反,所有提供方和使用方只需与 UMS 集成即可。

元数据集成模式

UMS 在元数据集成和各种使用场景中扮演着不同角色。在去中心化的数据生态系统中,我们对哪些元数据应该存储在 UMS、复制到 UMS,或通过 UMS 提供服务,有着非常明确的要求。

统一表示层代理请求

UMS 支持将读取请求代理到多个数据系统,包括:

  • 存储表结构和表属性的 Hive Metastore;
  • 提供原始 Hive 表数据血缘关系的血缘服务;
  • 用于评估数据集治理状态的数据治理服务。

元数据管理服务

UMS 会集中管理一些关键业务元数据,并将其存储在自己的元数据数据库中,同时提供管理能力,包括:

  • 更新校验和授权;
  • 审计历史记录;
  • 针对关键元数据敏感操作的审批工作流。

支持离线生成元数据的在线使用场景

作为公司数据质量计划的一部分,我们为数据仓库中的每个数据资产生成了直接关联的数据质量评分。数据集的数据质量评分以离线方式生成,并导入 UMS 元数据数据库,用于在线场景。

集中管理的搜索索引支持数据发现

与传统数据目录类似,UMS 会在 Elasticsearch 集群中集中管理不同实体的索引,从而支持数据发现。

元数据摄取:连接数据源与管理平台

在某些情况下,元数据需要被存储或复制到 Metis 的存储层。UMS 通过多种预置机制与元数据提供方集成,并结合公司的技术栈摄取元数据。这些机制包括:

  • 使用流处理作业摄取元数据变更事件;
  • 每天运行 ETL 作业,从元数据提供方拉取数据并推送到 UMS;
  • 直接调用 UMS API。

当我们引入新的元数据提供方时,关键工作是明确产品需求,与相关方就元数据集成范围达成一致,并最终确定实际采用的集成机制。

数据血缘服务:理解数据资产与数据管道关系

Metis 的最后一个主要组成部分,是数据血缘服务。早在 2020 年,我们就采用某开源血缘分析项目作为公司数据仓库的数据血缘解决方案。

在公司内部,这套血缘系统维护着一个庞大的血缘图,其中包含超过 1 亿个节点和 3 亿条边。血缘数据的主要来源,是生产环境中的 Hive 表,以及数据仓库中的大量中间 Hive 表。

为了处理数据仓库中的大规模血缘事件,我们对这套开源血缘系统进行了大量定制和调优:

  • 对血缘事件应用分片策略,提高并行处理能力;
  • 基于图数据库优化服务器代码效率;
  • 微调支撑图数据库的底层存储系统,提高可扩展性并降低延迟;
  • 支持读取路径优化和过滤,更高效地访问血缘数据。

这套血缘系统的相关组件,包括图引擎、类型系统、数据摄取机制和血缘 API,使我们能够高效收集并提供血缘数据,从而深入理解各种数据资产和数据管道之间的关系。

它也为许多关键的数据合规、数据可靠性和数据质量产品提供了支持。

结语:数据管理平台是数据治理的基础设施

如上所述,过去六年间,公司数据管理方法发生了显著变化。我们最初构建数据门户,是为了在公司内部实现数据民主化;而现在,我们推出了 Metis:一个让公司员工能够搜索、发现、使用和管理离线数据仓库中所有数据与元数据的平台。

Metis 在数据合规、数据可靠性和数据质量等方面发挥着关键作用,每周为超过 1,000 位数据用户提供服务。

未来,我们的工作将围绕两个重点展开。

第一,我们将继续改进系统架构和底层技术,以适应数据生态系统的快速发展。

第二,我们计划将覆盖范围扩展到更多系统,并实现更高级的数据管理能力。这也体现了公司对数据领域长期投入的承诺。

如果没有数据管理团队成员,以及跨职能、跨团队合作伙伴的共同努力,Metis 项目不可能实现。在此,我们向所有参与和支持这一项目的人表示感谢。

说明:文中出现的技术项目、产品名称和品牌,均归其各自所有者所有。本文中使用这些名称仅用于识别和说明目的,并不代表任何认可或背书。

文章包含AI辅助创作,作者:guo,如若转载,请注明出处:https://docs.pingcode.com/baike/5245249

(0)
guoguo
免费注册
电话联系

4008001024

微信咨询
微信咨询
返回顶部