CN116467376A - 梳理数据仓库依赖关系的方法、装置、设备和存储介质 - Google Patents

梳理数据仓库依赖关系的方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN116467376A
CN116467376A CN202310442203.5A CN202310442203A CN116467376A CN 116467376 A CN116467376 A CN 116467376A CN 202310442203 A CN202310442203 A CN 202310442203A CN 116467376 A CN116467376 A CN 116467376A
Authority
CN
China
Prior art keywords
data table
layer
data
document
dependency relationship
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310442203.5A
Other languages
English (en)
Inventor
金悦
刘冰琳
陈倩文
汪兰叶
齐佳敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bank of China Ltd
Original Assignee
Bank of China Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN202310442203.5A priority Critical patent/CN116467376A/zh
Publication of CN116467376A publication Critical patent/CN116467376A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种梳理数据仓库依赖关系的方法、装置、设备和存储介质,可应用于大数据领域或金融领域,数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层,方法包括,获取数据仓库系统的数据源映射文档;解析数据源映射文档,并根据数据源映射文档梳理数据仓库系统中除技术缓冲层以外每层的数据表依赖关系,获得记录数据表依赖关系的工作流配置文档;在数据表依赖关系的基础上,解析各个数据表的字段来源,获得记录字段依赖关系的血缘关系文档。本方案通过解析数据仓库系统的数据源映射文档自动梳理得到数据表依赖关系和字段依赖关系,提高了维护数据仓库系统的效率。

Description

