想象你是一家千人公司的数据管理员。公司里散落着上千张数据表、几百个指标指标、几十套报表,分布在 Hive、MySQL、Kafka 等不同系统里——就像一栋没有总目录的巨型图书馆:书架上堆满了书,但没人知道哪本书在哪、由谁编写、能不能外借。数据资产发现平台就是给这栋“数据图书馆”装上馆藏目录系统,而 Apache Atlas、DataHub、Amundsen 是三位风格迥异的“图书管理员”。Atlas 是严谨的族谱管理员,专门记录每本书的来历与影响;DataHub 是自动化编目机器人,新书上架立刻扫描登记;Amundsen 是图书馆入口的搜索引擎,输入关键词就能像用 Google 一样找到最合适的书。本文带你认识三位管理员的分工、性格与选人思路。

岗位关联

掌握三大元数据平台的能力边界与选型逻辑,是数据平台工程师与数据治理专家搭建企业数据资产目录、支撑 AI 特征复用的核心职业能力。

目录
  1. 可视化演示
  2. 资产发现概念
  3. Atlas血缘分类
  4. DataHub自动采集
  5. Amundsen探索
  6. 架构差异对比
  7. 选型决策建议
  8. 实施落地路径
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

展示Apache Atlas、DataHub、Amundsen三大数据资产发现平台的架构定位对比、数据血缘追踪流程、以及自动化元数据采集管道。切换模式探索不同维度。

本节配有交互动效(进入视口后自动加载,约 3KB)。

三大平台架构定位对比 Atlas:Hadoop生态深度集成,血缘追踪+分类管理+安全策略,适合Hive/Spark环境 DataHub:LinkedIn开源,Push模式自动化元数据采集,近实时更新,通用多数据源 selection = f(ecosystem, scale, governance_need) Amundsen:Lyft开源,搜索引擎式探索体验,类似Google搜索数据表

资产发现概念

图书馆刚开业时只有一百本书,管理员可以凭记忆回答“营销报表在哪”。但当书籍涨到一万册、分散在十个书库,记忆就会失效——读者找不到书,管理员互相不知道对方书库有什么,甚至同一张表被不同部门重复做了三份。大型企业的数据资产也面临同样的“失序”。

数据资产发现平台要做的事,就是为这栋“数据图书馆”建立总目录。它把散落在各系统的数据表、指标、任务、报表统称为“数据资产”,为每一份资产登记一条“元数据”。元数据就是“关于数据的数据”,相当于图书封面上的书名、作者、分类号。目录建好后,读者能查、管理员能管、审计能追溯。

一个成熟的数据资产发现平台通常包含三个层次:采集层通过插件连接 Hive、HBase、Snowflake 等数据源,抓取表结构、字段注释、调度信息;模型层把异构信息统一成可查询的元数据实体;服务层向上提供血缘图、搜索、标签、权限等能力。衡量目录建设进度最朴素的指标是覆盖率:

有了这层总目录,数据才从“躺在仓库里的书”变成“可以被检索、被借阅、被引用的资产”。接下来,我们要看看三位候选管理员各有什么绝活。

C=N发现N存量×100%C = \frac{N_{\text{发现}}}{N_{\text{存量}}} \times 100\%
覆盖率 = 已登记资产数 ÷ 存量资产总数,反映“图书馆里有多少本书已经贴上了目录条”。
  1. 分子 \(N_{\text{发现}}\)已经成功采集并登记到目录中的数据资产数量,好比已经贴好标签上架的书。
    N发现N_{\text{发现}}
  2. 分母 \(N_{\text{存量}}\)公司所有系统里实际存在的数据资产总数,对应书库里真实存放的全部书籍,需要盘点得出。
    N存量N_{\text{存量}}
  3. 比率 \(C\)两者相除并换算成百分比,得到目录建设的覆盖率,数值越接近 100% 说明越接近“心中有数”。
    C=N发现N存量×100%C = \frac{N_{\text{发现}}}{N_{\text{存量}}} \times 100\%

