当前位置: 首页 > news >正文

DataHub 架构设计与核心工作原理

1. 整体架构设计

DataHub 是一个第三代数据目录系统,专为现代数据栈设计,支持数据发现、协作、治理和端到端可观测性。其架构采用模型优先的设计理念,注重不同工具和系统之间的互操作性。

1.1 架构总览

DataHub 的整体架构可以分为以下几个主要层次:

  1. 前端层:React 实现的 Web UI 和 Play Framework 实现的前端服务
  2. API 层:GraphQL API 和 REST API
  3. 服务层:元数据服务 (Metadata Service)
  4. 存储层:文档存储 (MySQL/PostgreSQL)、搜索索引 (Elasticsearch) 和图索引 (Neo4j/MySQL)
  5. 事件层:基于 Kafka 的元数据事件流
  6. 摄取层:Python 实现的元数据摄取框架

架构总览

1.2 架构亮点

DataHub 架构的三个主要亮点:

  1. Schema-first 元数据建模:使用序列化无关的语言 (PDL) 描述元数据模型,支持 REST 和 GraphQL API,以及基于 AVRO 的 Kafka 事件通信。

  2. 基于流的实时元数据管理平台:元数据基础设施采用流式设计,使元数据变更能在几秒内反映到平台中,并允许订阅元数据变更事件。

  3. 联邦式元数据服务:支持由不同团队拥有和运营的联邦元数据服务,通过 Kafka 与中央搜索索引和图进行通信,支持全局搜索和发现。

架构

2. 核心组件工作原理

2.1 元数据存储 (Metadata Store)

元数据存储负责存储构成元数据图的实体 (Entities) 和方面 (Aspects),提供 API 用于摄取元数据、按主键获取元数据、搜索实体和获取实体间关系。

技术实现

  • Spring Java 服务托管一组 Rest.li API 端点
  • MySQL 作为主要存储
  • Elasticsearch 用于搜索索引
  • Kafka 用于事件流通信

主要功能

  • 元数据的 CRUD 操作
  • 主键查询
  • 全文搜索
  • 关系查询(如血缘关系)

2.2 元数据模型 (Metadat

相关文章:

  • Python----OpenCV(图像的绘制——绘制直线,绘制矩形,绘制圆形,绘制多边形)
  • win11修改DNS
  • python基础与数据类型
  • 【和春笋一起学C++】(十九)C++函数新特性——对象的引用作为函数参数
  • springAI 大模型应用开发
  • WooCommerce独立站商城的最大优势
  • PCB设计杂谈之一
  • C# 中的Async 和 Await 的用法详解
  • Python应用八股文
  • Java大模型开发入门 (10/15):连接外部世界(下) - 端到端构建完整的RAG问答系统
  • 高效同步Linux服务器文件技巧
  • 计算机网络-自顶向下—第二章应用层-重点复习笔记
  • vue3+ts实现全屏效果
  • 力扣面试150题--添加与搜索单词 - 数据结构设计
  • Redux 原理深度剖析
  • PX4无人机|MID360使用FAST_LIO,实现自主定位及定点——PX4无人机配置流程(五)
  • CTFshow-PWN-栈溢出(pwn56-pwn59)
  • 2025-06-14【视觉】批量筛选图集中包含某种物体对象的方法
  • 解决ModuleNotFoundError: No module named ‘open_clip‘
  • 多项目状态如何集中监控与汇总
  • 重庆做网站优化推广的公司/站长seo软件
  • 北京市政府网站建设与管理规范/在线培训系统平台
  • 网站建设分析/北京网络优化推广公司
  • 网页设计学校官网/seo优化系统
  • 建设企业网站的意义/今日的最新消息
  • 最新网游排行榜2024/网站seo怎么操作