梳理数据仓库依赖关系的方法、装置、设备和存储介质
技术领域
本发明涉及数据仓库技术领域,特别涉及一种梳理数据仓库依赖关系的方法、装置、设备和存储介质。
背景技术
数据仓库系统是大数据使用和管理中常用的一种系统,利用数据仓库系统可以将海量的大数据整理成多种形式的数据表,以供外部的应用程序调取使用。
在数据仓库系统的日常维护中,数据仓库内的依赖关系(具体包括数据表依赖关系和字段依赖关系)起到关键作用。然而现有的技术方案中,数据仓库系统的依赖关系往往依赖人工梳理得到,因此显著影响了数据仓库系统日常维护的效率。
发明内容
针对上述现有技术的缺点,本发明提供一种梳理数据仓库依赖关系的方法、装置、设备和存储介质,以提供一种自动梳理依赖关系的方案。
本申请第一方面提供一种梳理数据仓库依赖关系的方法,包括:
获取数据仓库系统的数据源映射文档;其中,所述数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层;
解析所述数据源映射文档,并根据所述数据源映射文档梳理所述数据仓库系统中除所述技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档;其中,所述工作流配置文档用于记录所述数据表依赖关系;
在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档;其中,所述血缘关系文档用于记录所述数据仓库中除所述技术缓冲层以外每层的字段依赖关系。
可选的,所述解析所述数据源映射文档,并根据所述数据源映射文档梳理所述数据仓库系统中除所述技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档,包括:
解析所述数据源映射文档,获得所述应用接口层、所述应用计算层和所述共性加工层中每一层的数据表的表间关联信息;
根据所述表间关联信息梳理得到所述应用接口层、所述应用计算层和所述共性加工层中每一层的数据表的数据表依赖关系;
解析所述数据源映射文档,获得所述整合模型层中每一数据表对应的源表名称;
根据所述整合模型层中每一数据表对应的源表名称梳理得到所述整合模型层中每一数据表的数据表依赖关系;
整合每一数据表的数据表依赖关系,生成工作流配置文档。
可选的,所述在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档,包括:
针对所述应用接口层、所述应用计算层、所述共性加工层和所述整合模型层中每一数据表,比对所述数据表的字段的内容和所述数据表对应的前置数据表的字段的内容,从而确定所述数据表的字段来源;
整合每一数据表的字段来源,生成血缘关系文档。
可选的,所述在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档之后,还包括:
当需要更新版本时,将新版本的工作流配置文档和血缘关系文档,以及旧版本的工作流配置文档和血缘关系文档进行比对,确定所述新版本和所述旧版本的数据表差异和字段差异;
根据所述数据表差异和字段差异生成用于更新数据表和字段的数据库脚本,所述数据库脚本用于在部署所述新版本时被执行。
本申请提供一种梳理数据仓库依赖关系的装置,包括:
获取单元,用于获取数据仓库系统的数据源映射文档;其中,所述数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层;
梳理单元,用于解析所述数据源映射文档,并根据所述数据源映射文档梳理所述数据仓库系统中除所述技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档;其中,所述工作流配置文档用于记录所述数据表依赖关系;
解析单元,用于在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档;其中,所述血缘关系文档用于记录所述数据仓库中除所述技术缓冲层以外每层的字段依赖关系。
可选的,所述梳理单元解析所述数据源映射文档,并根据所述数据源映射文档梳理所述数据仓库系统中除所述技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档时,具体用于:
解析所述数据源映射文档,获得所述应用接口层、所述应用计算层和所述共性加工层中每一层的数据表的表间关联信息;
根据所述表间关联信息梳理得到所述应用接口层、所述应用计算层和所述共性加工层中每一层的数据表的数据表依赖关系;
解析所述数据源映射文档,获得所述整合模型层中每一数据表对应的源表名称;
根据所述整合模型层中每一数据表对应的源表名称梳理得到所述整合模型层中每一数据表的数据表依赖关系;
整合每一数据表的数据表依赖关系,生成工作流配置文档。
可选的,所述解析单元在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档时,具体用于:
针对所述应用接口层、所述应用计算层、所述共性加工层和所述整合模型层中每一数据表,比对所述数据表的字段的内容和所述数据表对应的前置数据表的字段的内容,从而确定所述数据表的字段来源;
整合每一数据表的字段来源,生成血缘关系文档。
可选的,所述装置还包括:
脚本单元,用于:
当需要更新版本时,将新版本的工作流配置文档和血缘关系文档,以及旧版本的工作流配置文档和血缘关系文档进行比对,确定所述新版本和所述旧版本的数据表差异和字段差异;
根据所述数据表差异和字段差异生成用于更新数据表和字段的数据库脚本,所述数据库脚本用于在部署所述新版本时被执行。
本申请第三方面提供一种电子设备,包括存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述计算机程序,所述计算机程序被执行时,具体用于实现本申请第一方面任意一项所提供的梳理数据仓库依赖关系的方法。
本申请第四方面提供一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,具体用于实现本申请第一方面任意一项所提供的梳理数据仓库依赖关系的方法。
本申请提供一种梳理数据仓库依赖关系的方法、装置、设备和存储介质,方法包括,获取数据仓库系统的数据源映射文档;其中,数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层;解析数据源映射文档,并根据数据源映射文档梳理数据仓库系统中除技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档;其中,工作流配置文档用于记录数据表依赖关系;在数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档;其中,血缘关系文档用于记录数据仓库中除技术缓冲层以外每层的字段依赖关系。本方案通过解析数据仓库系统的数据源映射文档自动梳理得到数据表依赖关系和字段依赖关系,提高了维护数据仓库系统的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种数据仓库系统的分层架构示意图;
图2为本申请实施例提供的一种梳理数据仓库依赖关系的方法的流程图;
图3为本申请实施例提供的一种数据源映射文档的示意图;
图4为本申请实施例提供的一种梳理数据仓库依赖关系的装置的结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
数据仓库系统,以下简称系统,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。
PDM,物理数据模型(Physical DataModel,PDM),是指提供系统初始设计所需要的基础元素,以及相关元素之间的关系。
SDM,数据源映射文档(Source Data Mapping,SDM),提供PDM文档数据项具体加工的来源及方式。
TMCEA层,一种数据仓库系统分层架构,数据仓库按此顺序分层建设,可以理解为依赖(血缘)关系从A(E)到C到M到T(源表),除T层外可以跨层依赖和同层依赖。
请参见图1,为TMCEA层的数据仓库系统的示意图。如图1所示,该系统包括应用接口层(A层),应用计算层(E层),共性加工层(C层),整合模型层(M层)和技术缓冲层(T层)。
A层用于为各个应用场景提供个性数据服务,如图1所示,A层可以提供包括固定报表,管理驾驶仓,大小屏和条线看板在内的多种应用服务。
E层用于各个业务数据通用派生计算,如图1所示,E层用于提供经营分析,财务管理,风险管理,运营管理和监管审计等方面的共性计算。
C层用于数据预处理和常用信息加工,如图1所示,C层用于提供客户、渠道、财务、风险、公共、存款业务、贷款业务、信用卡、投资理财、现金管理、票据业务、贸易融资、支付结算、担保承诺、代理业务、投行业务、资金投资和托管业务等多种业务的共性明细。
M层用于数据主体化和标准规范化,如图1所示,M层用于提供参与方、合约、产品、事件、资源项、业务方向、地域、分类和条件等多种主题数据。
T层用于源系统和外部数据采集入库,如图1所示,T层用于从业务系统、管理系统和外部数据等系统采集缓冲数据进入到数据仓库系统。
工作流配置,在调度平台中,数据仓库跑批时会根据工作流配置的先后顺序进行,一个任意层次模型工作流只有当它的前置工作流都完成跑批时,才会开始运行。
数据仓库模型建成后,由于源系统改造等原因存在一些字段需要下线进而有判断对数仓是否存在影响的情况,或者加工数据错误需要快速定位是否是由于取错来源字段的问题以及为了配置工作流需要梳理依赖等情形。手工梳理效率低,错误率高,成为了一个技术问题。
针对上述问题,本发明开发一种数据仓库血缘关系追溯及依赖梳理的系统,通过解析SDM文档梳理出从A(E)到C到M到T层依赖关系,生成血缘关系文档(字段级,便于查看和搜索)和工作流配置文档(表级,便于导入调度平台进行配置)并与上一批次工作流配置文档作比对从而生成TDSQL脚本。
TDSQL,是一款基于结构化查询语言(Structured Query Language,SQL)开发的企业级分布式数据库,TDSQL脚本则是按一定规范生成的该数据库可执行的脚本。由于TDSQL是基于SQL开发的,因此TDSQL脚本也可以认为是一种结构化查询语言脚本,即SQL脚本。
可以理解,本实施例可以应用于TDSQL数据库,也可以应用于其他基于SQL开发的数据库产品,本实施例对具体的应用场景不做限定。
本发明的技术方案具体包括如下模块。
输入模块:提供将各个层级SDM输入的接口。
解析模块:根据输入SDM进行解析,对于依赖梳理:CEA层关注表间关联信息中的表名、自定义代码的码值、src_tab条件字段的来源,M层关注目标表对应的源表;对于血缘关系:在表级基础上,解析各个字段来源。解析从A(E)到C到M直到T层即源表为止,生成血缘关系文档和工作流配置文档。其中,CEA层是A层,C层和E层的统称。
对比模块:导入上一批次工作流配置文档,与本次生成文档做对比,生成TDSQL文档,供版本部署使用。
输出模块:将解析模块和对比模块生成的文档导出,供使用者做进一步处理。
请参见图2,为本申请实施例提供的一种梳理数据仓库依赖关系的方法的流程图,该方法可以包括如下步骤。
S201,获取数据仓库系统的数据源映射文档。
其中,数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层。
数据源映射(Source DataMapping,SDM)文档可以在构建数据仓库系统时配置并存储在数据仓库系统中。
需要说明的,对于数据仓库系统中的A层,C层,E层中的每一数据表,都对应有一个SDM文档,即数据仓库系统有多份SDM文档。
在一些可选的实施例中,SDM文档可以是表格形式的文档。请参见图3,为本实施例中A层,C层和E层的数据表对应的SDM文档的示例图。
需要说明,在实际应用中SDM文档可以包括图3所示的字段以及其他图3未包括的字段,比如图3中“源表”项还可以包括源字段类型,映射规则,注释等字段,“表关联信息”项还可以包括ETL任务字段,ETL任务名和注释等字段。图3仅作为一种SDM文档的示例。
S202,解析数据源映射文档,并根据数据源映射文档梳理数据仓库系统中除技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档。
其中,工作流配置文档用于记录数据表依赖关系。
可选的,解析数据源映射文档,并根据数据源映射文档梳理数据仓库系统中除技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档,包括:
对于依赖梳理:CEA层关注表间关联信息中的表名、自定义代码的码值、src_tab条件字段的来源,M层关注目标表对应的源表。
A1,解析数据源映射文档,获得应用接口层、应用计算层和共性加工层中每一层的数据表的表间关联信息。
步骤A1中的解析SDM文档,具体可以是识别SDM文档中的每个字段以及每个字段的字段值。
表间关联信息可以包括源表英文名,SRC_TAB过滤条件字段和自定义代码等。
以图3为例,对于CEA层的任意一个数据表TABLE1,在步骤S201中可以获得如图3所示的SDM文档,然后通过解析该SDM文档,识别出其中的“表间关联信息”项的“源表英文名”字段,并进一步识别得到“源表英文名”字段的字段值,即“TABLE2”。
其中,CEA层是A层,C层和E层的统称。
A2,根据表间关联信息梳理得到应用接口层、应用计算层和共性加工层中每一层的数据表的数据表依赖关系。
数据表依赖关系,是指一个数据表依赖于另一个数据表,比如,如果数据表A的数据是对数据表B的数据进行过滤,筛选等处理而获得的,则数据表B的数据决定了数据表A的数据,当数据表B发生变化,数据表A也会发生对应的变化,因此可以认为数据表A依赖于数据表B。
结合图3的示例,在获得图3所示的TABLE1数据表的SDM文档后,通过步骤A1解析得到“源表英文名”字段的字段值为“TABLE2”。
由此可以确定,TABLE1数据表依赖于TABLE2数据表,该关系就是TABLE1数据表的一条数据表依赖关系。
进一步可选的,解析SDM文档还可以获得SRC_TAB过滤条件字段和自定义代码,在步骤A2中,还可以对SRC_TAB过滤条件字段和自定义代码进行分析,确定这两项字段值中是否引用了数据仓库系统的其他数据表,如果引用了其他数据表,则可以获得新的数据表依赖关系。
仍以图3为例,假设分析TABLE1数据表的SRC_TAB过滤条件字段和自定义代码发现,其中引用了TABLE3数据表的数据,比如将TABLE3数据表的数据作为比对的阈值,由此可见TABLE2数据表和TABLE3数据表的变化都会引起TABLE1数据表的变化,由此可以得到一条新的数据表依赖关系,即TABLE1数据表依赖于TABLE3数据表。
最终获得TABLE1数据表的两条数据表依赖关系为,TABLE1数据表依赖于TABLE2数据表,TABLE1数据表依赖于TABLE3数据表。
A3,解析数据源映射文档,获得整合模型层中每一数据表对应的源表名称。
整合模型层(M层)中的数据表的SDM文档和CEA层的SDM文档不同。M层的SDM文档也可以是表格形式的文档,其中可以包括目标表英文名,目标字段英文名,数据来源表编号,主源表库名,主源表英文名,主源表别名等字段。
在步骤A3中通过解析M层的SDM文档,可以获得多条目标表和源表的映射关系,也就是获得每一个目标表英文名对应的主源表英文名。
示例性的,M层的SDM文档的某一行中,目标表英文名为TABLE4,主源表英文名为TABLE5,则可以确定TABLE4对应的主源表英文名为TABLE5。
A4,根据整合模型层中每一数据表对应的源表名称梳理得到整合模型层中每一数据表的数据表依赖关系。
在步骤A4中,可以直接根据A3中解析得到对应关系确定M层的数据表依赖关系。
续接步骤A3的示例,解析得到TABLE4对应的主源表英文名为TABLE5之后,就可以确定TABLE4数据表的一条数据表依赖关系,即TABLE4数据表依赖于TABLE5数据表。
A5,整合每一数据表的数据表依赖关系,生成工作流配置文档。
工作流配置文档用于记录前述各步骤获得的多条数据表依赖关系。本实施例中,工作流配置文档也可以是表格形式的文档。
示例性的,步骤A5获得的工作流配置文档可以用下述表1表示。
表1
表1中的日期信息为跑批日期,可以理解为对应的数据表上线(即上传到数据仓库系统)的日期。其中的作业流名称,就是一条数据表依赖关系中前面的数据表名,前置名称则是数据表依赖关系中后面的数据表名。
比如前述示例中的数据表依赖关系,TABLE1数据表依赖于TABLE2数据表,在表1中就可以记录为,作业流名称:TABLE1,前置名称TABLE2。
可以理解的,最终生成的工作流配置文档中的每一条记录,就对应一条数据表依赖关系。
需要说明,一个数据表依赖的其他数据表,可以是和同一层的数据表,也可以是图1所示的层级架构中低一层的数据表,比如A层的数据表可以依赖于同为A层的其他数据表,也可以依赖于E层的数据表。
S203,在数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档。
其中,血缘关系文档用于记录数据仓库中除技术缓冲层以外每层的字段依赖关系。
可选的,在数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档,包括:
B1,针对应用接口层、应用计算层、共性加工层和整合模型层中每一数据表,比对数据表的字段的内容和数据表对应的前置数据表的字段的内容,从而确定数据表的字段来源。
数据表对应的前置数据表,是指该数据表依赖的数据表。
示例性的,根据S202中确定的数据表依赖关系,TABLE1数据表依赖于TABLE2数据表,可以确定,TABLE1数据表对应的前置数据表为TABLE2数据表。由此可见,步骤B1中在比对字段内容之前可以根据S202确定的数据表依赖关系确定各个数据表对应的前置数据表。
步骤B1的具体执行方式如下:
首先将数据表中字段的内容和对应的前置数据表中字段的内容比对,判断数据表中的字段的字段值是否和前置数据表中一个或多个字段的值相同,或者是否为前置数据表中一个或多个字段的字段值的一部分。
如果上述判断结果为是,则可以确定数据表中的字段来源于前置数据表的一个或多个字段。
示例性的,对于TABLE1的字段A,如果比对发现字段A的字段值,和前置数据表TABLE2中字段B和字段C的字段值的组合相同,或者属于该组合的一部分,则可以确定TABLE1的字段A来源于TABLE2的字段B和字段C。
然后,检测数据表中字段包含的计算公式是否引用前置数据表中的字段,如果有,则确定数据表的字段来源于前置数据表中被引用的字段。
示例性的,对于TABLE1的字段D,如果检测发现字段D的公式引用了前置数据表TABLE2的字段E,则可以确定TABLE1的字段D来源于TABLE2的字段E。
B2,整合每一数据表的字段来源,生成血缘关系文档。
血缘关系文档用于记录字段依赖关系。
血缘关系文档也可以是表格形式的文档,请参见表2,为一种血缘关系文档的结构示例。
表2
在其他可选的实施例中,表2所示的结构也可以适应性调整,比如将表名和字段名拆分为两个字段等,不做限定。
表2中每一行数据,就表示一条字段依赖关系。在步骤B2中,可以将B1中的字段以及该字段的来源字段记录在表2所示的血缘关系文档的同一行,例如,步骤B1中确定TABLE1的字段D来源于TABLE2的字段E,并且TABLE1和TABLE2分别属于A层和E层,于是将上述信息填写到表2中。比如在分析出TABLE2,字段E来源于C层的TABLE6,字段F后,将TABLE6,字段F添加到表2中“C层表名和字段名”字段下,依次类推。
需要说明的,后续对其他层的分析可以逐步添加到表2所示的血缘关系文档中,最终形成完整的血缘关系文档,从而确定A,E,C,M直至T层之间的字段依赖关系。
可选的,在数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档之后,还包括:
C1,当需要更新版本时,将新版本的工作流配置文档和血缘关系文档(以下统称为文档),以及旧版本的工作流配置文档和血缘关系文档进行比对,确定新版本和旧版本的数据表差异和字段差异;
C2,根据数据表差异和字段差异生成用于更新数据表和字段的数据库脚本,数据库脚本用于在部署新版本时被执行。
在步骤C1中,可以通过比对确定新版本的文档和旧版本的文档的差异,确定新版本的文档比旧版本的文档少了哪些内容,又多了哪些内容。
然后在步骤C2中,根据新版本的文档中多的内容编辑TDSQL中的插入(insert)语句,根据新版本的文档中少的内容编辑TDSQL中的删除(delete)语句,然后将这些语句组合形成数据库脚本。
在部署新版本时,通过执行数据库脚本,就可以在新版本的数据仓库系统中插入上述多的内容,并从旧版本的数据中删除上述少的内容。
上述脚本中的语句可以是TDSQL数据库基于SQL语句定义的一种数据查询语句,当将本实施例的方案应用在不同于TDSQL数据库的其他数据库时,上述脚本的语句可以替换成对应数据库定义的语句,本实施例对此不作限定。
最终形成的工作流配置文档,血缘关系文档和数据库脚本都可以输出给开发人员查看。
本申请提供一种梳理数据仓库依赖关系的方法,方法包括,获取数据仓库系统的数据源映射文档;其中,数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层;解析数据源映射文档,并根据数据源映射文档梳理数据仓库系统中除技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档;其中,工作流配置文档用于记录数据表依赖关系;在数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档;其中,血缘关系文档用于记录数据仓库中除技术缓冲层以外每层的字段依赖关系。本方案通过解析数据仓库系统的数据源映射文档自动梳理得到数据表依赖关系和字段依赖关系,提高了维护数据仓库系统的效率。
根据本申请实施例提供的梳理数据仓库依赖关系的方法,本申请实施例还提供一种梳理数据仓库依赖关系的装置,请参见图4,该装置可以包括如下单元。
获取单元401,用于获取数据仓库系统的数据源映射文档。
其中,数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层。
梳理单元402,用于解析数据源映射文档,并根据数据源映射文档梳理数据仓库系统中除技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档。
其中,工作流配置文档用于记录数据表依赖关系。
解析单元403,用于在数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档。
其中,血缘关系文档用于记录数据仓库中除技术缓冲层以外每层的字段依赖关系。
可选的,梳理单元402解析数据源映射文档,并根据数据源映射文档梳理数据仓库系统中除技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档时,具体用于:
解析数据源映射文档,获得应用接口层、应用计算层和共性加工层中每一层的数据表的表间关联信息;
根据表间关联信息梳理得到应用接口层、应用计算层和共性加工层中每一层的数据表的数据表依赖关系;
解析数据源映射文档,获得整合模型层中每一数据表对应的源表名称;
根据整合模型层中每一数据表对应的源表名称梳理得到整合模型层中每一数据表的数据表依赖关系;
整合每一数据表的数据表依赖关系,生成工作流配置文档。
可选的,解析单元403在数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档时,具体用于:
针对应用接口层、应用计算层、共性加工层和整合模型层中每一数据表,比对数据表的字段的内容和数据表对应的前置数据表的字段的内容,从而确定数据表的字段来源;
整合每一数据表的字段来源,生成血缘关系文档。
可选的,装置还包括:
脚本单元404,用于:
当需要更新版本时,将新版本的工作流配置文档和血缘关系文档,以及旧版本的工作流配置文档和血缘关系文档进行比对,确定新版本和旧版本的数据表差异和字段差异;
根据数据表差异和字段差异生成用于更新数据表和字段的数据库脚本,数据库脚本用于在部署新版本时被执行。
本申请提供一种梳理数据仓库依赖关系的装置,装置包括,获取单元401获取数据仓库系统的数据源映射文档;其中,数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层;梳理单元402解析数据源映射文档,并根据数据源映射文档梳理数据仓库系统中除技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档;其中,工作流配置文档用于记录数据表依赖关系;解析单元403在数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档;其中,血缘关系文档用于记录数据仓库中除技术缓冲层以外每层的字段依赖关系。本方案通过解析数据仓库系统的数据源映射文档自动梳理得到数据表依赖关系和字段依赖关系,提高了维护数据仓库系统的效率。
本申请实施例还提供一种电子设备,请参见图5,包括存储器501和处理器502。
其中,存储器501用于存储计算机程序。
处理器502用于执行计算机程序,计算机程序被执行时,具体用于实现本申请任一实施例所提供的梳理数据仓库依赖关系的方法。
本申请实施例还提供一种计算机存储介质,用于存储计算机程序,计算机程序被执行时,具体用于实现本申请任一实施例所提供的梳理数据仓库依赖关系的方法。
需要说明的是,本发明提供的梳理数据仓库依赖关系的方法、装置、设备和存储介质可用于大数据领域或金融领域。上述仅为示例,并不对本发明提供的梳理数据仓库依赖关系的方法、装置、设备和存储介质的应用领域进行限定。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种梳理数据仓库依赖关系的方法,其特征在于,包括:
获取数据仓库系统的数据源映射文档;其中,所述数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层;
解析所述数据源映射文档,并根据所述数据源映射文档梳理所述数据仓库系统中除所述技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档;其中,所述工作流配置文档用于记录所述数据表依赖关系;
在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档;其中,所述血缘关系文档用于记录所述数据仓库中除所述技术缓冲层以外每层的字段依赖关系。
2.根据权利要求1所述的方法,其特征在于,所述解析所述数据源映射文档,并根据所述数据源映射文档梳理所述数据仓库系统中除所述技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档,包括:
解析所述数据源映射文档,获得所述应用接口层、所述应用计算层和所述共性加工层中每一层的数据表的表间关联信息;
根据所述表间关联信息梳理得到所述应用接口层、所述应用计算层和所述共性加工层中每一层的数据表的数据表依赖关系;
解析所述数据源映射文档,获得所述整合模型层中每一数据表对应的源表名称;
根据所述整合模型层中每一数据表对应的源表名称梳理得到所述整合模型层中每一数据表的数据表依赖关系;
整合每一数据表的数据表依赖关系,生成工作流配置文档。
3.根据权利要求1所述的方法,其特征在于,所述在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档,包括:
针对所述应用接口层、所述应用计算层、所述共性加工层和所述整合模型层中每一数据表,比对所述数据表的字段的内容和所述数据表对应的前置数据表的字段的内容,从而确定所述数据表的字段来源;
整合每一数据表的字段来源,生成血缘关系文档。
4.根据权利要求1所述的方法,其特征在于,所述在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档之后,还包括:
当需要更新版本时,将新版本的工作流配置文档和血缘关系文档,以及旧版本的工作流配置文档和血缘关系文档进行比对,确定所述新版本和所述旧版本的数据表差异和字段差异;
根据所述数据表差异和字段差异生成用于更新数据表和字段的数据库脚本,所述数据库脚本用于在部署所述新版本时被执行。
5.一种梳理数据仓库依赖关系的装置,其特征在于,包括:
获取单元,用于获取数据仓库系统的数据源映射文档;其中,所述数据仓库系统包括应用接口层,应用计算层,共性加工层,整合模型层和技术缓冲层;
梳理单元,用于解析所述数据源映射文档,并根据所述数据源映射文档梳理所述数据仓库系统中除所述技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档;其中,所述工作流配置文档用于记录所述数据表依赖关系;
解析单元,用于在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档;其中,所述血缘关系文档用于记录所述数据仓库中除所述技术缓冲层以外每层的字段依赖关系。
6.根据权利要求5所述的装置,其特征在于,所述梳理单元解析所述数据源映射文档,并根据所述数据源映射文档梳理所述数据仓库系统中除所述技术缓冲层以外每层的数据表依赖关系,获得工作流配置文档时,具体用于:
解析所述数据源映射文档,获得所述应用接口层、所述应用计算层和所述共性加工层中每一层的数据表的表间关联信息;
根据所述表间关联信息梳理得到所述应用接口层、所述应用计算层和所述共性加工层中每一层的数据表的数据表依赖关系;
解析所述数据源映射文档,获得所述整合模型层中每一数据表对应的源表名称;
根据所述整合模型层中每一数据表对应的源表名称梳理得到所述整合模型层中每一数据表的数据表依赖关系;
整合每一数据表的数据表依赖关系,生成工作流配置文档。
7.根据权利要求5所述的装置,其特征在于,所述解析单元在所述数据表依赖关系的基础上,解析各个数据表的字段来源,获得血缘关系文档时,具体用于:
针对所述应用接口层、所述应用计算层、所述共性加工层和所述整合模型层中每一数据表,比对所述数据表的字段的内容和所述数据表对应的前置数据表的字段的内容,从而确定所述数据表的字段来源;
整合每一数据表的字段来源,生成血缘关系文档。
8.根据权利要求5所述的装置,其特征在于,所述装置还包括:
脚本单元,用于:
当需要更新版本时,将新版本的工作流配置文档和血缘关系文档,以及旧版本的工作流配置文档和血缘关系文档进行比对,确定所述新版本和所述旧版本的数据表差异和字段差异;
根据所述数据表差异和字段差异生成用于更新数据表和字段的数据库脚本,所述数据库脚本用于在部署所述新版本时被执行。
9.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序被执行时,具体用于实现如权利要求1至4任意一项所述的梳理数据仓库依赖关系的方法。
10.一种电子设备,其特征在于,包括存储器和处理器;
其中,所述存储器用于存储计算机程序;
所述处理器用于执行所述计算机程序,所述计算机程序被执行时,具体用于实现如权利要求1至4任意一项所述的梳理数据仓库依赖关系的方法。
CN202310442203.5A 2023-04-23 2023-04-23 梳理数据仓库依赖关系的方法、装置、设备和存储介质 Pending CN116467376A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310442203.5A CN116467376A (zh) 2023-04-23 2023-04-23 梳理数据仓库依赖关系的方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310442203.5A CN116467376A (zh) 2023-04-23 2023-04-23 梳理数据仓库依赖关系的方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN116467376A true CN116467376A (zh) 2023-07-21

