写点什么

火山引擎 DataLeap 构建 Data Catalog 系统的实践(二):技术与产品概览

  • 2023-07-11
    北京
  • 本文字数:1101 字

    阅读完需:约 4 分钟

火山引擎 DataLeap 构建Data Catalog系统的实践(二):技术与产品概览

技术与产品概览

架构设计

暂时无法在{app_display_name}文档外展示此内容

元数据的接入

  • 元数据接入支持 T+1 和近实时两种方式

  • 上游系统:包括各类存储系统(比如 Hive、 Clickhouse 等)和业务系统(比如数据开发平台、数据质量平台等)

  • 中间层:

    ETL Bridge:T+1 方式运行,通常是从外部系统拉取最新元数据,与当前 Catalog 系统的元数据做对比,并更新差异的部分

    MQ:用于暂存各类元数据增量消息,供 Catalog 系统近实时消费

    与上游系统打交道的各类 Clients,封装了操作底层资源的能力

核心服务层

系统的核心服务,根据职责的不同,细拆为以下子服务:

  • Catalog Service:支持元数据的搜索、详情、修改等核心服务

  • Ingestion Service:接受外部系统调用,写入元数据,或主动从 MQ 中消费增量元数据

  • Resource Control Plane:通过各类 Clients,与底层的存储或业务系统交互,操作底层资源,比如建库建表,能力可插拔

  • Q&A Service:问答系统相关能力,支持对元数据的字段含义、使用场景等提问和回答,能力可插拔

  • ML Service:负责封装与机器学习相关的能力,能力可插拔

  • API Layer:以 RESTful API 的形式整合系统中的各类能力

存储层

针对不同场景,选用的不同的存储:

  • Meta Store:存放全量元数据和血缘关系,当前使用的是 HBase

  • Index Store:存放用于加速查询,支持全文索引等场景的索引,当前使用的是 ElasticSearch

  • Model Store:存放推荐、打标等的算法模型信息,使用 HDFS,当 ML Service 启用时使用

元数据的消费

  • 数据的生产者和消费者,通过 Data Catalog 的前端与系统交互

  • 下游在线服务可通过 OpenAPI 访问元数据,与系统交互

  • Metadata Outputs Layer:提供除了 API 之外的另外一种下游消费方式

    MQ:用于暂存各类元数据变更消息,格式由 Catalog 系统官方定义

    Data warehouse:以数仓表的形式呈现的全量元数据

产品功能升级

暂时无法在{app_display_name}文档外展示此内容

产品能力上的升级迭代,大致分为以下几个阶段:

  • 基础能力建设(2017-2019):数据源主要是离线数仓 Hive,支持了 Hive 相关库表创建、元数据搜索与详情展示、表之间血缘,以及将相关表组织成业务视角的数据专题等

  • 中阶能力建设(2019-2020 年中):数据源扩展了 Clickhouse 与 Kafka,支持了 Hive 列血缘,Q&A 问答系统等

  • 架构升级(2020 年中-2021 年初):产品能力迭代放缓,基于新设计升级架构

  • 能力提升与快速迭代(2021 年至今):数据源扩展为包含离线、近实时、业务等端到端系统,搜索和血缘能力有明显增强,探索机器学习能力,产品形态更成熟稳定。另外我们还具备了 ToB 售卖的能力。

点击跳转https://www.volcengine.com/product/dataleap/?utm_source=infoq_dp&utm_medium=article&utm_term=infoq_readmore&utm_campaign=20220525&utm_content=dataleap了解更多


用户头像

小助手微信号:Bytedance-data 2021-12-29 加入

字节跳动数据平台团队,赋能字节跳动各业务线,对内支持字节绝大多数业务线,对外发布了火山引擎品牌下的数据智能产品,服务行业企业客户。关注微信公众号:字节跳动数据平台(ID:byte-dataplatform)了解更多

评论

发布
暂无评论
火山引擎 DataLeap 构建Data Catalog系统的实践(二):技术与产品概览_字节跳动数据平台_InfoQ写作社区