当前位置: 首页 > news >正文

数据治理实战——翼支付金融板块业务数仓建设和数据治理之路

目录

一、数据治理背景

二、数据治理建设内容

2.1 组织协同

2.2 平台建设

2.3 数据应用治理

2.4 数据规范

2.5 数据安全

三、企业级数仓建设

3.1 调研阶段

2.2 平台护航

2.3 数仓分层

2.4 维度建模

2.4.1 维度建模四步曲

2.4.2 命名规范

2.4.3 资产沉淀

2.4.4 任务保障

2.5 数据监控

四、数据治理成效

4.1 成本&时效

4.2 元数据

4.3 数据安全

4.4 指标管理

五、未来规划


  原文大佬的这篇数据治理及数仓建设案例有借鉴意义,这里摘抄下来用作学习和知识沉淀。

一、数据治理背景

   在数据仓库建设初期,翼支付主要面对以下几方面的问题:

(1)代码冗余,任务失效不稳定

    祖传代码问题严重,任务链路长,存在大量烟囱式开发。另外由于没有统筹管理,资源任意抢占,使得任务时效得不到保障。

(2)元数据信息严重缺失

   缺少元数据信息,没有明确的建表责任人,字段缺少中文备注,分区字段随意,一系列问题导致库表清理及新人上手难度大。

(3)数据安全风险高

   敏感数据未加密,数据下载入口多,大量明细数据通过Tableau (BI工具)进行处理,无下载记录,数据安全风险非常高。

(4)数据口径差异明显

   在一些整合数据口径下,由于各自整合口径来源不同,后续指标口径不一致。

这些问题突显出在整个数据仓库建设和优化过程中,需要在数据治理体系、技术架构、安全策略和运营管理等多方面进行明确规划和持续优化。

二、数据治理建设内容

 在翼支付进行数据治理时,我们首先确定了数据治理的主要内容。关键点包括:

2.1 组织协同

   确保不同部门间的配合与共同目标;建立数据治理委员会、技术架构委员会和治理实施小组,分别负责推动治理进程和解决分歧、审核信息架构以及具体实施任务。数据治理委员会需要统筹管理,并推动治理工作,各部门紧密协作,形成统一、顺畅、敏捷的组织协同链路。

2.2 平台建设

  从0到1打造数据开发平台,支撑2万+离线/实时调度及各类数据质量监控规则,打造自助 BI 平台,支持即席查询与可视化开发,构建数据资产平台,并加强元数据管理,以确保数据的整洁性和安全性。整体上形成统一的数字化和数据平台架构。

2.3 数据应用治理

  强调数据治理在应用层的实施,提高易用性,减少计算和存储成本,加快查询速度,提高数据质量,构建敏捷的商业分析模式和数据洞察能力。

2.4 数据规范

   通过规范业务生产系统数据,保障源数据的质量,构建各个方面的标准和规范,如数仓建设规范,数据分类规范,主数据和元数据管理等。

2.5 数据安全

   在数据的存储、传输和使用三个方面加强数据安全性,使企业数据符合国家数据安全合规要求。

三、企业级数仓建设

3.1 调研阶段

  翼支付数据治理早期的调研工作,可归纳为四个重点领域。

(1)首先,识别业务痛点,例如:数据获取困难、数据口径不统一、数据延迟以及数据权限审批长等。

(2)第二,进行组织架构调研,明确不同部门如市场、技术、运营的数据需求与使用模式,以确定主要需求来源及其应用偏好。这有助于指导数据治理工作的方向,优先稳固主体业务需求。

(3)第三,产品及业务流程调研,明确各个部门业务流程和产品特点,是基础建模和数据架构设计的前提。

(4)最后,技术架构调研,旨在解析产品在生产库中的 ER 关系图与库表信息。这一步可以借助元数据管理平台来完成,以便梳理出准确的技术生态图。

  通过这四步详尽的调研工作,翼支付为数据治理打下了扎实的基础,从而得以规划和推进后续的治理进程。

