数据治理手稿

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 数据治理手稿

维度

分类

指标说明

研发域

表面名规范

表层级、主题、颗粒度、业务过程、存储策略、周期粒度...

词根规范

/

字段命名规范

/

注释规范性

表注释<5字、无字段注释、表更新说明

字段类型规范

/

表规范化率

规范化的CDM(DWD\DWS\DIM)表数量与所有CDM表数量比值

表引用率

所有被ADS层引用的CDM(DWD\DWS\DIM)中,规范化的CDM表数量与所有CDM表数量比值

跨层依赖

跨层依赖占比:DWS依赖ODS,DM依赖ODS...

反向依赖占比: DWD依赖DM、DWD依赖DWS、DWS依赖DM

单一事实建模:一张DWD只依赖一张ODS

链路深度及分层

决定问题的修复时间,链路越深,问题修复的时间可能就越长。

链路>5

核心表查询

前20%查询表中,核心表占比>80%

平均查询时长

个人平均查询时长>公司总平均时长

不良查询

1:大于100s查询次数+查询失败次数>公司平台不良查询数

2:定义一个不良查询及格数

手动查询ods大表

手动查询ods大表不做限制

同源重复导入

1day/hour同源数据导入次数>2

表名任务不一致

表名任务不一致

闲置率

未被引用的ODS表数量与所有ODS表数量比值

穿透率

直接消费ODS的ADS表与所有ADS表占比

多任务同写一张表

多任务同写一张表

指标管理规范

1:指标命名规范、管理规范、口径统一,指标字典等

2:建立指标监控项,异动率,波动范围,指标使用率,指标依赖层级表...

3:  指标平台建设

质量域

数据完整性、一致性、唯一性、NULL值分布...

  • 表级:主键唯一性、表行数监控、行数波动监控等;
  • 字段级:空值判断、枚举值范围监控、数值型分布、最大最小值监控等;
  • 规则强弱:支持配置规则命中后,继续执行或终止任务等不同策略。

考量数据项信息是否全面、完整、无缺失

公式:表完整性和字段完整性的平均值

DQC覆盖率

考量要监控的数据项是否作用所有的任务上,是否有所遗漏

公式:已见控的作业个数/总的作业个数

DQC达标

公式:监控的高价值作业个数/高价值作业总个数(高价值作业是指作业价值分在80分以上的作业)

产出稳定性

考量作业的运行稳定性,是否经常报错,导致数据事故

公式:错误作业个数(本周)/作业总个数

回稳稳定性

公式:失败后重启成功任务数/总的失败记录(去重)数

DDL稳定性

公式:使用到的表发生DDL修改个数/使用到的表数量

告警响应度

通过日常管理、应急响应,降低或消除问题影响,避免数据损毁、丢失

公式:已处理告警个数(本周)/告警总个数(本周)

作业准确性

考量数据是否符合预设的质量要求,如唯一性约束、记录量校验等

公式:告警作业个数(本周)/监控作业总个数

基线破线率

考量数据项信息可被获取和使用的时间是否满足预期要求 公式:超出任务最晚产出时间的作业个数/总的作业个数

作业性能分

考量作业的执行效率和健康度,诊断作业是否倾斜等性能问题

公式:危急作业个数(本周)/作业总个数

安全域.

表安全等级设置

超过一个月仍未进行安全分类、分级确认的数据表/总的表数量

字段安全等级设置

字段依据业务的重要程度划分安全等级。

敏感字段加密

数据脱敏处理 大于2级数据合规字段未处理

数据服务脱敏、加密

数据脱敏处理 大于2级数据服务合规字段未处理

审批流程合规性

建立审批流程机制

读写权限合规设置

不同的层级,不同的业务部门对于不同的库表设置相关的权限控制和隔离

责任人符合规范

责任人需要满足职责、业务和权限要求,权限开通需走审批流程

计算域

通用指标作业优化

任务调度合理优化

1:任务优先级划分和梳理,优先保障高优先级别的产出、做好双链路切换

2:任务错峰调度

3:烟囱任务下沉&无用任务下线

4:数据倾斜任务经优化后仍无法解决,拆分任务,分批调度

5:尽量减少任务依赖。(天任务依赖小时任务,小时级别依赖分钟级别等)

 6:任务自动分级和降级

集群资源治理

1:建立可观测性监控系统,对于重点任务,优先级较高的任务,排队中/处理中任务的状态进行监控,占用集群资源多少等... 全链路压测

2:集群任务/进程占用资源topN

3:冷表下线10W+张,累计下降存储2.8PB,净下降1.9PB(8.49-6.59)

4:资源费用 12k/day->2k/day

5:内存memory seconds 下降33% 6:高耗资源任务运行时间 下降90%

7:高耗资源任务成本消耗 下降69%

高消耗任务调优

1:关联表过多,需拆分

2:关联时一对多,数据膨胀 资源配置过多,运行时资源严重浪费,需要将配置调小(包括Driver内存、Executor个数、Executor内存)

3:代码结尾添加Distribute By Rand(),用来控制Map输出结果的分发 查询中列和行未裁剪、分区未限定、Where条件未限定

 4:SQL中Distinct切换为Group by(Distinct会被hive翻译成一个全局唯一Reduce任务来做去重操作,Group by则会被hive翻译成分组聚合运算,会有多个Reduce任务并行处理,每个Reduce对收到的一部分数据组,进行每组聚合(去重))

5:关联后计算切换为子查询计算好后再关联

6:使用Map Join(Map Join会把小表全部读入内存中,在Map阶段直接拿另外一个表的数据和内存中表数据做匹配,由于在Map是进行了Join操作,省去了Reduce运行的效率也会高很多)可用参数代替

7:减少shuffle,算子、数据集复用

8:合理使用分区、分桶、广播变量等

任务资源分配优化

提高任务并行度、分区数 spark、hive资源合理分配 shuffle参数优化

计算引擎选择和切换

任务切换至Spark3计算引擎&任务调优参数

  1. 开启动态资源分配 dynamicAllocation
  2. cpu/内存配比建议同集群总资源配比,最大化利用集群资源
  3. 开启broadcastjoin,有数大数据平台环境默认关闭(内存限制),spark官方建议开启,可极大提高join小表性能
  4. 调节parallelism和repartition参数,提高并行度
  5. 开启convertMetastoreParquet,充分利用spark读parquet性能
  6. lateral view explode优化,多次explode前,手动触发shuffle操作,减少单分区处理数据量大小
  7. 控制输出文件大小,减少小文件数,减轻nn压力
  8. 充分利用spark3 AQE优化

集群稳定性治理

1:起夜率

2:任务压测、削谷填峰

 3:高可用HA

4:支持动态扩容和数据处理流程自动漂移

5:做好相关监控、建立起监控预警机制 6:弹性反脆弱

7:自动化运维

8:上游元数据变更抗性

z-order

Z-Order 是一种可以将多维数据压缩到一维的技术,在时空索引以及图像方面使用较广,比如我们常用order by a,b,c 会面临索引覆盖的问题,Z-Order by a,b,c 效果对每个字段是对等的

yarn相关优化

1:通过Node label完成资源隔离

2:通过cgroup完成cpu进程的绑定,使其得到充分的利用。

olap计算成本优化

1: 选择向量化查询引擎相关MPP数据库 2:bitmap优化

3:cbo优化器

4:query cache

5:  异步物化视图

6:索引+动态分区、分桶

7:Sorted streaming aggregate

8:join优化

 9:参数调优

10: tablet治理

存储域

日志格式规范管理

  • 标准:日志打印遵守统一标准格式,保证下游可正常解析,异常日志的存储或特化解析会带来存储空间的浪费、人力维护跟进的投入开销与下游解析作业的性能开销;
  • 按需:仅打印下游业务所需的日志,非必要的日志可不打印或不采集到下游链路中;在满足业务分析的前提下,日志打印可遵守最小原则,最大限度减少下游日志传输量;
  • 精简:对于频繁在多条日志反复打印的字段,可仅在会话中的第一条日志打印完整信息,后续日志通过会话ID进行关联查询;可通过维表查询替换的字段,在日志打印时可进一步压缩字段的大小。

建立数据共享/数仓共享方案

数据表生命周期管理

梳理库表的使用情况,无用的库表走申请下线流程。

临时表治理

生命周期管理的推进

 巨型表的治理

abtest专项治理

表的访问占比

存储资源治理

未管理数据表:未设置生命周期的分区表进行识别,当同时满足以下条件,数据表是分区表,没有设置生命周期,且近30天没有访问时,就命中该治理项,并判定该表为未管理的数据表。治理小组也根据提供对应的处理操作建议,优先建议用户进行生命周期的快速设置。针对一些需要长期保留的数据,也可通过设置白名单或设置长生命周期的方式来处理。


无访问数据表:该治理项则是针对进行了初步管理,但是实际是无用数据进行识别。占用了大量存储但是无下游访问的数据表,通常情况下是僵尸数据或者冷数据,需要用户进行处理识别,进行合理生命周期设置,或者进行删除操作。


30天打开次数+近30天引用次数+近30天访问次数+近30天写入次数 = 0


近30天打开次数+近30天引用次数+近30天访问次数 = 0

数据分级与压缩存储

数据分级:

- 第一级:存储在常规Hadoop集群,保证读写性能;

- 第二级:存储在冷备Hadoop集群,可读写,但性能稍差;

- 第三级:存储在冷备S3集群,只读不可写,性能最差。


压缩存储

第一级:格式压缩,基于不同表,压缩为orc/textfile+snappy格式,压缩率在30~48%左右;

第二级:使用纠删码技术,从3副本减少到1.5副本,压缩率在50%左右。


spark与zstd算法的结合,来优化存储资源 Zstd压缩和解压能够达到更高的速度和更高的压缩比,但也可能占用更多的内存和CPU资源。

小文件合并

(1)使用Spark3引擎,自动合并小文件

(2)减少Reduce的数量(可以使用参数进行控制)

(3)用Distribute By Rand控制分区中数据量

(4)添加合并小文件参数

(5)将数据源抽取后的表做一个任务(本质也是回刷分区合并小文件任务)去处理小文件保障从数据源开始小文件不向下游流去

(6) 自定义合并小文件

应用域

热度

决定是否有用,影响查询用户的范围,热度越高表明影响的用户范围越广。

下游类型

决定下游资产重要程度,下游资产类型一般有ETL任务和数据产品两类,ETL任务及数据产品又根据重要度分为普通型及VIP型。

下游依赖数

下游依赖数量:决定是否是关键节点,对下游生产的影响范围,下游数量越多表明影响范围越大。

互动推荐值


应用贡献度


飞书链接:https://j1d30b4chu.feishu.cn/docx/WzNPdhC3GoPe9bxBkGJcEgd2nRc   密码:qfJI
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
数据采集 XML 数据挖掘
CDGA|数据治理新视角:清洗数据,让数据质量飞跃提升
在数据治理中,标准化处理和确保数据的可溯源性是两个重要的方面。通过标准化处理,我们可以将复杂的数据转化为易于管理和分析的形式;通过确保数据的可溯源性,我们可以验证数据的准确性和可靠性。这两个方面共同构成了数据治理的基石,为数据分析和挖掘提供了有力的支持。因此,我们应该重视数据治理工作,不断完善和优化数据治理体系,以应对日益复杂的数据挑战。
|
7月前
|
数据采集 存储 安全
数据资产新规!《关于加强数据资产管理的指导意见》发布(附全文)
数据资产新规!《关于加强数据资产管理的指导意见》发布(附全文)
319 57
|
数据采集 人工智能 自然语言处理
基金公司数据治理实践,打造“点线面体”的数据治理体系
在数字经济时代下,数据驱动业务创新发展已经成为企业的主要选择,基金行业机构也在积极推进数字化转型,但机遇与挑战并存。数据要转化为数据要素,需要系统体系化的数据能力建设作为催化剂。 基金行业也表现出一定的痛点,其中表现为数据安全保护不够到位,缺少数据脉络,数据质量得不到保障等。同时由于行业内在进行系统建设时,对数据管理工作的重要性认识不足以及长年累月杂乱数据的堆积,导致数据治理工作推进艰难,致使在营销端、分析端、监管报送端长期存在客户重复,资产异常等情况。 在公司“十四五”数字化发展规划的指导下,基金公司坚持统筹推进、聚焦痛点,强化数据能力建设,在完善数据治理体系、搭建大数据技术、提升数据服务能
390 0
|
数据采集 存储 SQL
证券机构数据治理实践,实现数据的“管、 治、用”
许多证券机构在推进数据治理的过程中,仍然存在数据治理驱动力不足、缺少数据治理体系规划、数据认责体系不完善、数据质量难提升等诸多问题,数据治理亟须快速提升。为充分发挥数据的资产价值,通过梳理证券期货行业监管大数据治理的需求与特殊性,对证券期货行业的大数据治理体系搭建,包括构建证券期货行业数据模型、搭建公共数据平台、建设数据服务体系以及构建组织保障体系等方面。
255 0
数据治理不是一个人的表演
数据治理在组织中并不是独立的孤岛——它必须与企业治理保持一致,并受企业治理的驱动。
|
数据采集 存储 监控
谈谈医疗行业数据治理的四个关键阶段【后附医院数据治理案例】
数据是推动医疗行业的改进,驾驭不断变化的医疗行业环境的必要资源。它使医疗行业组织能够评估医疗的提供和支持方式、患者参与和教育的方式,以及支付者和提供者如何共同努力提高价值。
谈谈医疗行业数据治理的四个关键阶段【后附医院数据治理案例】
|
存储 数据采集 传感器
关于数据治理需要知道的六件事
许多组织希望在整个企业中共享数据集,但如何迈出第一步可能很困难。这些挑战包括从纯技术问题(如数据格式和API)到组织文化(管理者拒绝共享他们认为自己拥有的数据)。
关于数据治理需要知道的六件事
|
存储 数据采集 人工智能
数据治理,你需要知道的六件事
什么样的技术可以被认为是最有前途和最有商业价值的呢,人工智能、物联网和大数据?
数据治理,你需要知道的六件事
|
存储 传感器 SQL
谈谈数据资产理念下构数据湖的喜与忧
最近,数据湖成为大家关注的数据资产存储新架构,那么数据在现实中都有哪些应用场景呢,下面举几个典型的应用案例。
谈谈数据资产理念下构数据湖的喜与忧
|
运维 分布式计算 DataWorks
阿里大淘系模型治理阶段性分享
阿里大淘系数据体系经过多年发展,通过丰富的数据和产品支撑了复杂的业务场景,在数据领域取得了非常大的领先优势。随着数据规模越来越大,开发人员越来越多,虽有阿里大数据体系规范进行统一管理,但是由于没有在产品侧进行有效的模型设计和管控,在模型规范性、应用层效率、通用层复用性等方面的问题逐渐凸显。计存成本提升、效率降低、规范减弱、数据使用难度变大、运维负担增加等。为了解决这些问题,我们进行了大淘系模型治理专项,在数据服务业务的同时,追求极致的降本提效目标。
2111 2
阿里大淘系模型治理阶段性分享