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

大数据

技术与产品概览

架构设计

picture.image

元数据的接入

  • 元数据接入支持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:以数仓表的形式呈现的全量元数据

产品功能升级

picture.image

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

  • 基础能力建设(2017-2019):数据源主要是离线数仓Hive,支持了Hive相关库表创建、元数据搜索与详情展示、表之间血缘,以及将相关表组织成业务视角的数据专题等
  • 中阶能力建设(2019-2020年中):数据源扩展了Clickhouse与Kafka,支持了Hive列血缘,Q&A问答系统等
  • 架构升级(2020年中-2021年初):产品能力迭代放缓,基于新设计升级架构
  • 能力提升与快速迭代(2021年至今):数据源扩展为包含离线、近实时、业务等端到端系统,搜索和血缘能力有明显增强,探索机器学习能力,产品形态更成熟稳定。另外我们还具备了ToB售卖的能力。

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

0
0
0
0
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论