CN116627955A - 一种基于元数据的异构数据处理方法、系统、设备及介质 - Google Patents
一种基于元数据的异构数据处理方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN116627955A CN116627955A CN202310628736.2A CN202310628736A CN116627955A CN 116627955 A CN116627955 A CN 116627955A CN 202310628736 A CN202310628736 A CN 202310628736A CN 116627955 A CN116627955 A CN 116627955A
- Authority
- CN
- China
- Prior art keywords
- data
- metadata
- heterogeneous
- heterogeneous data
- bins
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 238000012795 verification Methods 0.000 claims abstract description 45
- 238000012937 correction Methods 0.000 claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 15
- 238000000034 method Methods 0.000 claims description 34
- 238000007726 management method Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000013499 data model Methods 0.000 claims description 5
- 238000013523 data management Methods 0.000 claims description 4
- 238000013500 data storage Methods 0.000 claims description 4
- 238000013145 classification model Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 11
- 238000004458 analytical method Methods 0.000 description 5
- 238000007418 data mining Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000007405 data analysis Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 108091029480 NONCODE Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000012098 association analyses Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000009960 carding Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于元数据的异构数据处理方法、系统、设备及介质,涉及数据处理技术领域,其技术方案要点是:获取多个异构数仓存储的异构数据的元数据;根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则;根据所述校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果;根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,得到存储在多个异构数仓的异构数据的出错点信息;基于所述出错点信息和校验规则对多个异构数仓进行管理,其中管理包括数据剔除、数据纠正和数据填充中的至少一者。本发明实现了对数据出错的数仓以及数据的溯源,从而从根本上解决了数据质量问题。
Description
技术领域
本发明涉及一种数据处理技术领域,更具体地说,它涉及一种基于元数据的异构数据处理方法、系统、设备及介质。
背景技术
随着信息化、数字化进程的加快,数据呈几何倍增长,数据质量也呈现参差不齐现状,对于如何提升数据质量变得尤为重要,只有确保数据的高质量才能发挥出数据挖掘的价值。
传统数据质量提升只停留在数据使用层,发现数据错误,即对该部分数据进行修正或处理,未能也无法追查到数据的源头,该方法未能从根本上解决数据质量问题。
因此,如何从根本上解决数据质量问题成为数据挖掘分析过程中亟待解决的问题。
发明内容
本发明的目的是提供一种基于元数据的异构数据处理方法、系统、设备及介质,通过对获取的元数据自身所包含的属性信息、组合信息和关联信息,生成用来校验元数据是否存在质量问题的校验规则,进一步的,依据校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果(即表征异构数据的质量报告),由此,基于校验结果对异构数据的出错点进行分析,从而确定出相应异构数仓的异构数据的出错点信息,从而实现对数据出错的数仓以及数据的溯源,在基于出错点信息和校验规则对多个异构数仓进行管理,从而从根本上解决了数据质量问题。
本发明的上述技术目的是通过以下技术方案得以实现的:
本申请的第一方面,提供了一种基于元数据的异构数据处理方法,方法包括:
获取多个异构数仓存储的异构数据的元数据;
根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则;
根据所述校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果;
根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,得到存储在多个异构数仓的异构数据的出错点信息;
基于所述出错点信息和校验规则对多个异构数仓进行管理,其中管理包括数据剔除、数据纠正和数据填充中的至少一者。
在一种实现方案中,在所述根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则之前,方法还包括:基于已构建好的数据分类模型将所述元数据划分为技术元数据、业务元数据和管理元数据;
分别根据所述技术元数据、业务元数据和管理元数据所包含的属性信息、组合信息和关联信息,生成所述技术元数据、业务元数据和管理元数据各自对应的校验规则;
其中,所述技术元数据是指与数据技术相关的元数据,所述技术元数据包括数据表结构、数据类型、数据格式和数据存储位置;所述业务元数据是指与业务相关的元数据,所述业务元数据包括业务规则、业务术语、业务流程和业务数据模型;所述管理元数据是指与数据管理相关的元数据,所述管理元数据包括数据所有权、数据访问权限、数据安全策略和数据生命周期。
在一种实现方案中,根据所述属性信息、组合信息和关联信息所包含的子信息确定所述校验规则。
在一种实现方案中,多个异构数仓包括Oracle、MySQL、DB2、SQLServer、DM8及RDMS库中的至少两者,并扩展出元数据模型以获取离线文件或非关系数据源的元数据。
在一种实现方案中,通过数据访问接口以元数据的名称、代码和类型读取多个异构数仓存储的异构数据的元数据。
在一种实现方案中,所述校验规则包括数据项名称校验、字段名校验、格式校验、长度校验、空值校验和唯一性校验。
在一种实现方案中,根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,包括:根据所述校验结果确定元数据的出错信息,根据元数据的出错信息定位多个异构数仓存储的异构数据的出错点信息。
本申请的第二方面,提供了一种基于元数据的异构数据处理系统,系统包括:
数据获取模块,用于获取多个异构数仓存储的异构数据的元数据;
处理模块,用于根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则;根据所述校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果;根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,得到存储在多个异构数仓的异构数据的出错点信息;基于所述出错点信息和校验规则对多个异构数仓进行管理,其中管理包括数据剔除、数据纠正和数据填充中的至少一者。
本申请的第三方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本申请的第一方面所述的基于元数据的异构数据处理方法。
本申请的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使计算机执行本申请的第一方面所述的基于元数据的异构数据处理方法。
与现有技术相比,本发明具有以下有益效果:
本发明提供一种基于元数据的异构数据处理方法,通过对获取的元数据自身所包含的属性信息、组合信息和关联信息,生成用来校验元数据是否存在质量问题的校验规则,进一步的,依据校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果(即表征异构数据的质量报告),由此,基于校验结果对异构数据的出错点进行分析,从而确定出相应异构数仓的异构数据的出错点信息,从而实现对数据出错的数仓以及数据的溯源,在基于出错点信息和校验规则对多个异构数仓进行管理,从而从根本上解决了数据质量问题。
此外,本申请的第二方面至第四方面还提供了一种基于元数据的异构数据处理系统、设备及介质,具备与上述基于元数据的异构数据处理方法相应的技术效果,此处不再赘述。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:
图1示出了本申请实施例提供的基于元数据的异构数据处理方法的流程框图;
图2示出了本申请实施例提供的基于元数据的异构数据处理方法的流程示意图;
图3示出了本申请实施例提供的基于元数据的异构数据处理系统的结构框图;
图4示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。在本发明的描述中,“多个”的含义是两种或两种以上,除非另有明确具体的限定。
如背景技术所述,随着信息化、数字化进程的加快,数据呈几何倍增长,数据质量也呈现参差不齐现状,对于如何提升数据质量变得尤为重要,只有确保数据的高质量才能发挥出数据挖掘的价值。
传统数据质量提升只停留在数据使用层,发现数据错误,即对该部分数据进行修正或处理,未能也无法追查到数据的源头,该方法未能从根本上解决数据质量问题。
因此,如何从根本上解决数据质量问题成为数据挖掘分析过程中亟待解决的问题。
为此,本实施例提供了一种基于元数据的异构数据处理方法、系统、设备及介质,克服传统技术无法从根本上解决数据质量的问题,以此基于元数据提升异构数据的质量。本申请实施例中,该一种基于元数据的异构数据处理方法适用于电子设备或者服务器等,例如计算机、电脑等,其中,电子设备的操作系统可包括但不限于Android操作系统、IOS操作系统、Synbian(塞班)操作系统、BlackBerry(黑莓)操作系统、WindowsPhone8操作系统等等,本申请实施例不作限定。本申请实施例中,电子设备可以设置有用户界面(UserInterface,UI)、接口模块和处理器(centralprocessingunit,CPU)。
下面将对本申请实施例提供的基于元数据的异构数据处理方法进行解释与说明,请参考图1,图1为本申请实施例提供的一种基于元数据的异构数据处理方法的流程示意图,如图1所示,方法包括以下步骤:
S110,获取多个异构数仓存储的异构数据的元数据。
首先对元数据表征的含义进行说明,元数据(Meta Data)是关于数据仓库的数据,指在数据仓库建设过程中所产生的有关数据源定义,目标定义,转换规则等相关的关键数据。同时元数据还包含关于数据含义的商业信息,所有这些信息都应当妥善保存,并很好地管理。为数据仓库的发展和使用提供方便。元数据是一种二进制信息,用以对存储在公共语言运行库可移植可执行文件(PE)文件或存储在内存中的程序进行描述。
在本实施例中,可通过SchemacrawlerPlus实现元数据的采集,即基于开源的Schemacrawler元数据采集框架进行扩展,实现多个异构数据仓库的元数据采集,数据源包括Oracle、MySQL、SQLServer、DM8及其它RDMS库,同时扩展出元数据模型以满足离线文件或非关系数据源的元数据的采集,达到元数据采集的全面覆盖。
其次,异构数据是相关的多个数据的集合。例如存储在公安、检察院、法院、司法和/或监狱信息处理系统中的政法业务数据。再例如存储在电网、电力公司、电力检修公司的电力数据。
最后,异构数仓指的是相关的多个数据库的集合,可以实现数据的共亨和透明访问,每个数据库在加入异构数据库之前本身就已经存在,拥有自己的DBMS。异构数仓的各个组成部分具有自身的自治性,实现数据共享的同时,每个数据库仍保有自己的应用特性、完整性控制和安全性控制。异构数仓的各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中。各个数据库的基础操作系统可以是Unix、Windows NT、Linux等。
S120,根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则。
本实施例中,属性信息用于定义元数据的基本信息,例如,元数据的数据表属性包括注释、是否系统表、是否临时表、所有者、表空间、表类型等。再例如,元数据字段属性包括注释、默认值、是否自增、允许为空、是否唯一、长度、数据类型、精度、小数位等。
组合信息用于定义元数据的组合信息(即组成内容),如,元数据的数据表,其组合信息包括索引、外键、主键、字段、表分区、触发器、约束、检查限制等。又比如,元数据的数据库,其组合信息包括表、视图、宏、函数、同义词、存储过程、字段集。
关联关系用于定义元数据的依赖信息(即关联内容),如元数据的视图,其关联信息包括视图、表、存储过程等。又例如,元数据的存储过程,其关联信息包含字段、同义词、表、视图等。
基于本实施例所述的属性信息、组合信息和关联信息可以表征元数据的数据编目,并且可表征元数据的组成情况,由此可根据上述三类信息构建元数据的校验规则,来对元数据的数据质量进行评估。
S130,根据所述校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果。
本实施例中,校验的方式包括对异构数据的字段是否存在非空、字段与字段之间是否存在依赖关系、数据表与数据表之间是否存在依赖关系等等,即基于元数据的基本信息、组合信息和依赖关系来实现对多个异构数仓存储的异构数据进行校验,以得到校验结果,需理解的是,此结果表征的是多个异构数仓存储的异构数据不符合上述实施例所述的校验规则,即可理解为是针对异构数据的数据质量报告。
S140,根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,得到存储在多个异构数仓的异构数据的出错点信息。
具体的,出错点分析是指对不符合校验规则的异构数据的分析,例如,高速公路数据中,其数据项名称、字段名、空值、格式等出现不符合校验规则,例如数据项名称的路况恢复状态、标题、道路、路线名称等不符合校验规则,则会生成这些数据项名称的出错点信息,相应地,也可针对字段名、空值、格式,还有一些别的数据进行校验,以确定相应数据有误的出错点信息。
S150,基于所述出错点信息和校验规则对多个异构数仓进行管理,其中管理包括数据剔除、数据纠正和数据填充中的至少一者。
本实施例中,通过由校验规则所确定出的出错点信息和校验规则对多个异构数仓进行管理,此时,应理解的是,对于异构数仓的管理,校验规则是作为一种判断标志,可针对管理后的数据进行检验,以判别再执行数据剔除、数据纠正和数据填充操作后,异构数仓的数据是否仍存在数据质量问题。而针对数据剔除、数据纠正和数据填充这三种处理方式,是本领域技术人员的常规手段,故此本实施例不对其具体的原理进行说明,需要理解的是,还可以其余能够实现数据纠错的实现方案,本实施例不做具体的限定。例如如下所示:
错误数据纠正支持基于质量规则的自动纠正或人工的手动纠正两种方式。基于质量规则的自动纠正,主要是根据质量规则中定义的策略实现自动纠正能力,如非空质量校验规则中定义了处理策略包括自动剔除、自动填充两种。自动剔除,则是对筛选出的问题数据进行直接删除处理。自动填充,则是根据关联性分析该字段是否存储依赖,如存在依赖则自动将依赖源的数据填充到该字段,如不存在则填充规则设置的默认值。
基于上述所述的纠错方式,完成数据纠正后,可形成问题数据责任单,明确问题点、责任部门等,从而在数据录入的管理手段上加强监管。
通过以上五个步骤(S110-S150)的数据质量闭环控制,从源头上提高数据质量,达到数据挖掘对数据质量的要求。
综上所述,本实施例提供的一种基于元数据的异构数据处理方法,该方法通过对获取的元数据自身所包含的属性信息、组合信息和关联信息,生成用来校验元数据是否存在质量问题的校验规则,进一步的,依据校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果(即表征异构数据的质量报告),由此,基于校验结果对异构数据的出错点进行分析,从而确定出相应异构数仓的异构数据的出错点信息,从而实现对数据出错的数仓以及数据的溯源,在基于出错点信息和校验规则对多个异构数仓进行管理,从而从根本上解决了数据质量问题。
在一个实施例中,方法还包括:基于已构建好的数据分类模型将所述元数据划分为技术元数据、业务元数据和管理元数据;分别根据所述技术元数据、业务元数据和管理元数据所包含的属性信息、组合信息和关联信息,生成所述技术元数据、业务元数据和管理元数据各自对应的校验规则;其中,所述技术元数据是指与数据技术相关的元数据,所述技术元数据包括数据表结构、数据类型、数据格式和数据存储位置;所述业务元数据是指与业务相关的元数据,所述业务元数据包括业务规则、业务术语、业务流程和业务数据模型;所述管理元数据是指与数据管理相关的元数据,所述管理元数据包括数据所有权、数据访问权限、数据安全策略和数据生命周期。
具体的,在本实施例中,基于已采集的元数据可以按照元数据的用途和内容可以将其划分为技术元数据、业务元数据和管理元数据。
技术元数据,指与数据技术相关的元数据,如数据库表结构、数据类型、数据格式、数据存储位置等。技术元数据主要用于支持数据的技术实现和管理,如数据集成、数据转换、数据质量控制等,同时将技术元数据用于数据模型的构建,技术元数据由技术元数据的属性、组合、关联三大类信息组成。
技术元数据属性,技术元数据属性用于定义技术元数据的基本信息,如,技术元数据“数据表”其属性包括注释、是否系统表、是否临时表、所有者、表空间、表类型等。又比如,技术元数据“字段”其属性包括注释、默认值、是否自增、允许为空、是否唯一、长度、数据类型、精度、小数位等。
技术元数据组合,技术元数据组合用于定义技术元数据的组合信息(即组成内容),如,技术元数据“数据表”其组合信息包括索引、外键、主键、字段、表分区、触发器、约束、检查限制等。又比如,技术元数据“数据库”其组合信息包括表、视图、宏、函数、同义词、存储过程、字段集。
技术元数据关联,技术元数据关联用于定义技术元数据的依赖信息(即关联内容),如技术元数据“视图”其依赖信息包括视图、表、存储过程等。又比如,技术元数据“存储过程”其依赖信息包含字段、同义词、表、视图。
业务元数据,指与业务相关的元数据,如业务规则、业务术语、业务流程、业务数据模型等。业务元数据主要用于支持业务分析、业务决策和业务运营,如数据分析、报表生成、业务策略制定等。
管理元数据,指与数据管理相关的元数据,如数据所有权、数据访问权限、数据安全策略、数据生命周期等。管理元数据主要用于支持数据的管理和治理,如数据备份、数据恢复、数据保密性、数据合规性等。
在一个实施例中,根据所述属性信息、组合信息和关联信息所包含的子信息确定所述校验规则。
基于上述实施例所知,技术元数据、业务元数据和管理元数据的属性信息、组合信息和关联信息,均包含着多种类别,故此,针对这些类别,来确定元数据较为完成的校验规则,从而更加全面的提升写入数据仓库的数据质量。
在一个实施例中,多个异构数仓包括Oracle、MySQL、DB2、SQLServer、DM8及RDMS库中的至少两者,并扩展出元数据模型以获取离线文件或非关系数据源的元数据。
具体的,异构数仓所包括的种类是本领域技术人员的公知常识,可以理解的是,可根据数据载体格式,来确定数仓的类型,一般来说,除开本实施例所诉的多个异构数仓包括Oracle、MySQL、DB2、SQLServer、DM8及RDMS库中的至少两者,还可以包括Excel文件、文本文件、Word文件以及影音视频文件(如mp3、mp4、avi、jpg、jpeg等等)等。本实施例不做具体的限定。
在一个实施例中,通过数据访问接口以元数据的名称、代码和类型读取多个异构数仓存储的异构数据的元数据。
具体的,基于异构数仓的多个类型。通过数据访问接口以元数据的名称、代码和类型读取多个异构数仓存储的异构数据的元数据,具体实现如下:
对于一些数据库的文件,如:Oracle、SQLServer、DB2、Sybase,一般通过通用数据访问接口ODBC和/或JDBC从Oracle、SQLServer、DB2和/或Sybase数据库中读取,这也是标准的数据读取方式。
对于文本文件,通过文本数据读取函数从文本文件读取异构数据,可通过各种编程语言(如C++)设计文本数据读取函数,并进行封装,在后续的程序中可以直接调用。
对于Excel文件,通过Excel文件数据读取函数从Excel文件读取异构数据,可通过各种编程语言(如C++)设计Excel文件数据读取函数,并进行封装,在后续的程序中可以直接调用。
对于Word文件,通过Word文件数据读取函数从Word文件读取异构数据,可通过各种编程语言(如C++)设计Word文件数据读取函数读取函数,并进行封装,在后续的程序中可以直接调用。
对于其他类型的文件,如mp3、mp4、avi、jpg、jpeg等等,可通过各种编程语言(如C++)设计相应的文件读取函数,并进行封装,在后续的程序中可以直接调用。
而对于一些敏感数据,如身份证号码、家庭信息、体检信息等,需要通过数据库系统提供的API函数读取加密级别高的异构数据,即加密级别高的异构数据是指需要相应的用户权限才能够读取的数据,也就是说只有特定权限的用户才可以读取相应的加密级别高的数据。
在一个实施例中,所述校验规则包括数据项名称校验、字段名校验、格式校验、长度校验、空值校验和唯一性校验。
具体的,在本实施例中,校验规则是对异构数据是否完整、是否错误、是否重复进行检验的,因此,针对一种类型的异构数据,可设置针对该异构数据相应可以表征数据质量的项来实现。例如,在多源异构数据集成中,存在的模式层数据质量问题主要有:
数据表中应该建立主键却没有建立主键。数据表间应该建立外键约束却没有建立外键约束。同时还需要检查以下模式层的数据质量问题:表结构的一致性检查。即业务表(非代码表)的主外键命名一致,业务表的表字段个数,字段命名一致等。代码表的内容一致性检查。代码表除了需要检查业务表所可能出现的数据质量外,还需要检查是否表中数据记录个数是否一致,记录内容是否一致等。
相应地,错误数据类型包括以下类型:
数据长度不正确:如数据字段长度超出数据库设计的理论长度;
数据类型不正确:如应为日期类型的数据,实际却是字符串格式;应为金额的数据,实际填写了带有金额的单位或者币种等;
数据格式不正确:如中国公民的身份证格式应该符合国家相关标准格式,企业的组织机构代码格式应该符合GB 11714—1997;
数据格式不统一:如日期类型格式有很多种,如2011-9-22、2011年09月22日、2011.09.22、09/22/2011、09-22-2011、2011年09月22日23点35分和2011-09-22 23:35:35等;
数据逻辑含义不正确:如出生日期为1899-12-30等;
数据所属的字典范围不正确:如性别只可能是男、女或未知,而实际的数据可能是男性和女性等(这样的数据在实际应用中需要根据具体的情况进行转义);
数据之间逻辑关系不正确:如企业登记日期是2011-09-22,而注销日期是1999-01-10;企业的签订合同人数和未签订合同人数总和不等于企业的总人数等。
在一个实施例中,根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,包括:根据所述校验结果确定元数据的出错信息,根据元数据的出错信息定位多个异构数仓存储的异构数据的出错点信息。
本实施例中,由于元数据的出错信息包括了元数据的属性信息、组合信息和关联信息等多种信息,因此,出错的情况也是多种多样的,例如,技术元数据中定义字段的非空属性,可形成非空质量校验规则用于分析数仓数据中该字段是否存在非空,存在非空就表示该数据为垃圾数据,需进行处理。又如元数据中定义的字段依赖属性,可形成依赖质量校验规则用于分析数据表与数据表之间的依赖情况,根据强关联性从而确定数仓数据中的数据的准确性。如,业务元数据“年龄”,在业务元数据上描述为人员年龄,其属性就包括不超过3位数,不能是负数,根据这些特性能帮助业务员快速分析出问题数据。如,管理元数据“责任部门”,定义该数据的责任部门由谁负责,便于进行责任划分和数据质量追责。
根据不同的数据进行不同的元数据分析,定位问题数据点,即出错点点信息。例如,数据表A中的字段a1为非空字段,根据质量报告反馈,该字段存在数据为空的异常情况,对元数据进行关联性分析,发现数据表A中的字段a1是依赖于数据表B中的字段b1,而数据表B中的字段b1属于人工录入,从而明确数据问题点是因为人工填写异常导致数据为空。
具体的,基于上述实施例所述的内容,请参考图2,首先通过对企业进行信息资源规划,掌握信息化建设现状,梳理出线上情况及线下情况,线上通过引擎自动采集,线下则通过元数据模型进行上传。采集完成后根据业务元数据、技术元数据、管理元数据进行自动划分,形成元数据库。技术元数据支撑数据编目创建,作为数据汇入的载体。汇入后通过数据质量并结合元数据血缘分析进行数据质量校验,并形成质量报告,根据质量报告追溯管理职责。
请参考图3,图3示出了本申请实施例提供的基于元数据的异构数据处理系统的结构框图,如图3所示,系统包括:
数据获取模块310,用于获取多个异构数仓存储的异构数据的元数据;
处理模块320,用于根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则;根据所述校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果;根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,得到存储在多个异构数仓的异构数据的出错点信息;基于所述出错点信息和校验规则对多个异构数仓进行管理,其中管理包括数据剔除、数据纠正和数据填充中的至少一者。
可见,本实施例提供的基于元数据的异构数据处理系统,通过对获取的元数据自身所包含的属性信息、组合信息和关联信息,生成用来校验元数据是否存在质量问题的校验规则,进一步的,依据校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果(即表征异构数据的质量报告),由此,基于校验结果对异构数据的出错点进行分析,从而确定出相应异构数仓的异构数据的出错点信息,从而实现对数据出错的数仓以及数据的溯源,在基于出错点信息和校验规则对多个异构数仓进行管理,从而从根本上解决了数据质量问题。
本发明再一个实施例中,还提供了一种电子设备,请参考图4,图4示出了本申请实施例提供的一种电子设备的结构示意图。其中,电子设备400包括处理器410、存储器420、通信接口430和至少一个用于连接处理器410、存储器420、通信接口430的通信总线。存储器420包括但不限于是随机存储记忆体(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(PROM)或便携式只读存储器(CD-ROM),该存储器420用于相关指令及数据。
通信接口430用于接收和发送数据。处理器410可以是一个或多个CPU,在处理器410是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。电子设备400中的处理器410用于读取存储器420中存储的一个或多个程序421,执行以下操作:获取多个异构数仓存储的异构数据的元数据;根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则;根据所述校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果;根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,得到存储在多个异构数仓的异构数据的出错点信息;基于所述出错点信息和校验规则对多个异构数仓进行管理,其中管理包括数据剔除、数据纠正和数据填充中的至少一者。
需要说明的是,各个操作的具体实现可以上述图1所示的方法实施例的相应描述,电子设备400可以用于执行本申请上述方法实施例的基于元数据的异构数据处理方法,在此不再具体赘述。
本发明再一个实施例中,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关基于元数据的异构数据处理方法的相应步骤。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于元数据的异构数据处理方法,其特征在于,方法包括:
获取多个异构数仓存储的异构数据的元数据;
根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则;
根据所述校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果;
根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,得到存储在多个异构数仓的异构数据的出错点信息;
基于所述出错点信息和校验规则对多个异构数仓进行管理,其中管理包括数据剔除、数据纠正和数据填充中的至少一者。
2.根据权利要求1所述的方法,其特征在于,在所述根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则之前,方法还包括:基于已构建好的数据分类模型将所述元数据划分为技术元数据、业务元数据和管理元数据;
分别根据所述技术元数据、业务元数据和管理元数据所包含的属性信息、组合信息和关联信息,生成所述技术元数据、业务元数据和管理元数据各自对应的校验规则;
其中,所述技术元数据是指与数据技术相关的元数据,所述技术元数据包括数据表结构、数据类型、数据格式和数据存储位置;所述业务元数据是指与业务相关的元数据,所述业务元数据包括业务规则、业务术语、业务流程和业务数据模型;所述管理元数据是指与数据管理相关的元数据,所述管理元数据包括数据所有权、数据访问权限、数据安全策略和数据生命周期。
3.根据权利要求2所述的方法,其特征在于,根据所述属性信息、组合信息和关联信息所包含的子信息确定所述校验规则。
4.根据权利要求1所述的方法,其特征在于,多个异构数仓包括Oracle、MySQL、DB2、SQLServer、DM8及RDMS库中的至少两者,并扩展出元数据模型以获取离线文件或非关系数据源的元数据。
5.根据权利要求4所述的方法,其特征在于,通过数据访问接口以元数据的名称、代码和类型读取多个异构数仓存储的异构数据的元数据。
6.根据权利要求1所述的方法,其特征在于,所述校验规则包括数据项名称校验、字段名校验、格式校验、长度校验、空值校验和唯一性校验。
7.根据权利要求1所述的方法,其特征在于,根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,包括:根据所述校验结果确定元数据的出错信息,根据元数据的出错信息定位多个异构数仓存储的异构数据的出错点信息。
8.一种基于元数据的异构数据处理系统,其特征在于,系统包括:
数据获取模块,用于获取多个异构数仓存储的异构数据的元数据;
处理模块,用于根据所述元数据所包含的属性信息、组合信息和关联信息,生成元数据的校验规则;根据所述校验规则对所述多个异构数仓存储的异构数据进行校验,得到异构数据的校验结果;根据所述校验结果对多个异构数仓存储的异构数据的出错点进行分析,得到存储在多个异构数仓的异构数据的出错点信息;基于所述出错点信息和校验规则对多个异构数仓进行管理,其中管理包括数据剔除、数据纠正和数据填充中的至少一者。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任意一项所述的基于元数据的异构数据处理方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,其特征在于,所述计算机指令用于使计算机执行权利要求1至7任意一项所述的基于元数据的异构数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310628736.2A CN116627955A (zh) | 2023-05-30 | 2023-05-30 | 一种基于元数据的异构数据处理方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310628736.2A CN116627955A (zh) | 2023-05-30 | 2023-05-30 | 一种基于元数据的异构数据处理方法、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116627955A true CN116627955A (zh) | 2023-08-22 |
Family
ID=87613116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310628736.2A Pending CN116627955A (zh) | 2023-05-30 | 2023-05-30 | 一种基于元数据的异构数据处理方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116627955A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372185A (zh) * | 2016-08-31 | 2017-02-01 | 广东京奥信息科技有限公司 | 一种异构数据源的数据预处理方法 |
CN110262926A (zh) * | 2019-06-05 | 2019-09-20 | 世纪龙信息网络有限责任公司 | 服务器的元数据修复方法、装置、系统和计算机设备 |
CN110851539A (zh) * | 2019-10-25 | 2020-02-28 | 东软集团股份有限公司 | 元数据校验方法、装置、可读存储介质和电子设备 |
CN111259006A (zh) * | 2019-11-19 | 2020-06-09 | 中国科学院计算机网络信息中心 | 一种通用的分布式异构数据一体化物理汇聚、组织、发布与服务方法及系统 |
US10783120B1 (en) * | 2018-06-28 | 2020-09-22 | Amazon Technologies, Inc. | Service-based storage synchronization |
CN112199421A (zh) * | 2020-12-04 | 2021-01-08 | 中国电力科学研究院有限公司 | 一种多源异构数据融合和量测数据多源互校验方法及系统 |
-
2023
- 2023-05-30 CN CN202310628736.2A patent/CN116627955A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106372185A (zh) * | 2016-08-31 | 2017-02-01 | 广东京奥信息科技有限公司 | 一种异构数据源的数据预处理方法 |
US10783120B1 (en) * | 2018-06-28 | 2020-09-22 | Amazon Technologies, Inc. | Service-based storage synchronization |
CN110262926A (zh) * | 2019-06-05 | 2019-09-20 | 世纪龙信息网络有限责任公司 | 服务器的元数据修复方法、装置、系统和计算机设备 |
CN110851539A (zh) * | 2019-10-25 | 2020-02-28 | 东软集团股份有限公司 | 元数据校验方法、装置、可读存储介质和电子设备 |
CN111259006A (zh) * | 2019-11-19 | 2020-06-09 | 中国科学院计算机网络信息中心 | 一种通用的分布式异构数据一体化物理汇聚、组织、发布与服务方法及系统 |
CN112199421A (zh) * | 2020-12-04 | 2021-01-08 | 中国电力科学研究院有限公司 | 一种多源异构数据融合和量测数据多源互校验方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755628B2 (en) | Data relationships storage platform | |
Barateiro et al. | A survey of data quality tools. | |
US11741059B2 (en) | System and method for extracting a star schema from tabular data for use in a multidimensional database environment | |
US10095717B2 (en) | Data archive vault in big data platform | |
US8341131B2 (en) | Systems and methods for master data management using record and field based rules | |
US20130041900A1 (en) | Script Reuse and Duplicate Detection | |
CN110119395B (zh) | 大数据治理中基于元数据实现数据标准与数据质量关联处理的方法 | |
CN107016047A (zh) | 文档查询、文档存储方法及装置 | |
CA2868430A1 (en) | Data selection and identification | |
GB2513329A (en) | Method and system for scoring data in a database | |
CN112527774A (zh) | 数据中台搭建方法、系统及存储介质 | |
EP3042354B1 (en) | Metadata automated system | |
Kvet et al. | Master index access as a data tuple and block locator | |
KR100796906B1 (ko) | 데이터베이스 품질관리 방법 | |
CN116561114A (zh) | 一种基于元数据的管理方法 | |
CN116578614A (zh) | 一种管道设备的数据管理方法、系统、介质及设备 | |
CN116627955A (zh) | 一种基于元数据的异构数据处理方法、系统、设备及介质 | |
KR100796905B1 (ko) | 데이터베이스 품질관리 시스템 | |
KR100792322B1 (ko) | 데이터베이스 품질관리 프레임워크 | |
CN114356945A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN112905565A (zh) | 一种数据库管理系统及数据检验方法 | |
Asanka | Database Design and Modeling with PostgreSQL | |
Aghazada | Arrangement and Modulation of ETL Process in the Storage | |
Malcher et al. | Tables and Constraints | |
Makoondlall et al. | ZDLC: Layered lineage report across technologies |
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 |