Atlas血缘分类

图书管理员最头疼的问题是“这本书是从哪本书改编来的?改动之后哪些报表会被影响?”Atlas 就像图书馆里的族谱管理员,给每本书绘制一张“家族树”——这就是血缘。

Apache Atlas 是 Hadoop 生态里成长起来的元数据治理平台,把“血缘追踪”和“分类管理”作为两大核心职责。血缘回答“这个指标依赖哪些原始表、又被哪些下游表消费”;分类回答“这本书属于哪个书库、贴了什么标签”——比如“个人敏感数据”标签决定了借阅权限。

Atlas 用“类型系统 + 实体实例”组织元数据。类型定义数据的形态,如 hive_table、hive_column;实体是具体的表或字段。平台从 Hive、HBase、Sqoop 等组件的钩子(hook)中捕捉变更事件,自动建立输入表到输出表的血缘边。对合规而言,最常用的查询是“找出一张表的所有上游来源”:

有了族谱管理员,合规审计不再需要翻几十份手工文档——一张血缘图就能说清楚数据从哪里来、流过哪些环节、最终去了哪里。这就是 Atlas 在强治理场景中不可替代的原因。

U(v)={u∈V∣u⇝v}U(v) = \{ u \in V \mid u \leadsto v \}
\(U(v)\) 是实体 \(v\) 的全部上游祖先集合,\(u \leadsto v\) 表示存在一条从 \(u\) 到 \(v\) 的血缘路径。就像族谱管理员回答“这份报表的祖先是哪些原始表”。
  1. 实体集合 \(V\)目录中所有表、字段、任务等元数据实体,构成图书馆的“家族成员花名册”。
    V={表、字段、调度任务等实体}V = \{ \text{表、字段、调度任务等实体} \}
  2. 可到达关系 \(\leadsto\)表示存在一条或多条加工链路从 \(u\) 指向 \(v\),对应“这本书是那本书的后代”。
    u⇝vu \leadsto v
  3. 上游集合 \(U(v)\)所有能通过血缘路径到达 \(v\) 的实体集合,用于回答影响分析和数据溯源。
    U(v)={u∈V∣u⇝v}U(v) = \{ u \in V \mid u \leadsto v \}

DataHub自动采集

如果图书馆每天涌入两百本新书,靠人工登记显然来不及。DataHub 就像一台自动化编目机器人:书刚放上传送带,它立刻扫描封面、目录、作者,自动生成图书卡并归档。

DataHub 起源于 LinkedIn,定位是“元数据领域的自动化采集平台”。它的核心哲学是把元数据当成持续流动的事件流,而不是一次性的静态快照。每当数据源里新增一张表、修改一个字段,都会触发一条元数据事件,被实时捕捉、标准化、写入目录。

技术实现上,DataHub 定义了统一元数据模型(Unified Metadata Model),用数据集、指标、用户、任务等实体覆盖业务要素;采集器通过 Kafka 事件管道接入各种数据源,再落到文档存储并建立 Elasticsearch 索引供查询。评价目录是否“跟得上变化”,可以用新鲜度指标:

对数据平台团队来说,DataHub 的意义在于“把人工编目的工作量压到最低”。只要管道搭好,新资产就能自动上架——这正是大规模数据中台最需要的省心机器人。

F=e−λ⋅Δt,Δt=t扫描−t变更F = e^{-\lambda \cdot \Delta t}, \quad \Delta t = t_{\text{扫描}} - t_{\text{变更}}
新鲜度 \(F\) 描述元数据与时事的同步程度:数据变更后越久才被扫描到,新鲜度越低。对应图书馆里“新书到货后多久能出现在查询系统里”。
  1. 时延 \(\Delta t\)从数据实体发生变化到被平台捕捉扫描之间的时间间隔,衡量编目机器人的反应速度。
    Δt=t扫描−t变更\Delta t = t_{\text{扫描}} - t_{\text{变更}}
  2. 衰减系数 \(\lambda\)大于 0 的常数,控制新鲜度随时间流逝的衰减快慢,\(\lambda\) 越大表示对滞后越敏感。
    λ>0\lambda > 0
  3. 新鲜度 \(F\)指数衰减函数,\(\Delta t = 0\) 时 \(F=1\)(绝对新鲜),\(\Delta t\) 越大 \(F\) 越接近 0。
    F=e−λ⋅ΔtF = e^{-\lambda \cdot \Delta t}

Amundsen探索

目录建好了,但读者怎么找到书?Amundsen 就是图书馆门口的搜索引擎:你输入“客户 流失”,它像 Google 一样返回最相关的表、指标和报表,还能告诉你哪本书最近最热门、大家的评分如何。

Amundsen 起源于 Lyft,设计出发点非常朴素——数据探索体验。业务分析师通常不记得表名,只记得“我要找客户留存相关的数据”。Amundsen 把搜索、浏览、收藏、评论、质量徽章整合在一起,让找数像逛书店一样自然。

排序是搜索引擎的灵魂。Amundsen 的搜索结果会综合文本匹配度、使用热度(被查询、被收藏次数)、数据新鲜度等因素加权排序,确保常被使用的优质表排在前面:

有了 Amundsen,找数从“到处问人”变成“自助搜索”。分析师把精力花在分析本身,而不是在几十个库里大海捞针——这是数据驱动文化的润滑剂。

Score(d,q)=α⋅Match(q,d)+β⋅Usage(d)+γ⋅Fresh(d)\text{Score}(d, q) = \alpha \cdot \text{Match}(q, d) + \beta \cdot \text{Usage}(d) + \gamma \cdot \text{Fresh}(d)
排序得分 = 文本匹配、使用热度、新鲜度的加权和。对应图书馆把“书名匹配、借阅次数、上架时间”综合起来排序推荐。
  1. 文本匹配 \(\text{Match}(q,d)\)查询词 \(q\) 与数据资产 \(d\) 的名称、注释、标签的匹配程度,决定“相关性”。
    Match(q,d)\text{Match}(q,d)
  2. 使用热度 \(\text{Usage}(d)\)该资产被查询、收藏、引用的次数,代表“这本书有多少人借过”。
    Usage(d)\text{Usage}(d)
  3. 加权求和\(\alpha, \beta, \gamma\) 为权重系数且和为 1,先按各自维度打分再合成总分进行排序。
    α+β+γ=1\alpha + \beta + \gamma = 1

架构差异对比

三位管理员各用一套工作笔记:族谱管理员用家族树状图,编目机器人用流水线卡片盒,搜索引擎用倒排索引账本。三个平台在架构上正好对应三类不同的存储与检索哲学。

Atlas 采用图模型,把表和加工任务作为节点、血缘作为边,天然适合查询“谁依赖谁”;DataHub 采用文档模型加流式管道,强调元数据的实时流动与统一抽象;Amundsen 用图数据库(Neo4j)存储关系、用 Elasticsearch 提供搜索排序,本质是一个以体验为中心的目录应用。

三类架构带来不同的查询复杂度特征。图上的血缘遍历需要沿着边扩展,复杂度与节点数、边数相关;而索引检索通过倒排列表直接定位,复杂度接近对数级别:

所以“谁好谁坏”没有标准答案:想盘清家谱选图模型,想快速响应大规模变更选流式模型,想要用户体验选搜索模型。理解了架构差异,选型就成功了一半。

T图遍历=O(V+E),T索引检索=O(log⁡n)T_{\text{图遍历}} = O(V+E), \quad T_{\text{索引检索}} = O(\log n)
血缘追踪需要在图中沿边游走,数据规模越大遍历成本越高;关键字搜索借助索引直接定位,速度不受图书总量线性影响。这解释了为什么 Atlas 擅长血缘而 Amundsen 擅长搜索。
  1. 图遍历复杂度 \(O(V+E)\)在血缘图中访问所有相关节点,时间随顶点数 \(V\) 与边数 \(E\) 增长,对应“沿着家族树逐层拜访”。
    O(V+E)O(V+E)
  2. 索引检索复杂度 \(O(\log n)\)通过有序倒排索引二分定位候选文档,时间随文档数呈对数增长,对应“直接翻到字典某一页”。
    O(log⁡n)O(\log n)
  3. 两者的取舍图模型利于血缘关系推理,索引模型利于海量文本检索,架构差异决定了平台的能力边界。
    T图遍历≫T索引检索 (数据规模大时)T_{\text{图遍历}} \gg T_{\text{索引检索}}\ (\text{数据规模大时})

选型决策建议

给图书馆配人手,不能只看哪位管理员名气大。小书店一个多面手就够了,国家级图书馆则需要族谱员、编目机器人、搜索引擎分工协作。企业的数据规模与技术栈,决定了该优先配备哪种能力。

经验法则可以概括为三点:数据源以 Hadoop 生态为主、合规审计诉求强烈时,Atlas 的血缘与分类能力最契合;数据规模增长快、每天产生大量新表、希望目录自动跟上变化时,DataHub 的流式采集效率最高;业务分析师多、强调自助找数与知识传播时,Amundsen 的搜索体验最受欢迎。

更严谨的做法是把选型拆成可打分的维度,再按企业权重加权:

权重数值可以按企业特点动态调整:强合规行业提高治理相关维度,分析师众多的企业提高体验维度。选管理员不是选“最贵的”,而是选“最合适的”。

Fit=0.4⋅S+0.3⋅T+0.2⋅K+0.1⋅E\text{Fit} = 0.4 \cdot S + 0.3 \cdot T + 0.2 \cdot K + 0.1 \cdot E
综合契合度 = 规模匹配 × 0.4 + 技术栈适配 × 0.3 + 团队能力 × 0.2 + 生态活跃度 × 0.1。所有维度取值 0 到 1,得分最高的平台优先考虑。
  1. 规模匹配 \(S\)数据源数量、表数量与该平台承载能力的匹配程度,规模越大越看重自动化采集能力。
    S∈[0,1]S \in [0,1]
  2. 技术栈适配 \(T\)现有引擎是否被平台原生支持,例如 Hadoop 生态对 Atlas 更友好。
    T∈[0,1]T \in [0,1]
  3. 能力与生态 \(K, E\)团队能否承担开源运维、社区是否活跃,权重虽小但常是项目成败的隐性因素。
    K,E∈[0,1]K, E \in [0,1]

实施落地路径

决定雇哪位管理员只是开始。真正的挑战在于:给管理层立规矩、把散落各处的书搬进登记流程、让读者习惯用新目录。实施一套数据资产发现平台,本质是一场持续的数据治理运动。

落地通常分三步走。第一步是元数据规划:圈定范围(先管核心数仓还是全公司所有系统)、统一命名规范、确定表/字段/指标的登记标准;第二步是接入集成:逐个对接数据引擎,配置采集器与调度频率;第三步是持续治理:建立血缘更新的巡检机制、定期清理僵尸资产、运营目录的使用率。

治理是否到位,可以用一个朴素的成熟度指标衡量——规划内的关键系统是否都已接入并保持更新:

目录建起来只是起点,真正让数据资产“活”起来的是日常运营:谁负责维护标签、多久巡检一次血缘、目录使用率如何纳入团队 KPI。就像图书馆的好口碑来自日复一日的上架、整理与导览,数据资产的秩序也来自持续治理。

R=M已接入M规划×100%R = \frac{M_{\text{已接入}}}{M_{\text{规划}}} \times 100\%
治理成熟度 \(R\) = 已接入平台的系统元数据量 ÷ 规划纳入的系统元数据量。它像图书馆盘点一样,定期核对“该登记的是否都登记了”。
  1. 已接入元数据量 \(M_{\text{已接入}}\)实际完成采集并在目录中持续更新的元数据规模。
    M已接入M_{\text{已接入}}
  2. 规划元数据量 \(M_{\text{规划}}\)项目启动时确定要覆盖的元数据总规模,作为治理目标基线。
    M规划M_{\text{规划}}
  3. 成熟度 \(R\)两者之比显示实施进度,低于 100% 说明还有系统尚未纳入管理。
    R=M已接入M规划×100%R = \frac{M_{\text{已接入}}}{M_{\text{规划}}} \times 100\%

AI 应用场景

金融风控的血缘追溯(Atlas)

阶段:数据治理与合规审计

解决的问题:监管要求解释风控模型使用的每个特征来源,传统靠人工文档记录,一张表变更后无法追踪下游影响,审计时手忙脚乱。

具体案例:某银行用 Atlas 对 Hive 数仓打上“个人敏感信息”标签。当监管要求出具数据流向报告时,分析人员沿血缘图回溯所有上游表,自动生成“数据从哪里来、被谁消费、经过哪些加工”的完整链路报告,从过去两周的整理工作缩短到半天。

数据中台的自动化资产上新(DataHub)

阶段:元数据自动化采集

解决的问题:数仓每天新增数百张表,手工维护目录滞后且易错,AI 团队常常找不到刚生成的特征表。

具体案例:某互联网公司的数据开发提交 SQL 建表后,DataHub 通过 Kafka 监听元数据变更事件,实时更新实体卡片与血缘。第二天早上,算法工程师搜索"user_embedding"就能找到最新特征表及其加工链路,特征复用率明显提升。

分析师的自助找数体验(Amundsen)

阶段:数据探索与发现

解决的问题:业务分析师不知道“客户流失率”存在哪张表,只能到处问人,或者在几十个库里逐个翻找。

具体案例:某出行平台分析师在 Amundsen 搜索“rider rating“,通过排行榜与质量徽章锁定核心表,点击”血缘视图“确认上游加工逻辑后直接写 SQL 拉数,从”找数两小时“缩短到”五分钟”。目录的点赞与评论还沉淀了表的使用经验。

Python 演示

python73 行
# -*- coding: utf-8 -*-"""Mini data asset catalog: register assets, trace lineage, search."""from collections import defaultdict  class Asset:    def __init__(self, name, owner, tags):        self.name = name        self.owner = owner        self.tags = tags  class MiniCatalog:    def __init__(self):        self.assets = []        self.lineage_map = defaultdict(list)  # source -> downstream     def register(self, name, owner, tags, sources=None):        asset = Asset(name, owner, tags)        self.assets.append(asset)        for src in (sources or []):            self.lineage_map[src].append(name)        return asset     def search(self, keyword):        kw = keyword.lower()        scored = []        for a in self.assets:            score = 0            if kw in a.name.lower():                score += 3            if kw in a.owner.lower():                score += 2            if any(kw in tag.lower() for tag in a.tags):                score += 1            scored.append((score, a.name, a.owner))        scored.sort(key=lambda x: x[0], reverse=True)        return scored     def upstream(self, name):        """Return all direct upstream sources of an asset."""        result = []        for src, dsts in self.lineage_map.items():            if name in dsts:                result.append(src)        return result     def coverage(self, discovered, total):        return discovered / total * 100 if total else 0.0  def main():    catalog = MiniCatalog()    catalog.register("user_profile", "zhangwei", ["user", "profile"])    catalog.register("order_pay", "lishu", ["order", "pay"])    catalog.register("user_orders", "daxue", ["order", "user"],                     sources=["user_profile", "order_pay"])    catalog.register("fraud_score", "chenhan", ["fraud", "risk"],                     sources=["user_orders", "user_profile"])     print("=== search 'order' ===")    for score, name, owner in catalog.search("order"):        print("  %-14s score=%d owner=%s" % (name, score, owner))     print("=== upstream of fraud_score ===")    print("  ", catalog.upstream("fraud_score"))     print("=== coverage ===")    print("  %.1f%%" % catalog.coverage(len(catalog.assets), 6))  if __name__ == "__main__":    main()
目的:用极简 Python 实现一个迷你数据资产目录,演示“登记资产 → 记录血缘 → 关键词搜索 → 计算覆盖率”的完整流程。
  1. self.lineage_map = defaultdict(list)用字典记录“源表 → 下游表”的映射,这就是一张迷你血缘图。
  2. def register(self, name, owner, tags, sources=None)登记一本“书”,并顺手把它的上游来源写入血缘图谱。
  3. for src in (sources or []):把血缘边写入图谱,对应 Atlas 追踪“这本书由哪些书改编而来”。
  4. if kw in a.name.lower(): score += 3表名命中给予最高权重,模拟 Amundsen 排序中的 Match 项。
  5. scored.sort(key=lambda x: x[0], reverse=True)按得分降序排列,模拟搜索引擎的结果排序。
  6. def coverage(self, discovered, total)计算目录覆盖率,即正文中衡量建设进度的 \(C\) 指标。

常见误区

误区我以为部署好 Atlas 或 DataHub 之后,它就会像雷达一样自动扫描整个公司,所有表、指标、报表立刻出现在目录里,什么都不用配置。

正解三位管理员都只能“管理被登记的书”。每个数据源都需要安装对应的采集器或钩子,并配置采集范围与调度频率;没接进来的系统,目录里永远看不到。就像编目机器人只能扫描放上传送带上且有条码的书。

为何常见:宣传语中的“自动化采集”让人误以为是从零到一的魔法,忽略了前提是“接入”。

误区我认为血缘是静态的,项目上线时画好一张血缘图,之后就不用再管了。

正解数据加工链路经常变化——上游表改了字段、调度任务换了依赖,血缘也随之改变。必须靠周期重扫或事件驱动持续更新,否则“族谱”会失真,误导排障与分析。

为何常见:血缘常被当作项目交付物(一张图),而不是需要长期运维的动态数据。

误区我觉得这三个都是“元数据管理工具”,功能大同小异,挑个名气大的就行。

正解Atlas 以治理血缘为核心,DataHub 以实时自动化采集为核心,Amundsen 以搜索体验为核心。面向的问题不同,架构也不同,用错场景会事倍功半。选型要看“这本书是给谁读的”。

为何常见:只看到“元数据目录”这个共性标签,没有深入理解各自的设计哲学。

误区我以为开源工具装上就能稳定运行,不用专人维护,正好省下人力成本。

正解三个平台都依赖 Kafka、Elasticsearch、图数据库等组件,版本升级、采集任务监控、索引调优都需要专门人力。自建开源元数据平台的隐性运维成本常常被低估。

为何常见:把“开源免费”等同于“零运维”,忽视了分布式系统的日常维护复杂度。

面试题

Q1. 数据资产发现平台的本质作用是?

单选题 · easy

  • A.直接存储业务查询数据
  • B.为分散数据建元数据目录← 正确答案
  • C.替代数据仓库跑批任务
  • D.自动清洗所有原始数据

答案:B。数据资产发现平台的核心是建立元数据目录,回答“数据在哪里、是什么、谁在用”,而不是存储业务数据、跑 ETL 或清洗数据。它就像图书馆目录系统,只登记书的信息,不负责书的创作和保存。

Q2. Apache Atlas 最核心的能力是?

单选题 · easy

  • A.实时搜索排名计算
  • B.血缘追踪与分类管理← 正确答案
  • C.可视化大屏数据展示
  • D.数据加密与密钥托管

答案:B。Atlas 的两大核心职责是血缘追踪与分类管理,尤其以 Hadoop 生态(Hive、HBase)的血缘钩子闻名。搜索排名是 Amundsen 的特点,可视化大屏与密钥托管都不是 Atlas 的定位。

Q3. DataHub 在元数据采集上最突出的特点是?

单选题 · mid

  • A.流式事件触发自动采集← 正确答案
  • B.仅支持关系型数据库
  • C.靠人工手工录入数据
  • D.依赖表格文件导入更新

答案:A。DataHub 把元数据视为持续事件流,通过 Kafka 管道实时捕捉变更并自动化采集,支持多种数据源。手工录入和文件导入与其“自动化”哲学完全相反。

Q4. Amundsen 最强调的用户体验是?

单选题 · mid

  • A.类似搜索引擎的找数体验← 正确答案
  • B.强调命令行工具体验
  • C.只提供离线血缘报表
  • D.专注代码仓库流水线

答案:A。Amundsen 由 Lyft 开源,核心设计目标是“像 Google 一样找数据”,包含搜索、排行榜与质量徽章。命令行、离线血缘报表和代码仓库管理均非其定位。

Q5. 关于三者的底层存储,说法正确的是?

单选题 · hard

  • A.Atlas 偏向图存储模型← 正确答案
  • B.DataHub 只用关系库
  • C.Amundsen 完全不用索引
  • D.三者都使用 MongoDB

答案:A。Atlas 底层采用图模型并在 HBase 等存储上落地;DataHub 使用文档存储加 Elasticsearch 索引;Amundsen 用 Neo4j 存储关系、Elasticsearch 提供搜索。三者都不依赖 MongoDB,且都使用了索引。

Q6. 某公司数据源以 Hadoop 生态为主且合规审计诉求强,选型应优先考虑?

单选题 · mid

  • A.选择 Amundsen 榜单功能
  • B.选择 Atlas 血缘与分类← 正确答案
  • C.选择 DataHub 流式采集
  • D.自研一个 BI 报表平台

答案:B。Hadoop 生态加强合规血缘诉求对应 Atlas 的主场:原生支持 Hive/HBase 血缘钩子,分类与权限管控完善。Amundsen 侧重体验、DataHub 侧重自动化采集,都不如 Atlas 贴合治理审计需求。

Q7. DataHub 实现自动化采集依赖哪些关键组件?(多选)

多选题 · mid

  • A.Kafka 元数据事件管道← 正确答案
  • B.统一元数据模型抽象← 正确答案
  • C.手工维护的说明文档
  • D.Elasticsearch 搜索索引← 正确答案

答案:ABD。DataHub 依赖 Kafka 事件管道接收元数据变更、统一元数据模型做标准化、Elasticsearch 建立查询索引。手工文档恰恰是它想要替代的低效方式。

Q8. 数据资产目录“新鲜度”偏低,可能由哪些原因导致?(多选)

多选题 · hard

  • A.采集调度时间间隔过长← 正确答案
  • B.变更事件未接入管道← 正确答案
  • C.用户搜索次数过于频繁
  • D.血缘图绘制过于琐碎

答案:AB。采集调度间隔过长或变更事件未接入管道,都会让目录滞后于实际数据,对应新鲜度公式中 \(\Delta t\) 变大。用户搜索频繁说明使用活跃,与新鲜度无关;血缘图繁琐影响的是可读性而非新鲜度。

Q9. 元数据在 AI 工程中的典型价值是?

单选题 · easy

  • A.让特征表可发现与复用← 正确答案
  • B.直接提升模型推理速度
  • C.替代 GPU 完成模型训练
  • D.自动完成数据标注工作

答案:A。元数据目录让 AI 团队能搜索并复用已有特征表,避免重复造轮子,是特征平台的基础。它不参与推理加速、模型训练或数据标注。

Q10. 实施数据资产发现平台的正确路径包括?(多选)

多选题 · hard

  • A.先规划元数据范围标准← 正确答案
  • B.逐一接入各数据引擎← 正确答案
  • C.建立持续治理的机制← 正确答案
  • D.一次性迁移全部系统

答案:ABC。正确路径是“先规划范围与标准,再逐个接入引擎,最后建立持续治理机制”。一次性全量迁移最容易因链路不稳而失败,属于高风险做法,成熟度公式也强调按规划稳步推进。