专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

linkedin/datahub-ingestion Docker 镜像 - 轩辕镜像

datahub-ingestion
linkedin/datahub-ingestion
DataHub数据摄取镜像,用于从各类数据源(数据库、数据仓库、消息队列等)收集、同步数据及元数据到DataHub数据目录,支持多数据源连接、灵活同步策略配置与自动化数据摄取流程。
2 收藏0 次下载activelinkedin镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

DataHub Ingestion 镜像文档

镜像概述

DataHub Ingestion镜像是DataHub数据目录平台的核心组件,专注于实现数据从各类数据源到DataHub的数据摄取、同步及元数据采集功能。作为DataHub数据集成链路的关键环节,该镜像支持通过配置化方式定义数据摄取任务,自动化完成数据抽取、转换、加载(ETL)流程,确保DataHub数据目录中数据资产信息的实时性与准确性,为企业数据治理、元数据管理及数据发现提供基础支撑。

核心功能与特性

多数据源支持
  • 覆盖主流数据源类型:关系型数据库(MySQL、PostgreSQL、Oracle)、数据仓库(***、BigQuery、Redshift)、消息队列(Kafka、RabbitMQ)、API服务(REST API、GraphQL)及文件存储(S3、GCS、HDFS)等。
  • 内置丰富连接器:提供开箱即用的数据源连接器,无需额外开发即可快速对接目标数据源。
全面元数据采集
  • 基础元数据:自动采集表/集合名称、字段名称、数据类型、 nullable 约束、默认值等表结构信息。
  • 业务元数据:支持采集字段描述、表级/字段级标签、数据负责人、数据分类等业务属性。
  • 数据血缘:追踪数据流转路径,记录数据从源头到目标的转换关系(如ETL任务、SQL查询依赖)。
灵活同步策略
  • 同步模式:支持全量同步(首次数据加载)、增量同步(基于时间戳/自增ID的变更捕获)及实时同步(监听数据源变更事件)。
  • 调度配置:支持定时触发(CRON表达式)、事件触发(如文件落地、消息到达)及手动触发,满足不同数据更新频率需求。
任务配置与管理
  • 配置驱动:通过YAML配置文件定义数据源连接、同步规则、目标DataHub配置,支持版本化管理。
  • 动态任务管理:支持通过API或DataHub UI动态创建、更新、暂停/恢复摄取任务,无需重启容器。
监控与可观测性
  • 任务状态追踪:实时上报任务执行状态(运行中、成功、失败、暂停)及进度(已处理记录数、剩余时间)。
  • 日志与告警:输出详细执行日志(INFO/DEBUG级别),支持集成Prometheus监控指标(任务耗时、成功率、数据量),并可配置失败告警(邮件、Slack、Webhook)。

使用场景与适用范围

适用场景
  • 企业数据目录构建:需统一管理多系统数据资产(如跨部门数据库、数据仓库表),通过该镜像自动采集元数据并汇聚至DataHub。
  • 元数据自动化管理:替代人工维护数据资产文档,通过定时/实时同步确保元数据(如字段描述、数据血缘)与数据源实时一致。
  • 数据集成流程简化:为BI工具、数据科学平台提供统一数据入口,通过配置化任务快速对接数据源,减少定制化ETL开发。
  • 数据治理合规:通过元数据采集与血缘追踪,满足数据审计、合规性检查(如GDPR、数据分类分级)需求。
适用用户
  • 数据工程师:配置数据摄取任务,实现跨系统数据同步。
  • 数据治理团队:自动化元数据采集,构建企业数据资产目录。
  • 数据平台管理员:监控数据流转链路,保障数据集成稳定性。

使用方法与配置说明

前提条件
  • 已部署DataHub核心服务(GMS、Frontend),且Ingestion镜像可访问GMS服务(默认端口8080)。
  • 目标数据源已配置访问权限(如数据库账号密码、API密钥、网络通路)。
  • 宿主机或容器环境支持挂载配置文件(用于任务配置)。
拉取镜像

从Docker Hub或私有镜像仓库拉取最新版本镜像:

bash
docker pull datahubproject/ingestion:latest

版本说明:可通过指定标签选择稳定版本(如v0.13.0),建议与DataHub核心服务版本保持一致。

配置文件示例

数据摄取任务通过YAML配置文件定义,以下为MySQL数据源同步至DataHub的示例配置(ingestion-config.yaml):

yaml
# 数据源配置
source:
  type: mysql
  config:
    username: "db_user"
    password: "db_password"
    host_port: "mysql-host:3306"
    database: "target_db"
    schema_pattern: "public"  # 同步指定schema下的表
    table_pattern: "orders.*"  # 同步orders前缀的表
    use_information_schema: true  # 从information_schema获取元数据

# 目标DataHub配置
sink:
  type: datahub
  config:
    server: "[***]"  # DataHub GMS服务地址
    auth:
      type: "no-auth"  # 若启用认证,可配置token或OAuth2信息

# 同步策略配置
transformers:
  - type: "add_dataset_tags"  # 为同步的数据集添加标签
    config:
      tags: ["mysql", "production"]
  - type: "mask_sensitive_fields"  # 脱敏敏感字段(如手机号)
    config:
      fields: ["phone_number"]
      mask_type: "partial"  # 部分脱敏(如138****5678)

# 任务调度配置
run_config:
  schedule: "0 */6 * * *"  # CRON表达式:每6小时执行一次
  retry_count: 3  # 任务失败后重试次数
  timeout_seconds: 3600  # 任务超时时间(1小时)
运行容器(Docker Run示例)

通过docker run启动容器,挂载配置文件并指定环境变量:

bash
docker run -d \
  --name datahub-ingestion \
  -v /path/to/ingestion-config.yaml:/etc/datahub/ingestion-config.yaml \
  -e DATAHUB_GMS_HOST=datahub-gms \  # DataHub GMS服务主机名
  -e DATAHUB_GMS_PORT=8080 \         # DataHub GMS服务端口
  -e LOG_LEVEL=INFO \                # 日志级别(INFO/DEBUG/WARN/ERROR)
  -e INGESTION_WORKER_COUNT=2 \      # 并发任务数(默认1)
  datahubproject/ingestion:latest \
  ingest -c /etc/datahub/ingestion-config.yaml  # 启动指定配置文件的任务
Docker Compose配置示例

与DataHub核心服务一同部署时,可通过docker-compose.yml集成:

yaml
version: '3.8'
services:
  datahub-gms:  # DataHub GMS服务(需提前部署)
    image: datahubproject/gms:latest
    ports:
      - "8080:8080"
    # ...其他GMS配置(略)

  datahub-ingestion:
    image: datahubproject/ingestion:latest
    volumes:
      - ./ingestion-configs:/etc/datahub/configs  # 挂载配置文件目录
    environment:
      - DATAHUB_GMS_HOST=datahub-gms
      - DATAHUB_GMS_PORT=8080
      - LOG_LEVEL=INFO
      - INGESTION_WORKER_COUNT=3
    command: ingest -d /etc/datahub/configs  # 批量运行目录下所有YAML配置任务
    depends_on:
      - datahub-gms
环境变量说明
环境变量描述默认值
DATAHUB_GMS_HOSTDataHub GMS服务主机名或IPlocalhost
DATAHUB_GMS_PORTDataHub GMS服务端口8080
LOG_LEVEL日志输出级别(DEBUG/INFO/WARN/ERROR)INFO
INGESTION_WORKER_COUNT并发执行的摄取任务数(控制资源占用)1
CONFIG_RELOAD_INTERVAL配置文件自动重载间隔(秒,0表示禁用),用于动态更新任务配置300
METRICS_PORTPrometheus监控指标暴露端口9090
HTTP_PROXY若通过代理访问数据源或DataHub,配置HTTP代理地址(如[***])无
配置文件参数说明

配置文件(YAML)核心参数结构如下:

1. 数据源配置(source)
  • type:数据源类型(如mysql/***/kafka),需与内置连接器匹配。
  • config:数据源连接详情,不同类型数据源参数不同(参考DataHub连接器文档)。
2. 目标配置(sink)
  • type: datahub:固定值,指定目标为DataHub。
  • config.server:DataHub GMS服务地址(如[***])。
  • config.auth:认证配置(如no-auth/token/oauth2),无认证时可省略。
3. 转换规则(transformers,可选)
  • 数组类型,支持多转换步骤(如添加标签、脱敏字段、过滤数据),每个转换需指定type及对应config。
4. 运行配置(run_config,可选)
  • schedule:CRON表达式(如0 0 * * *表示每日凌晨执行),不配置则为一次性任务。
  • retry_count:任务失败后重试次数。
  • timeout_seconds:单任务超时时间,超时后标记为失败。

任务管理与监控

查看任务状态

通过DataHub UI([***])的“Ingestion”模块查看任务列表及执行状态,或通过容器日志实时监控:

bash
docker logs -f datahub-ingestion
动态更新任务

修改挂载的YAML配置文件后,配置将在CONFIG_RELOAD_INTERVAL时间内自动重载,无需重启容器;或通过DataHub API触发任务更新:

bash
curl -X POST "[***]{task-id}/reload"
监控指标

Prometheus可通过METRICS_PORT(默认9090)抓取指标,关键指标包括:

  • ingestion_task_success_total:成功完成的任务数
  • ingestion_task_failed_total:失败的任务数
  • ingestion_records_processed_total:处理的记录总数
  • ingestion_task_duration_seconds:任务平均执行耗时
查看更多 datahub-ingestion 相关镜像 →
acryldata/datahub-ingestion logo
acryldata/datahub-ingestion
by acryldata
Datahub Ingestion镜像用于数据元数据的自动化摄入,支持从数据库、数据仓库、消息队列等多种数据源抽取元数据,转换后加载至Datahub平台,实现元数据统一管理,助力数据发现、治理与数据资产盘点。
31M+ pulls
上次更新:2 天前
linkedin/datahub-gms logo
linkedin/datahub-gms
by linkedin
DataHub GMS是LinkedIn DataHub的核心元数据服务,负责元数据的存储、管理与查询,支持数据发现、治理和协作,是构建企业级数据目录的关键组件。
10100M+ pulls
上次更新:1 年前
acryldata/datahub-ingestion-base logo
acryldata/datahub-ingestion-base
by acryldata
DataHub数据摄取容器的基础镜像
100K+ pulls
上次更新:8 个月前
acryldata/datahub-gms logo
acryldata/datahub-gms
by acryldata
DataHub GMS镜像作为开源数据目录平台DataHub的核心组件,提供元数据存储、查询与管理服务,支持数据发现及治理功能。
41M+ pulls
上次更新:2 天前
acryldata/datahub-upgrade logo
acryldata/datahub-upgrade
by acryldata
DataHub升级命令行工具(CLI)的Docker镜像,用于执行DataHub的升级操作。
550M+ pulls
上次更新:2 天前
acryldata/datahub-mysql-setup logo
acryldata/datahub-mysql-setup
by acryldata
用于配置MySQL服务器以支持Datahub运行的容器
15M+ pulls
上次更新:2 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
linkedin/datahub-ingestion
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429