伴鱼DQC数据质量平台实践.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
伴鱼DQC数据质量平台实践 业内关于数据质量平台化的产品引见不多,我们次要对两个开源产品和一个云平台产品进行了调研,下面将逐一引见。 Apache Griffin Apache Griffin 是 eBay 开源的一款基于 Apache Hadoop 和 Apache Spark 的数据质量服务平台。其架构图如下: 架构图从 High Level 层面清楚地呈现了数据质量平台的三个核心流程: Define:数据质检规章(目标)的定义。 Measure:数据质检任务的执行,基于 Spark 引擎实现。 Analyze:数据质检结果量化及可视化呈现。 同时,平台对数据质检规章进行了分类(这也是目前业内普遍认可的数据质量的六大标准): Accuracy:精确?????性。如能否符合表的加工规律。 Completeness:完备性。如数据能否存在丢失。 Timeliness:准时性。如表数据能否按时产生。 Uniqueness:独一性。如主键字段能否独一。 Validity:合规性。如字段长度能否合规、枚举值集合能否合规。 Consistency:全都性。如表与表之间在某些字段上能否存在冲突。 目前该开源项目仅在 Accuracy 类的规章上进行了实现。 Griffin 是一个完全闭环的平台化产品。其质检任务的执行依靠于内置定时调度器的调度,调度执行时间由用户在 UI 上设定。任务将通过 Apache Livy 组件提交至配置的 Spark 集群。这也就意味着质检的实时性难以保障,我们无法对产出特别数据的任务进行强行阻断,二者不是在同一个调度平台被调度,时序上也不能保持串行。 Qualitis Qualitis 是微众银行开源的一款数据质量管理系统。同样,它供应了一整套统一的流程来定义和检测数据集的质量并准时报告问题。从整个流程上看我们照旧可以用 Define、Measure 和 Analyze 描述。它是基于其开源的另一款组件 Linkis 进行计算任务的代理分发,底层依靠 Spark 引擎,同时可以与其开源的 DataSphereStudio 任务开发平台无缝连接,也就实现了在任务执行的工作流中嵌入质检任务,满足质检时效性的要求。可见,Qualitis 需要借助微众银行开源的一系列产品才能达到满足的效果。 DataWorks 数据质量 DataWorks 是阿里云上供应的一站式大数据工场,其中就包括了数据质量在内的产品处理方案。同样,它的实现依靠于阿里云上其他产品组件的支持。不过不得不说 DataWorks 数据质量部分的使用引见从产品外形上给了我们很大的挂念,对于我们的产品设计格外具有指点性的作用。 设计目标 经过一番调研,我们确定了 DQC 的设计目标,次要包括以下几点: 目前暂且只支持离线部分的数据质量管理。 支持通用的规章描述和规章管理。 质检任务由公司内部统一的调度引擎调度执行,可支持对质检结果特别的任务进行强阻断。同时,尽量降低质检功能对调度引擎的代码侵入。 支持质检结果的可视化。 系统设计 背景补充 伴鱼离线调度开发平台是基于 Apache Dolphinscheduler(下文简称 DS)实现的。它是一个分布式去中心化,易扩展的可视化 DAG 调度系统,支持包括 Shell、Python、Spark、Flink 等多品种型的 Task 任务,并具有很好的扩展性。架构如下图所示: Master 节点担任任务的监听和调度,Worker 节点则担任任务的执行。值得留意的是,每一个需要被调度的任务必定需要设置一个调度时间的表达式(cron 表达式),由 Quartz 定时为任务生成待执行的 DAG Command,有且仅有一个 Master 节点获得执行权,掌管该 DAG 各任务节点的调度执行。 全体架构 以下是平台全体的架构图: 由以下几部分组成: DQC Web UI:质检规章等前端操作页面。 DQC(GO):简约的实体元数据管理后台。次要包括:规章、规章模板、质检任务和质检结果几个实体。 DS(数据质量部分):质检任务依靠 DS 调度执行,需要对 DS 进行肯定的改造。 DQC SDK(JAR):DS 调度执行任务时,检测到任务绑定了质检规章,将生成一类新的任务 DQC Task (与 DS 中其他类型的 Task 同级,DS 对于 TasK 进行了很好的笼统可以便利扩展),本质上该 Task 将以脚本方式调用执行 DQC SDK 的规律。DQC SDK 涵盖了规章解析、执行的全部规律。 下文次要阐述我们在各模块设计上的一些思考和权衡。 规章表述 标准与规章 前文在调研部分提及了业内普遍认可的数据质量的六大标准。那么问题来了: 如何将标准与平台的规章对应起来? 标准中涉及到的现实场景能否我们可以逐一枚举? 即便我们可

文档评论(0)

bob157641554 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档