2.2 平台护航

    在进行数据治理时,关键环节之一是建立并优化技术平台,以支撑数据治理架构。

(1)首先,数据开发平台,提供了至关重要的调度、监控以及运维等功能。并升级了计算引擎,从 Hive 过渡到 Spark,以提升性能和可靠性。

(2)第二,自助BI平台,包括两部分,一是即席查询平台,提供数据探查和管理数据下载等功能,致力于提升数据查询效率和加强数据安全管理,在数据产出的各个环节实施了紧密的安全控制。例如数据下载需通过审批流程,分为自动审批和领导审批,不同等级的数据对应不同的审批等级。另一部分是自研报表平台,提供可视化界面,推动国产化进程。

(3)第三,元数据管理平台,对于规范和整合基础的元数据信息至关重要,包括建表、数据地图、血缘分析以及数据的安全分类和生命周期管理。

(4)第四,指标管理平台,处理指标业务口径和技术口径,存放于特定的数据表,并提供基础信息,以实现标签和其他数据资产的有效管理。

    在完成调研和技术平台的搭建后,下一步是数仓的具体建设工作。数仓建设前必须确立清晰的规范,避免烟囱式开发,确保数据治理的统一性和效率。这一系列构建和完善的平台为数据治理的细致工作打下了坚实的基础。

2.3 数仓分层

     数据仓库建设遵循互联网公司常见的分层架构,主要包括操作数据存储(ODS)层、明细数据(DWD)层、汇总数据(DWS)层、公共数据集市(DWM)层、个性数据集市(DM)层和应用(APP)层。

   在ODS 层,数据从业务库同步,基本保持和业务库数据一致。DWD数据明细层进一步处理明细数据,进行敏感数据加密、数据质量处理以及命名规范化,并关联常用的维度和维度退化。DIM 层专注于存储维度数据。DWS 层则包含明细宽表和汇总数据,明细宽表一般为在不改变原有粒度的多数据域中拉宽的明细数据,汇总数据则是基于统一统计粒度,同一统计周期的指标计算,生成供多种应用场景使用的公共汇总数据。DM 层与 DWS 内容基本差不多,区别在于一些个性化指标加工不具有复用性,DM 层指标可以根据DWS的指标集进行不同需要的整合。

     所有的数据输出都必须通过 APP 层以确保数据的一致性,且 APP 层不做复杂指标的计算,只做简单的指标拉宽、union 及简单的计算,通过这种方法,翼支付确保了数据架构的整洁性和可维护性。

    在完成产品调研、业务流程和技术库表的梳理后,现在翼支付专注于制定规范并进行数据建模,这是数据仓库建设的下一个重要步骤。

2.4 维度建模

2.4.1 维度建模四步曲

     维度建模的核心步骤包括:①选择业务过程,例如选择金融产品中授信、放款、还款等用户需要经历的业务相关的过程,并通过总线矩阵划分到相应的数据域②声明粒度,指找出需要建模表的业务主键(一般自增主键 ID 是无意义的,除非具备业务含义可以关联),描述数据的详细程度。③确认维度,确立分析中需要包含的各个维度,如省份、城市和渠道等;④确认事实,确定核心的业务度量,例如授信金额、放款金额及还款金额。

   维度建模为分析场景提供了重要的维度支持,并通过设置清晰的模型密度,避免了因为不合适的聚合层级导致模型复杂化和数据准确性下降。

2.4.2 命名规范

    作为数据仓库建设中的一部分,建立规范是至关重要的。重要的规范包括命名规范,涵盖表命名、字段命名和代码命名

    表命名应反映数据的层级(如 DWD、DWS)、数据域(数据抽象化)、产品线、业务过程以及刷新/增全量标识,如:dws_trade_lxp_loan_order_detail_df。产品线通过公司市场的产品规划采用缩写进行区分。除此之外,还有自定义缩写、数据刷新标识和增量标识的规范。字段命名则遵循词根组规范,例如,“人数”使用“num”,“次数”使用“cnt”,避免混淆。此外,派生指标的命名应注意不要与原子指标混淆,如:授信人数(原子指标) crdt_num,近一天成功授信人数(派生指标) succe_crdt_num_1d,不可以在已命名好的原子指标中间穿插修饰词(crdt_succe_num)。

    总体上,这些命名规范确保了数据元素在整个数据仓库中的一致性和可理解性,对后续的数据处理和分析至关重要。

2.4.3 资产沉淀

    在数据仓库建设中,资产沉淀是确保信息完整性和便于管理的关键步骤。数仓建设时需规范的记录表的基础信息(如库名、表名、责任人)、描述、表的生命周期,并设立分区保留策略,以确定分区的保留期限。此外,为促进数据的查找与分类,需构建数据地图,标签化各个表,明确其属于明细层、汇总层,还是其他层及产品线。同时,在表的建立阶段,要对表的分类和字段级别进行规范。总之,建表时需妥善规划并完成资产的沉淀,避免为求速度而忽略长期要求,保障数据仓库的可持续管理和利用。

2.4.4 任务保障

    在数据仓库的操作流程中,数据开发任务的上线是关键环节。首先,完成表的构建和代码编写后,通过开发平台的测试与审核,数据任务就可部署至生产环境。接着,与代码和表关联的指标也会被开发,并在指标管理平台注册。

    通过数据基线SLA 保证任务在离线高峰期能有足够的并发度及计算资源按时完成任务的数据质量也需监测包括数据的唯一性、枚举的有效性以及数值检查从而避免不合理的数据波动。最后,要进行任务调度的监控,确保任务稳定执行且在预定时间内完成,以保证数据的及时产出。

   整个流程从数仓模型构建到数据产出,其中包括规范、编码、任务上线、指标制定和任务监控等方面。

2.5 数据监控

    作为数据监控的关键,数据质量的监控包括完整性、一致性、及时性等维度;监控不仅限于事前,更重要的是事后全方位的审视,例如管理成千上万的任务,以及计算成本和存储成本。在数据存储过程中,监控数据存储以便优化成本,通过审查数据的生命周期来决策数据清理策略。同时,安全监控检查敏感数据是否加密以及防止数据泄露,确保数据下载的安全审计。数据监控旨在保持数据治理的完善性,这是一个长期的过程,而不是一次性的事件。

四、数据治理成效

     数据治理实施的成效主要体现在成本削减和时效提升两方面。当前端到端的全链路数据治理模式涵盖了从ODS 层到数据可视化的整个数据流程

4.1 成本&时效

     在 2023 年,全公司前台事业部的所有任务已经完成了重构和迁移,这不仅减少了平台高达 86% 的资源消耗,同时也显著降低了计算成本,年均节约成本近千万,平均时效提升4.72h。

4.2 元数据

    保障了完整的元数据信息、血缘关系、表生命周期、冷热数据标识。元数据信息的完整性对后续监控和二次治理也至关重要,它大幅降低了人力和物理资源的投资。 

4.3 数据安全

    敏感数据已经完成分类分级,并通过加密以及下载审批且留存记录等措施,实现了数据安全,目前L3及以上数据已经100%加密。

4.4 指标管理

    指标管理平台从0-1建设,通过原子指标、统计粒度、业务限定、统计周期四要素来定义管理指标。 后续计划中,指标管理将与调度平台整合,实现资源消耗的优化和指标加工的简化,使数据资产得到更有效地管理和运用。

五、未来规划

未来数据仓库的规划聚焦于以下几个核心领域。

(1)是建设数仓驾驶舱,整合零散的监控体系,建立一个统一的、全面的监控平台。该平台允许管理者每日通过邮件向相关群组发出需要优化和整改的任务。

(2)是推进资产管理系统的建设,将目前整个数据平台健康情况通过大屏的方式展示出来,具体包含:调度平台任务情况、存储情况、资源消耗情况、小文件情况、数据安全情况、各类服务接口情况等。

(3)是优化指标管理,通过原子指标、统计粒度、业务限定、统计周期四要素生成数据,减少指标重复加工。

(4)最后,拓展数据赋能,通过数据服务如标签管理平台、FTP 下发和数据接口等增加数据的应用价值,从而在多种应用场景中实现数据的有效利用,使数据能够产生更大的商业价值。

参考文章:

金融行业在数仓建设与数据治理的最佳实践

相关文章:

数据治理实战——翼支付金融板块业务数仓建设和数据治理之路

目录 一、数据治理背景 二、数据治理建设内容 2.1 组织协同 2.2 平台建设 2.3 数据应用治理 2.4 数据规范 2.5 数据安全 三、企业级数仓建设 3.1 调研阶段 2.2 平台护航 2.3 数仓分层 2.4 维度建模 2.4.1 维度建模四步曲 2.4.2 命名规范 2.4.3 资产沉淀 2.4.4 …...

[Buuctf] [MRCTF2020]Transform

1.查壳 64位exe文件,没有壳 2.用64位IDA打开 找到主函数,F5查看伪代码 从后往前看,有一个判断语句,是两个数组进行比较的,我们双击byte_40F0E0查看里面的内容 所以能够推出byte_414040的内容,byte_4140…...

【C++】C++模板基础知识篇

个人主页 : zxctscl 文章封面来自:艺术家–贤海林 如有转载请先通知 文章目录 1. 泛型编程2. 函数模板2.1 函数模板概念2.2 函数模板格式2.3 函数模板的原理2.4 函数模板的实例化2.5 模板参数的匹配原则 3. 类模板3.1 类模板的定义格式3.2 类模板的实例化…...

golang 注释插件