Family

ID=87175046

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310442203.5A Pending CN116467376A (zh) 2023-04-23 2023-04-23 梳理数据仓库依赖关系的方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN116467376A (zh)

Similar Documents

Publication Publication Date Title
US11249981B2 (en) Data quality analysis
US9594797B2 (en) Data quality assessment
AU2018206822A1 (en) Simplified tax interview
US10565172B2 (en) Adjusting application of a set of data quality rules based on data analysis
US20170024446A1 (en) Data storage extract, transform and load operations for entity and time-based record generation
CN110851428A (zh) 基于规则算子动态编排的数据库分析方法、装置及介质
CA3022113A1 (en) Learning from historical logs and recommending database operations on a data-asset in an etl tool
Macho et al. Extracting build changes with builddiff
CN109918678B (zh) 一种字段含义识别方法和装置
US20150356175A1 (en) System and method for finding and inventorying data from multiple, distinct data repositories
CN111581193A (zh) 数据处理方法、设备、计算机系统及存储介质
Pahwa et al. An efficient algorithm for data cleaning
CN116467376A (zh) 梳理数据仓库依赖关系的方法、装置、设备和存储介质
CN114581219A (zh) 一种反电信网络诈骗预警方法及系统
CN112380321A (zh) 基于票据知识图谱的主次数据库分配方法及相关设备
US20240086379A1 (en) System and method for implementing a data quality framework and engine
Abbas et al. Development of a structured framework to achieve quality data
US20150379096A1 (en) System and method for automatically connecting multiple, distinct tables of a data repository
MÁTYUS Monitoring the Duration of Use of Web-based Systems Using Clustering Procedures
CN115391438A (zh) 数据仓库配置文档的生成方法、装置、设备和存储介质
MOLNÁR Ticketing Data Warehouse System Development Challenges and Experiences.
US20200159740A1 (en) System and method for verifying software data lineage
KR20210112974A (ko) 시장 집중도를 이용한 브랜드 지수 생성 시스템 및 방법과 이를 위한 컴퓨터 프로그램
CN114328271A (zh) 测试方法、装置、设备及存储介质
WO2022129605A1 (en) Method of processing data from a data source, apparatus and computer program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination