赞
踩
点击上方【凌云驭势 重塑未来】
一起共赴年度科技盛宴!
数据质量治理是数据治理中的一个重要环节,它对于一个面向数字化转型的企业来说尤为重要,而目前市场上缺乏完全基于 Amazon 的、全面覆盖业务和技术需求的数据质量治理整体解决方案的服务。
这篇博客里将介绍一种基于 Amazon 云服务的数据质量治理解决方案——DQ Key,该方案采用成熟的数据治理模型,覆盖完整数据质量治理流程,通过 Data Profile 规则指标、Quality Control 质量控制、Quality Evaluation 质量评估等环节,将数据治理模块化、治理机制自动化,最终帮助客户建立持续数据质量提升体系,为其企业级数据分析持续赋能。
用户场景
针对各类企业数据质量问题,不同客户角色拥有不同的治理期望。企业内高级管理人员往往侧重于策略层面:通过梳理与建设一套自上而下的数据治理策略,实现数据质量治理的流程标准化;各级业务人员,更多侧重于规则和内容:需要一套数据治理策略帮助他们及时发现数据质量问题,根据实际情况配置常见质量指标,并灵活处理问题数据(自行处理、授权处理、自动处理);而 IT 则更多需要考虑新建数据治理技术方案与现有的 ETL/ELT 流程的兼容性,以及展望新的流程在应对未来各种复杂场景下的数据质量问题时的可扩展性。
F1.客户数据质量治理期望组成
解决方案概述
数据质量治理方案会从业务和技术上应对不同角色用户的期望,DQ Key 解决方案将从业务与技术两个角度赋能客户团队。
F2.数据质量赋能企业数字化转型模型
从上图我们可以看到,从业务赋能角度来看,1)我们通过制定数据质量策略、组织结构权责矩阵、roadmap 路线规划来确定上层数据质量治理方向,建立数据质量管理流程、质量控制标准,通过根因分析、质量评分标准来推动整体数据质量的提升;2)形成问题通知机制,通过构建数据回传机制方便客户通知或授权数据属主更新问题数据,并为客户构建统一的质量指标体系。
在技术赋能方面:1)治理模型会为客户建立审批流程控制、质量评分;2)通过事件驱动实现实时发现数据质量问题,通过规则引擎可以灵活配置出相应的数据质量指标,并通过指标配置界面赋予业务自行配置常见的质量指标的灵活性;3)此解决方案采用松耦合设计,将能兼容任何基于 Amazon S3 的数据湖 ETL/ELT 处理流程。其底层支持多计算引擎,使其既可以通过 Glue/EMR 进行大数据处理,也能通过 Lambda/Redshift 支持少量数据快速处理。4)该方案支持使用 python 脚本自定义指标及处理脚本,从而支持未来各种复杂场景下数据质量问题的发现及处理。
综上,DQ Key 将会为您提供一套标准化的企业级数据质量管理解决方案的技术实现,并遵循以下七个维度实现一套可持续迭代的治理闭环。
数据质量策略(Strategy):制定整体数据质量治理策略,如明确组织结构权责、制定规划路径、明确运作范围、建立质量管理流程等。
问题识别(Diagnosis):调研企业的数据质量需求、识别重点需求、进行根因分析等。
规则指标(Profile):制定数据质量指标标准、数据情况发现或统计,依据阀值对数据进行监控检测。
质量控制(Control):对已发现的数据质量问题进行质量控制,如数据清洗、问题告警机制、数据流阻断机制等。
质量评估(Evaluation):建立质量评分标准,对数据质量进行整体评估。
质量洞察(Insight):对数据质量指标构建 dashboard,对历史问题进行跟踪。
运营反馈(Operation):建立数据回传机制、对数据质量事件进行生命周期内跟踪等。
F3.数据质量治理流程
功能概要
DQ Key 数据质量治理技术方案中的核心板块 Data Profile、质量控制、质量评估、质量洞察、运营反馈的开发全部基于 Amazon 原生计算引擎(如 Amazon Glue、Amazon Lambda 等),存储采用标准数据湖存储 Amazon S3,消息事件管理基于 Amazon SNS,在此基础上开发规则引擎用于生成质量指标库、问题处理库,并通过自定义标准函数模版支持复杂指标处理的扩展。在运行支持方面引入了审批流控制,数据安全、操作审计等接口的支持。采用 Amazon CDK(Cloud Development Kit),可在 Amazon 账号中实现代码及架构模式(Infrastructure as Code)的一键部署。
F4.DQ Key功能分布堆叠图
云端架构
下图(F5. 服务架构图)展示了 DQ Key 的架构设计。该图以使用 serverless 数据湖架构的 Amazon Glue 进行 ETL 处理的场景为例,展示了 DQ Key 如何与企业的 ETL 主处理流程进行交互工作。
每个 ETL 任务都会将结构数据分层存放到不同的 Amazon S3 桶,通过配置,DQ Key 可以监听到桶内文件新增或变更,S3 对象变更事件触发 Amazon SNS,驱动 DQ Handler(基于 Amazon Lambda),Handler 触发对应的数据质量检查任务,DQ Key 会依据配置好的规则进行 Data Profile 以及 Quality Control 的处理,涉及清洗的数据会返回 ETL/ELT 流继续处理,最后问题会经 Amazon SNS 进行邮件或其它方式的通知。
DQ Key 处理的结果会存入独立的 S3 桶,企业数据运营人员可通过 Amazon Athena 进行数据查看,也可以通过 Dashboard 将数据质量情况进行可视化分析和展示。DQ Key 标准解决方案包含 Amazon QuickSight 开发的 Dashboard 实例,同时用户也可以灵活选择其他 BI 工具进行分析。
F5.服务架构图
功能示例
以 Data Profile 为例,我们需要检测数据的波幅是否合理,一个简单的情况是合理波幅在参考值的0.5倍与1.5倍之间,为此,我们使用指标 column_compare_with_value,该指标后台生成规则示例如下:
column_compare_with_value 后台生成代码(python)
- # check: column_compare_with_value
- whens = [
- {"id":1, "table":"dq_0", "col":"round({steer}, 1)", "op":"between", "val_1":"0.5 * {std_steer}",
- "val_1_type":"expr", "val_2":"1.5 * {std_steer}", "val_2_type":"expr"}
- ]
- whens_priority =[1]
- metric.add_by_engine(func_name="column_compare_with_value", metric_type="check",
- whens=whens, whens_priority=whens_priority, threshold_df=None, desc="compare column value with the given value")
左滑查看更多
客户可通过前端配置调整指标,示例如下:
指标配置后,通过事件触发,当源数据文件有所更新,触发 DQ Handler,DQ Handler 触发 DQ Key 运行该指标,任务运行成功后会把相应的监测结果置入指定的结果文件中,然后可通过 BI 工具对结果进行可视化分析。
后台处理(以 Glue 为例)
指标 Insight
其它方案
Amazon 云端还提供其他几种处理数据质量问题的工具,如:Amazon Glue DataBrew、Amazon SageMaker Data Wrangler、Deequ 等。用户可能会对如何选择不同的工具和解决方案产生疑问,我们会在后续的博客中,为大家详细比较不同的解决方案并分析它们的适用场景。
结论
在这篇博客文章中,您了解到基于 Amazon 的全面数据质量解决方案 DQ Key,此方案基于数据治理自上而下质量治理模型以及数据质量治理流程,从业务以及技术层面为客户提供数据质量从发现到治理的一整套完整解决方案,赋能企业数字化转型。
如你需要了解详细内容,欢迎联系我们。期待收到您的反馈意见和建议。
本篇作者
孔庆强
亚马逊云科技专业服务团队的大数据顾问,十多年从事数据湖仓及数据分析,为客户提供数据建模、数据治理及整体专业数据解决方案。在个人爱好方面,喜爱健身、音乐、旅行。
毛元祺
亚马逊云科技专业服务团队数据科学家。负责统计学习、机器学习、数据挖掘以及云上数据平台设计方面的相关咨询服务。服务行业囊括医疗,金融,无人驾驶等,积累了丰富的开发运维经验。
刘涓池
亚马逊云科技专业服务团队资深大数据顾问。负责 Dataall 项目从 Global 到中国区的落地实施。在基于亚马逊云科技的数据治理、数据分析、大数据应用等领域有多个项目咨询和成功交付经验。在进入亚马逊云科技之前服务过金融、地产、销售制造等企业级用户,在数据集成、分析应用方面有10+的工作经验。
2022亚马逊云科技 re:Invent 全球大会
中国行现已开启!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。