Goanno插件 自动生成golang注释,该插件为 Intellij/Goland 中的 golang 提供自动生成注释 如何使用? control command / (for windows: control alt /)(生成注释)Right click -> Generate -> Goanno(生成注释&#x…...

Unity插件之天气系统UniStorm

首先呢,它是一款强大的动态昼夜天气系统,能够以较快的帧速率创建AAA级动态生成的天气、照明和天空,并且具有300多个可定制的组件,允许用户创建任何可以想象的环境。 第一步:他需要两个物体Camera摄像机、Player播放器…...

Java使用xlsx-streamer和EasyExcel解决读取超大excel文件数据处理方法

前言 最近有个项目在生产环境做数据导入时,发现开始执行导入任务会出现cpu狂飙的情况。几番定位查找发现是在读取excel的时候导致此问题的发生,因此在通常使用的为POI的普通读取,在遇到大数据量excel,50MB大小或数五十万行的级别的…...

智能驾驶规划控制理论学习04-基于车辆运动学的规划方法

目录 一、线性二自由度汽车模型(自行车模型) 1、二自由度模型概述 2、不同参考点下的状态空间方程 3、前向仿真 二、运动基元生成方法 1、杜宾斯曲线(Dubins Curve) 2、Reeds Shepp Curve 三、多项式曲线(Poly…...

一键查看:大厂网站都用了啥技术栈,有图有真相。

本次我们采用Wappalyzer插件来看下国内大厂的网站都采用了什么技术架构,文章最后由Wappalyzer的安装方法。 今日头条网站 淘宝网站 哔哩哔哩 京东商城 花瓣网 CSDN 国务院 网易 58同城 腾讯网 如何安装Wappalyzer 用Edge浏览器即可...

C语言-指针(下)

文章目录 前言    文章目录 前言 一、指针运算 1.指针-整数 2.指针-指针 3.指针关系运算 二、野指针 1.概念 2.野指针的成因 1.未初始化 2.指针越界访问 3.指针指向的空间释放 3.避免野指针 1.指针初始化 2.小心指针越界 3. 指针变量不再使用时,及时置NULL 总结 …...

尚硅谷JavaScript高级学习笔记

01 准备 JavaScript中函数是对象。我们后续描述构造函数的内存模型时,会将构造函数称为构造函数对象。 02 数据类型 typeof 运算符来查看值的类型,它返回的是类型的字符串值 会做数据转换 03 相关问题 04数据_变量_内存 05相关问题1 06相关问题2 …...

六、长短时记忆网络语言模型(LSTM)

为了解决深度神经网络中的梯度消失问题,提出了一种特殊的RNN模型——长短期记忆网络(Long Short-Term Memory networks, LSTM),能够有效的传递和表达长时间序列中的信息并且不会导致长时间前的有用信息被忽略。 长短时记忆网络原理…...

Filter过滤器+JWT令牌实现登陆验证

一、背景 我们需要在客户端访问服务器的时候给定用户一定的操作权限,比如没有登陆时就不能进行其他操作。如果他需要进行其他操作,而在这之前他没有登陆过,服务端则需要将该请求拦截下来,这就需要用到过滤器,过滤器可以…...

SQL学习十八~十九

...

2024 AI 辅助研发的新纪年

随着人工智能技术的持续发展与突破,2024年AI辅助研发正成为科技界和工业界瞩目的焦点。从医药研发到汽车设计,从软件开发到材料科学,AI正逐渐渗透到研发的各个环节,变革着传统的研发模式。在这一背景下,AI辅助研发不仅…...

【牛客】HJ87 密码强度等级 CM62 井字棋

题目一:密码强度等级 题目链接:密码强度等级_牛客题霸_牛客网 (nowcoder.com) 本题主要考察C语言中逻辑分支语句,基本语句以及对各种特殊字符 ,ASCII值以及条件表达中的逻辑运算符关系运算符各自功能的理解,以及基本使用&#x…...

【论文速读】 | DeGPT:通过大语言模型优化反编译器输出

本次分享论文为:DeGPT: Optimizing Decompiler Output with LLM 基本信息 原文作者:Peiwei Hu, Ruigang Liang, Kai Chen 作者单位:中国科学院信息工程研究所;中国科学院大学网络空间安全学院 关键词:反向工程&…...

【DP】蓝桥杯第十三届-费用报销

#include<iostream> #include<algorithm> #include<cstring> #include<set> #include<queue> using namespace std; const int N1010; int dp[N][5010];//dp[i][j]:选到第i个物品是否能取到价值j&#xff1b; int month[13]{0,31,28,31,30,31,30…...

15. C++泛型与符号重载

【泛型编程】 若多组类型不同的数据需要使用相同的代码处理&#xff0c;在C语言中需要编写多组代码分别处理&#xff0c;这样做显然太过繁琐&#xff0c;C增加了虚拟类型&#xff0c;使用虚拟类型可以实现一组代码处理多种类型的数据。 虚拟类型是暂时不确定的数据类型&#…...

老司机都懂的!【打赏】完美运营的最新视频打赏系统

完美运营的最新视频打赏系统优于市面上95%的打赏系统&#xff0c;与其他打赏系统相比&#xff0c;功能更加强大&#xff0c;完美运营且无bug。支付会调、短链接生成、代理后台、价格设置和试看功能等均没有问题。 以上为原简介&#xff0c;经测试验证。成功搭建并可以正常进入…...

JavaWeb笔记 --- 二、Maven

二、Maven Maven概述 所有的IDE创建的Maven项目都可以使用 Maven简介 Maven模型 Maven常用命令 Maven生命周期 Maven坐标 依赖管理 dpendencies&#xff1a;依赖 依赖范围...

【C++】C++11---右值引用和移动语义

目录 1、什么是左值引用和右值引用2、左值引用与右值引用比较3、右值引用使用场景和意义4、右值引用引用左值的分析5、完美转发 1、什么是左值引用和右值引用 传统的C语法中就有引用的语法&#xff0c;而C11中新增了的右值引用语法特性&#xff0c;所以从现在开始我们之前学习…...

消息队列-kafka-消息发送流程(源码跟踪) 与消息可靠性

官方网址 源码&#xff1a;https://kafka.apache.org/downloads 快速开始&#xff1a;https://kafka.apache.org/documentation/#gettingStarted springcloud整合 发送消息流程 主线程&#xff1a;主线程只负责组织消息&#xff0c;如果是同步发送会阻塞&#xff0c;如果是异…...

机器学习笔记 计算机视觉中的测距任务常见技术路线

一、计算机视觉中的测距任务 测距是计算机视觉中的一项关键任务,涉及测量物体和相机之间的距离。这些信息可用于多种应用,包括机器人、自动驾驶汽车和增强现实。测距技术有很多种,包括主动式和被动式,每种技术都有自己的优点和局限性。主动测距技术,例如飞行时间、结构光和…...

云计算 3月8号 (wordpress的搭建)

项目wordpress 实验目的&#xff1a; 熟悉yum和编译安装操作 锻炼关联性思维&#xff0c;便于以后做项目 nginx 编译安装 1、安装源码包 [rootlinux-server ~]# yum -y install gcc make zlib-devel pcre pcre-devel openssl-devel [rootlinux-server ~]# wget http://nginx.…...

【CSS】(浮动定位)易忘知识点汇总

浮动特性 加了浮动之后的元素,会具有很多特性,需要我们掌握的. 1、浮动元素会脱离标准流(脱标&#xff1a;浮动的盒子不再保留原先的位置) 2、浮动的元素会一行内显示并且元素顶部对齐 注意&#xff1a; 浮动的元素是互相贴靠在一起的&#xff08;不会有缝隙&#xff09;&…...

Vitual Box虚拟机打开后,键盘鼠标失效

Vitual Box虚拟机打开后&#xff0c;键盘鼠标失效 作者在使用Vitual Box虚拟机软件时&#xff0c;偶然发现打开VitualBox后&#xff0c;鼠标和键盘均无法使用。 你以为是“主机热键”引起的&#xff1f;NO&#xff01; 废话少说 直接上干货&#xff1a; 在VitualBox设置下有…...

宠物空气净化器值得入手吗?选购宠物空气净化器关注哪些方面?

一开始养猫时&#xff0c;每天看着可爱的猫咪在家里快乐奔跑&#xff0c;让人心情愉悦。然而&#xff0c;作为铲屎官都知道&#xff0c;猫咪会掉毛&#xff0c;特别是在换毛期间&#xff0c;地板、沙发上都会有一大堆猫毛&#xff0c;甚至衣服也可能沾满猫毛。养猫家庭中&#…...

前端发起请求,后端模型需处理很久,怎样设置前端直接完成请求响应,后端计算完在返回结果给前端?

在这种情况下&#xff0c;可以采用异步处理的方式来解决。具体步骤如下&#xff1a; 前端发起请求&#xff1a;前端向后端发送请求&#xff0c;但是不等待后端处理完成而是立即得到响应。 后端异步处理&#xff1a;后端接收到请求后&#xff0c;不立即进行处理&#xff0c;而是…...

DDD领域驱动设计

一、什么是领域驱动设计DDD 领域驱动设计&#xff08;Domain-Driven Design&#xff0c;DDD&#xff09;是一种软件开发方法论&#xff0c;它提出了一组关于如何设计和构建软件系统的原则和方法。 二、DDD的诞生是为了解决哪些问题 对复杂业务领域的理解不足&#xff1a;传统…...

网络编程第1天

OSI的七层网络模型有哪些&#xff0c;每一层有什么作用&#xff1f; &#xff08;1&#xff09;应用层 负责处理不同应用程序之间的通信&#xff0c;需要满足提供的协议&#xff0c;确保数据发送方和接收方的正确 应用层提供的协议&#xff1a; HTTP&#xff1a;超文本传输…...