1) 【一句话结论】为保障航空旅客、行李、航班等数据在跨系统间的一致性,需构建以主数据管理(MDM)为核心,结合数据标准、元数据管理、数据质量监控与数据集成技术,形成“标准统一、集中管理、实时校验、动态同步”的数据治理体系,通过技术规则与业务流程协同,确保数据全生命周期的一致性。
2) 【原理/概念讲解】数据治理的核心是“统一标准、集中管理、动态校验”,具体分几部分:
- 数据标准:定义数据元(如旅客ID为18位数字,航班号格式为“CA+4位数字”),类似“语言规范”,所有系统必须遵循,避免数据格式混乱(比如旅客姓名用全角还是半角,统一为半角,避免识别错误)。
- 元数据管理:记录数据的来源系统、定义、更新时间等,就像“数据说明书”,帮助理解数据从哪里来、怎么来的,便于追溯(比如旅客信息来自订票系统,更新时间2024-01-15)。
- 主数据管理(MDM):针对核心主数据(旅客、航班、行李),建立集中式管理平台,所有系统通过API或数据同步工具与MDM交互,MDM负责数据清洗、冲突解决(比如两个系统录入同一旅客信息,MDM通过规则判断哪个正确,或人工干预),确保主数据唯一、准确(类比超市的中央库存系统,各分店销售数据同步到中央,库存一致,避免缺货或重复库存)。
- 数据质量监控:设置规则(如数据完整性:旅客姓名不能为空;唯一性:同一旅客ID不能重复;一致性:订票系统与值机系统的旅客年龄字段一致),通过规则引擎实时检查数据质量,发现问题时触发告警或自动修复(比如值机系统检测到旅客年龄字段为空,提示值机人员补充)。
- 数据集成:通过ETL(抽取、转换、加载)或ELT(抽取、加载、转换)工具,将各系统数据同步到MDM或数据仓库,确保数据实时或准实时一致(比如航班系统更新航班状态后,值机系统立即同步,避免旅客看到错误信息)。
3) 【对比与适用场景】
| 对比维度 | 数据标准化 | 主数据管理(MDM) |
|---|
| 定义 | 规范数据元(格式、规则),统一数据表示 | 集中管理核心主数据(如旅客、航班),解决多源数据冲突 |
| 核心目标 | 统一数据格式,避免语义歧义 | 确保主数据唯一、准确、一致 |
| 适用场景 | 数据录入前或转换时,如旅客姓名格式统一 | 多系统共享核心主数据,如订票、值机、行李系统共享旅客信息 |
| 注意点 | 需业务部门参与定义标准,避免过度复杂 | 需业务规则支持冲突解决,如人工审核或规则引擎 |
| 技术依赖 | 数据字典、规则引擎 | MDM平台(如Informatica MDM、Oracle MDM) |
4) 【示例】以旅客信息为例,假设订票系统(S1)和值机系统(S2)需要保持一致。设计数据同步流程:
- 步骤1:数据抽取:S1和S2分别抽取旅客数据(如旅客ID、姓名、联系方式)。
- 步骤2:数据清洗:MDM平台对抽取的数据进行清洗(如去除空值、格式化姓名为统一格式)。
- 步骤3:冲突解决:若S1和S2的同一旅客ID数据冲突(如S1的年龄为25,S2的年龄为26),MDM通过规则(如优先取最新更新时间的数据)或人工审核解决。
- 步骤4:数据加载:清洗后的数据加载到MDM的“旅客主数据表”,并同步到S1和S2。
伪代码示例(数据质量检查规则):
# 数据质量检查规则:旅客姓名唯一性
def check_passenger_name_uniqueness(data):
# 从MDM获取所有旅客姓名列表
all_names = get_all_passenger_names_from_mdm()
# 检查当前数据中的姓名是否已存在
for name in data['name']:
if name in all_names:
return False, f"姓名 {name} 已存在"
return True, "通过"
5) 【面试口播版答案】(约90秒)
“面试官您好,为保障航空旅客、行李、航班等数据在跨系统间的一致性,我设计的方案核心是构建以主数据管理(MDM)为核心的数据治理体系。首先,通过数据标准统一各系统的数据元(比如旅客ID为18位数字,航班号格式为‘CA+4位数字’),避免数据格式混乱。然后,建立元数据管理,记录数据的来源系统、定义,便于追溯。接着,针对核心主数据(如旅客、航班),使用MDM平台集中管理,所有系统通过API或数据同步工具与MDM交互,MDM负责数据清洗和冲突解决(比如两个系统录入同一旅客信息,MDM通过规则判断哪个正确)。同时,设置数据质量监控规则(如数据完整性、唯一性、一致性),通过规则引擎实时检查数据质量,发现问题时触发告警。最后,通过数据集成工具(如ETL)将各系统数据同步到MDM,确保数据实时或准实时一致。这样,旅客、行李、航班等数据在订票、值机、行李系统间就能保持一致,提升业务效率。”
6) 【追问清单】
- 问题1:数据治理的优先级如何确定?
回答要点:优先处理核心主数据(如旅客、航班),因为它们是业务关键;其次处理数据质量高的系统,逐步扩展。
- 问题2:技术选型方面,MDM平台和集成工具如何选择?
回答要点:MDM平台选支持航空行业标准的(如Informatica MDM),集成工具选支持实时同步的(如Apache Kafka或企业级ETL工具)。
- 问题3:数据冲突(如两个系统录入同一旅客信息不一致)如何处理?
回答要点:MDM通过业务规则(如优先取最新更新时间的数据)或人工审核解决,确保数据准确性。
- 问题4:数据治理的实施成本和周期?
回答要点:初期投入较高(平台搭建、人员培训),周期约6-12个月,分阶段实施(先试点核心系统,再推广)。
- 问题5:如何确保数据治理的持续有效性?
回答要点:定期评估数据质量,更新数据标准,与业务部门协同,建立数据治理团队。
7) 【常见坑/雷区】
- 坑1:只谈技术不谈业务需求,忽略数据治理的目的是支撑业务(如值机系统需要准确的旅客信息,避免误登机)。
- 坑2:数据标准不明确,导致各系统数据格式不一致(如旅客姓名用全角或半角,导致识别错误)。
- 坑3:未考虑实时性,数据同步延迟导致业务问题(如航班状态更新后,值机系统未及时同步,旅客看到错误信息)。
- 坑4:数据冲突处理机制不完善,导致数据不一致(如两个系统录入同一旅客信息,MDM无法解决,数据混乱)。
- 坑5:未建立数据治理团队,缺乏持续维护(如数据标准更新后,系统未及时调整,导致数据不一致)。