CN112597154A - 一种数据的存储方法、装置、电子设备、可读介质 - Google Patents
一种数据的存储方法、装置、电子设备、可读介质 Download PDFInfo
- Publication number
- CN112597154A CN112597154A CN202011447767.0A CN202011447767A CN112597154A CN 112597154 A CN112597154 A CN 112597154A CN 202011447767 A CN202011447767 A CN 202011447767A CN 112597154 A CN112597154 A CN 112597154A
- Authority
- CN
- China
- Prior art keywords
- data
- metadata
- similarity
- merged
- matched
- 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
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000013500 data storage Methods 0.000 title abstract description 17
- 238000003860 storage Methods 0.000 claims abstract description 26
- 239000008280 blood Substances 0.000 claims description 55
- 210000004369 blood Anatomy 0.000 claims description 55
- 230000000737 periodic effect Effects 0.000 claims description 21
- 238000004140 cleaning Methods 0.000 claims description 18
- 238000001914 filtration Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Quality & Reliability (AREA)
- Life Sciences & Earth Sciences (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种数据的存储方法、装置、电子设备以及可读介质,所述数据以数据表的形式进行存储,所述数据表包括待合并表和待匹配表,所述数据表具有对应的表元数据和任务元数据,所述方法包括:接收所述表元数据和所述任务元数据;将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度;判断所述表相似度是否超过预设阈值;若是,则将所述待合并表与所述待匹配表进行合并,生成目标数据表;存储所述目标数据表。从而可以将重复或相似的数据表进行合并存储,减少了数据表存储所占用的存储空间,节约了存储资源。
Description
技术领域
本发明涉及数据存储领域,特别是涉及一种数据的存储方法和一种数据的存储装置、电子设备、可读介质。
背景技术
目前,为了支持越来越精细的数据分析以及越来越广泛的车辆功能,所需要的存储的数据也就越来越多,所占用的存储空间也越来越大。而在存储的数据当中,有许多数据是属于重复或相似的数据,对于这些数据而言,占用了存储空间,但却并不能提供相应的作用,这无疑是对存储空间的极大浪费。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据的存储方法和相应的一种数据的存储装置。
为了解决上述问题,本发明实施例公开了一种数据的存储方法,所述数据以数据表的形式进行存储,所述数据表包括待合并表和待匹配表,所述数据表具有对应的表元数据和任务元数据,所述方法包括:
接收所述表元数据和所述任务元数据;
将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度;
判断所述表相似度是否超过预设阈值;
若是,则将所述待合并表与所述待匹配表进行合并,生成目标数据表;
存储所述目标数据表。
可选地,所述接收所述表元数据和所述任务元数据的步骤之后,还包括:
对所述表元数据进行数据清洗,获取目标表元数据;
对所述任务元数据进行数据清洗,获取目标任务元数据。
可选地,所述对所述表元数据进行数据清洗,获取目标表元数据的步骤,包括:
对所述表元数据进行过滤,保留预设字段且为所述预设字段构建字段名称;
计算预设时间内的所述数据表的数据量;
采用所述数据量、所述预设字段以及所述字段名称生成目标表元数据。
可选地,所述对所述任务元数据进行数据清洗,获取目标任务元数据的步骤,包括:
去除所述任务元数据中的非周期任务,获得周期任务元数据;
对所述周期任务元数据进行分解,获得单任务元数据;所述单任务元数据包含自依赖任务;
对所述单任务元数据进行过滤,去除自依赖任务,获得目标单任务元数据;
基于所述目标单任务元数据,获取与所述数据表对应的数据血缘表;
采用所述数据血缘表生成目标任务元数据。
可选地,所述表相识度包括表名相似度、字段相似度、数据量相似度和血缘关系相似度,所述目标表元数据包括所述数据表的表名、预设字段以及数据量,所述目标任务元数据包括所述数据血缘表,所述将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度的步骤,包括:
采用所述待合并表的第一表名和所述待匹配表的第二表名,通过表相似度识别模型获取所述表名相似度;
采用所述待合并表的第一预设字段和所述待匹配表的第二预设字段,通过表相似度识别模型获取所述字段相似度;
采用所述待合并表的第一数据量和所述待匹配表的第二数据量,通过表相似度识别模型获取所述数据量相似度;
采用所述待合并表的第一数据血缘表和所述待匹配表的第二数据血缘表,通过表相似度识别模型获取所述血缘关系相似度。
可选地,所述将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度的步骤之后,还包括:
基于所述表相似度,将所述待匹配表按照预设的顺序进行排列。
可选地,所述数据血缘表包括根节点,所述采用所述待合并表的第一数据血缘表和所述待匹配表的第二数据血缘表,通过表相似度识别模型获取所述血缘关系相似度的步骤,包括:
遍历所述第一数据血缘表和所述第二数据血缘表;
确定所述第一数据血缘表中的第一血缘根节点,以及所述第二数据血缘表中的第二血缘根节点;
采用所述第一血缘根节点和所述第二血缘根节点,通过表相似度识别模型获取所述血缘关系相似度。
本发明实施例还公开了一种数据的存储装置,所述数据以数据表的形式进行存储,所述数据表包括待合并表和待匹配表,所述数据表具有对应的表元数据和任务元数据,所述装置包括:
接收模块,用于接收所述表元数据和所述任务元数据;
表相似度获取模块,用于将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度;
判断模块,用于判断所述表相似度是否超过预设阈值;
目标数据表生成模块,用于若所述表相似度超过预设阈值,则将所述待合并表与所述待匹配表进行合并,生成目标数据表;
存储模块,用于存储所述目标数据表。
本发明实施例还公开了一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。
本发明实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。
本发明实施例包括以下优点:
本发明实施例中,接收表元数据和任务元数据,将表元数据和任务元数据输入构建的表相似度识别模型,获取待合并表与多个待匹配表之间的表相似度,判断表相似度是否超过预设阈值,若是,则将待合并表与待匹配表进行合并,生成目标数据表,存储目标数据表。从而可以将重复或相似的数据表进行合并存储,减少了数据表存储所占用的存储空间,节约了存储资源。
附图说明
图1是本发明的一种数据的存储方法实施例的步骤流程图;
图2是本发明的另一种数据的存储方法实施例的步骤流程图;
图3是本发明的一种目标任务元数据的示意图;
图4是本发明的一种待合并表与待匹配表之间表相似度的示意图;
图5是本发明的一种数据流程图;
图6是本发明的一种数据的存储装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的主要发明点之一,在于接收表元数据和任务元数据,将表元数据和任务元数据输入构建的表相似度识别模型,获取待合并表与多个待匹配表之间的表相似度,判断表相似度是否超过预设阈值,若是,则将待合并表与待匹配表进行合并,生成目标数据表,存储目标数据表。从而可以将重复或相似的数据表进行合并存储,减少了数据表存储所占用的存储空间,节约了存储资源。
参照图1,示出了本发明的一种数据的存储方法实施例的步骤流程图,所述数据以数据表的形式进行存储,所述数据表包括待合并表和待匹配表,所述数据表具有对应的表元数据和任务元数据,具体可以包括如下步骤:
步骤101,接收所述表元数据和所述任务元数据;
具体的,终端可以向对数据进行存储的存储设备发起获取数据的请求,存储设备接收到请求后,向终端发送与所存储的数据表对应的表元数据和任务元数据,数据表可以分为待合并表和待匹配表,表元数据用于描述数据表的各项属性,例如数据表的名称、行数、列数、数据量等,任务元数据则用于描述数据表所参与的任务,例如通过该数据表生成了其他的数据表,又或者是对该数据表执行了修改操作。终端从多个数据表中确定一个数据表作为待合并表,则可以将其余的数据表作为待匹配表,接收待合并表和待待匹配表的表元数据和任务元数据。
步骤102,将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度;
在获取了待合并表和待匹配表的表元数据和任务元数据后,可以将表元数据和任务元数据输入到构建的表相似度识别模型中,以待合并表作为标准,遍历所有待匹配表,采用表元数据和任务元数据计算待合并表与每一个待匹配表之间的表相似度。
步骤103,判断所述表相似度是否超过预设阈值;
在获取了表相似度后,可以判断表相似度是否超过了预设的阈值,超过了预设的阈值,即证明待合并表与该待匹配表之间重复或相似的数据较多。
步骤104,若是,则将所述待合并表与所述待匹配表进行合并,生成目标数据表;
在判断表相似度超过预设的阈值时,将待合并表与该待匹配表进行合并,具体的,可以将数据表中不同的字段保留,而相同的字段则只保留其中一个,从而得到由待合并表和至少一个待匹配表合并而成的目标数据表。
步骤105,存储所述目标数据表。
得到目标数据表后,可以将目标数据表进行存储,并删除用于生成该目标数据表的待合并表和待匹配表。
在本发明实施例中,接收表元数据和任务元数据,将表元数据和任务元数据输入构建的表相似度识别模型,获取待合并表与多个待匹配表之间的表相似度,判断表相似度是否超过预设阈值,若是,则将待合并表与待匹配表进行合并,生成目标数据表,存储目标数据表。从而可以将重复或相似的数据表进行合并存储,减少了数据表存储所占用的存储空间,节约了存储资源。
参考图2,示出了本发明的另一种数据的存储方法实施例的步骤流程图,所述数据以数据表的形式进行存储,所述数据表包括待合并表和待匹配表,所述数据表具有对应的表元数据和任务元数据,具体可以包括如下步骤:
步骤201,接收所述表元数据和所述任务元数据;
由于步骤201与上一实施例中步骤101类似,具体描述可参照上一实施例中步骤101,在此不再赘述。
步骤202,对所述表元数据进行数据清洗,获取目标表元数据;
由于接收的表元数据为未经筛选的原始数据,其中不仅包含计算表相似度所需要的数据,还包含了不必要的数据,而且原始数据排列较为分散,杂乱,不利于确定计算相似度所需要的的数据,因此可以对表元数据进行数据清洗,过滤不必要的数据,且对所需要的数据进行整理,得到目标表元数据。
在本发明一种可选实施例中,所述步骤202还包括如下子步骤:
对所述表元数据进行过滤,保留预设字段且为所述预设字段构建字段名称;
计算预设时间内的所述数据表的数据量;
采用所述数据量、所述预设字段以及所述字段名称生成目标表元数据。
具体的,需要进行合并的数据表为常驻的,日常周期性的数据表,该类数据表需要长期保存在存储设备中,因此有合并的需求,对表元数据进行过滤,将临时生成,不会长期保留的数据表以及常驻的数据表中的不必要字段去除,保留计算表相似度所需的字段。例如,可以保留字段project_name(项目名)、字段table_name(表名)、column_name(列名),在保留了字段后,为了方便对数据进行读取,再构建ID(Identity document,身份标识号),例如project_name、table_name,将保留的字段中属于相同类别的字段放入构建的ID中,从而对字段进行分类。又由于数据表的数据量可能在不同的时间会有差别,因此,可以计算预设时间内数据表的平均数据量,例如可计算7天内数据表的平均数据量。采用保留的字段、构建的ID还有计算的平均数据量生成目标表元数据。
步骤203,对所述任务元数据进行数据清洗,获取目标任务元数据;
由于接收的任务元数据为未经筛选的原始数据,其中不仅包含计算表相似度所需要的数据,还包含了不必要的数据,而且原始数据排列较为分散,杂乱,不利于确定计算相似度所需要的的数据,因此可以对任务元数据进行数据清洗,过滤不必要的数据,且对所需要的数据进行整理,得到目标任务元数据。如图3所示,为一种目标任务元数据的示意图,该目标任务元数据为一个数据表的目标任务元数据,其中包括了id、table_name、cols和rows,其中id为该数据表的id,table_name则是该数据表的表名,cols包括了该数据表中所有的字段,rows则为预设时间内的数据量平均值。
在本发明一种可选实施例中,所述步骤203,还包括如下子步骤:
去除所述任务元数据中的非周期任务,获得周期任务元数据;
对所述周期任务元数据进行分解,获得单任务元数据;所述单任务元数据包含自依赖任务;
对所述单任务元数据进行过滤,去除自依赖任务,获得目标单任务元数据;
基于所述目标单任务元数据,获取与所述数据表对应的数据血缘表;
采用所述数据血缘表生成目标任务元数据。
具体的,可以对任务元数据进行清洗,获取数据表的数据血缘表。数据血缘表用于表明数据表与数据表之间的关系,例如现在数据表A和数据表B,而执行任务输入数据表A,然后输入了数据表B,则认为数据表A和数据表B之间存在有数据血缘关系,即数据血缘表是表明数据表与数据表之间输入、输出关系的表。对数据表执行的任务按照执行的时间和次数则可以分为周期任务和非周期任务,周期任务为定期执行固定次数的任务,例如每天执行2次,而非周期任务则是无规律执行的任务,例如临时对数据表执行的操作,执行的次数不定,也并未规定执行的时间。由于非周期任务相对于周期任务而言一般数量较少且无明显规律,不具备参考意义,因此可以将任务元数据中的非周期任务去除,只留下周期任务元数据。而对于周期任务元数据来说,对数据表执行的任务很多时候并不是单次的,即数据表与数据表之间的数据血缘关系包括多层关系,因此可以对周期任务元数据进行分解,得到多个只有一层的单任务元数据,例如现有数据表A、数据表B和数据表C,而输入数据表A后输出数据表B,数据表B经过处理后得到数据表C,则可以分解为单任务元数据:“输入:数据表A;输出:数据表B”和“输入:数据表B;输出:数据表C”。需要注意的是单任务元数据中还包含有自依赖任务,自依赖任务指数据表与其他数据表之间不存在数据血缘关系的任务,对数据表执行自依赖任务并不会输出其他数据表,因此将自依赖任务去除,得到目标单任务元数据,采用所有目标单任务元数据,形成数据血缘表,将数据血缘表作为目标任务元数据。
步骤204,将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度;
在本发明一种可选实施例中,所述表相识度包括表名相似度、字段相似度、数据量相似度和血缘关系相似度,所述目标表元数据包括所述数据表的表名、预设字段以及数据量,所述目标任务元数据包括所述数据血缘表,所述步骤204包括如下子步骤:
采用所述待合并表的第一表名和所述待匹配表的第二表名,通过表相似度识别模型获取所述表名相似度;
采用所述待合并表的第一预设字段和所述待匹配表的第二预设字段,通过表相似度识别模型获取所述字段相似度;
采用所述待合并表的第一数据量和所述待匹配表的第二数据量,通过表相似度识别模型获取所述数据量相似度;
采用所述待合并表的第一数据血缘表和所述待匹配表的第二数据血缘表,通过表相似度识别模型获取所述血缘关系相似度。
具体的,为了衡量待合并表与待匹配表之间的相似程度,可以从四个维度进行考量,分别为表名相似度、字段相似度、数据量相似度和血缘关系相似度。因此表相似度识别模型可以采用待合并表的表名和待匹配表的表名来计算待合并表和待匹配表之间的表名相似度。具体的,表相似度识别模型中表名相似度的计算方式可以为“表名相似度=1-最小编辑距离/Max(Len(A表名),Len(B表名))”,其中,最小编辑距离为用户自定义函数,可以利用ApacheCommons库实现对LevenshteinDistance函数的自定义,其中ApacheCommons库为一种java工具包,LevenshteinDistance函数为指两个字符串之间,由一个转成另一个所需要的最小编辑操作次数,一般来说,编辑距离越小,两个字符串的相似度越大。“Max(Len(A表名),Len(B表名))”表示返回数据表A和数据表B中表名的字符数较大的一个。根据该计算方式对数据表table_name字段进行自交叉关联计算即可得到待合并表和待匹配表之间的表名相似度。
而对于字段相似度,表相似度识别模型可以采用待合并表的预设字段和待匹配表的预设字段来计算待合并表和待匹配表之间的字段相似度。表相似度识别模型中字段相似度的计算方式可以为“字段相似度=1-Len(字段交集)/Len(A表字段union B表字段)”,其中“Len(字段交集)”指的是数据表A与数据表B中具有交集的字段的数量,“Len(A表字段union B表字段)”指数据表A与数据表B字段合并后统计得到的总字段数,该计算方式可以通过array_intersect用户自定义函数对数据表的table_name字段进行自交叉关联计算实现,该函数可以返回在不同数据表字段中的相同的参数的值。
对于数据量相似度,表相似度识别模型可以采用待合并表的数据量和待匹配表的数据量来计算待合并表和待匹配表之间的数据量相似度。表相似度识别模型中数据量相似度的计算方式可以为“数据量相似度=1-Abs(A表数据量-B表数据量)/MAX(A表数据量,B表数据量)”,其中“Abs(A表数据量-B表数据量)”为数据表A的数据量减去数据表B的数据量后得到的数值的绝对值,“MAX(A表数据量,B表数据量)”为取数据表A的数据量和数据表B的数据量之中较大的值,根据该计算方法即可湖区待合并表和待匹配表之间的数据量相似度。
对于血缘关系相似度,表相似度识别模型可以采用待合并表的数据血缘表和待匹配表的数据血缘表来计算待合并表和待匹配表之间的血缘关系相似度。表相似度识别模型中血缘关系相似度的计算方式可以为“1-Len(血缘根节点交集)/Len(A表血缘根节点unionB表血缘根节点)”,其中“Len(血缘根节点交集)”指数据表A的数据血缘表中的血缘根节点,和数据表B的数据血缘表中的血缘根节点之间具有交集的个数,而“Len(A表血缘根节点union B表血缘根节点)”则是指数据表A的数据血缘表中的血缘根节点,和数据表B的数据血缘表中的血缘根节点进行合并后得到的血缘根节点总数,该计算方式可通过array_intersect用户自定义函数实现,从而获得待合并表和待匹配表之间的血缘关系相似度。如图4所示,为一种待合并表与待匹配表之间表相似度的示意图,列301为待合并表,而列302则为多个待匹配表,针对每个待匹配表,通过表相似度识别模型均计算出其与待合并表之间的表名相似度、字段相似度、数据量相似度和血缘关系相似度。
在本发明一种可选实施例中,所述采用所述待合并表的第一数据血缘表和所述待匹配表的第二数据血缘表,通过表相似度识别模型获取所述血缘关系相似度的步骤,还包括如下子步骤:
遍历所述第一数据血缘表和所述第二数据血缘表;
确定所述第一数据血缘表中的第一血缘根节点,以及所述第二数据血缘表中的第二血缘根节点;
采用所述第一血缘根节点和所述第二血缘根节点,通过表相似度识别模型获取所述血缘关系相似度。
具体的,由于数据血缘表一般为树状图,因此要确定血缘根节点则需要遍历数据血缘表的所有树杈,具体的,可以采用Python模拟队列实现多叉树全遍历search_roots函数,通过该函数沿着血缘关系不断向上探索直到找到所有血缘根节点,通过表相似度识别模型,采用找到的血缘根节点即可计算得到血缘关系相似度。
步骤205,基于所述表相似度,将所述待匹配表按照预设的顺序进行排列;
具体的,在获取表相似度后,还可以将待匹配表按照表相似度的大小顺序进行排列并显示给用户,用户也可以从表名相似度、字段相似度、数据量相似度和血缘关系相似度中选择一个,从而使待匹配表按照所选择的相似度的大小顺序进行排列显示。
步骤206,判断所述表相似度是否超过预设阈值;
在获取了表相似度后,可以判断表相似度是否超过了预设的阈值,超过了预设的阈值,即证明待合并表与该待匹配表之间重复或相似的数据较多。具体的,可以对表名相似度、字段相似度、数据量相似度和血缘关系相似度设置不同的权重,通过对四个相似度进行加权,基于加权后的表总相似度判断是否超过预设阈值,从而决定是否对数据表进行合并。
步骤207,若是,则将所述待合并表与所述待匹配表进行合并,生成目标数据表;
步骤208,存储所述目标数据表。
由于步骤207和208与上一实施例中步骤104和105类似,具体描述可参照上一实施例中步骤104和105,在此不再赘述。
在本发明实施例中,通过接收表元数据和任务元数据,对表元数据进行数据清洗,获取目标表元数据,对任务元数据进行数据清洗,获取目标任务元数据,将表元数据和任务元数据输入构建的表相似度识别模型,获取待合并表与多个待匹配表之间的表相似度,基于表相似度,将待匹配表按照预设的顺序进行排列,判断表相似度是否超过预设阈值,若是,则将待合并表与待匹配表进行合并,生成目标数据表,存储目标数据表,通过对数据进行清洗,提高了表相似度的获取效率,从而提高了对待合并表和待匹配表的处理速度。
为了方便技术人员进一步加深对本发明的理解,下面示出一种本发明的数据流程图。
如图5所示,为本发明的一种数据流程图,获取数据表的表元数据和任务元数据后,对表元数据和任务元数据进行数据清洗得到目标表元数据和目标任务元数据,将目标表元数据和目标任务元数据输入表相似度识别模型中得到表名相似度、字段相似度、数据量相似度和血缘关系相似度,根据多个相似度判断待合并表和待匹配表是否需要合并,将需要合并的数据表进行合并后得到目标数据表并进行存储,从而使得用户可以采用存储的目标数据表进行日常工作以及进行决策支持,既节约了存储空间,又不影响用户对数据表的使用。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图6,示出了本发明的一种数据的存储装置实施例的结构框图,所述数据以数据表的形式进行存储,所述数据表包括待合并表和待匹配表,所述数据表具有对应的表元数据和任务元数据,具体可以包括如下模块:
接收模块401,用于接收所述表元数据和所述任务元数据;
表相似度获取模块402,用于将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度;
判断模块403,用于判断所述表相似度是否超过预设阈值;
目标数据表生成模块404,用于若所述表相似度超过预设阈值,则将所述待合并表与所述待匹配表进行合并,生成目标数据表;
存储模块405,用于存储所述目标数据表。
在本发明一实施例中,所述装置还包括:
表元数据清洗模块,用于对所述表元数据进行数据清洗,获取目标表元数据;
任务元数据清洗模块,用于对所述任务元数据进行数据清洗,获取目标任务元数据。
在本发明一实施例中,所述表元数据清洗模块包括:
表元数据过滤子模块,用于对所述表元数据进行过滤,保留预设字段且为所述预设字段构建字段名称;
数据量计算子模块,用于计算预设时间内的所述数据表的数据量;
目标表元数据生成子模块。
在本发明一实施例中,所述任务元数据清洗模块包括:
周期任务元数据获取子模块,用于去除所述任务元数据中的非周期任务,获得周期任务元数据;
单任务元数据获取子模块,用于对所述周期任务元数据进行分解,获得单任务元数据;所述单任务元数据包含自依赖任务;
目标单任务元数据获取子模块,用于对所述单任务元数据进行过滤,去除自依赖任务,获得目标单任务元数据;
数据血缘表获取子模块,用于基于所述目标单任务元数据,获取与所述数据表对应的数据血缘表;
目标任务元数据生成子模块,用于采用所述数据血缘表生成目标任务元数据。
在本发明一实施例中,所述表相识度包括表名相似度、字段相似度、数据量相似度和血缘关系相似度,所述目标表元数据包括所述数据表的表名、预设字段以及数据量,所述目标任务元数据包括所述数据血缘表,所述表相似度获取模块402还包括:
表名相似度获取子模块,用于采用所述待合并表的第一表名和所述待匹配表的第二表名,通过表相似度识别模型获取所述表名相似度;
字段相似度获取子模块,用于采用所述待合并表的第一预设字段和所述待匹配表的第二预设字段,通过表相似度识别模型获取所述字段相似度;
数据量相似度获取子模块,用于采用所述待合并表的第一数据量和所述待匹配表的第二数据量,通过表相似度识别模型获取所述数据量相似度;
血缘关系相似度获取子模块,用于采用所述待合并表的第一数据血缘表和所述待匹配表的第二数据血缘表,通过表相似度识别模型获取所述血缘关系相似度。
在本发明一实施例中,所述装置还包括:
排列模块,用于基于所述表相似度,将所述待匹配表按照预设的顺序进行排列。
在本发明一实施例中,所述血缘关系相似度获取子模块还包括:
遍历单元,用于遍历所述第一数据血缘表和所述第二数据血缘表;
血缘根节点确定单元,用于确定所述第一数据血缘表中的第一血缘根节点,以及所述第二数据血缘表中的第二血缘根节点;
获取单元,用于采用所述第一血缘根节点和所述第二血缘根节点,通过表相似度识别模型获取所述血缘关系相似度。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还公开了一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。
本发明实施例还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种数据的存储方法和一种数据的存储装置、电子设备和可读介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种数据的存储方法,其特征在于,所述数据以数据表的形式进行存储,所述数据表包括待合并表和待匹配表,所述数据表具有对应的表元数据和任务元数据,所述方法包括:
接收所述表元数据和所述任务元数据;
将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度;
判断所述表相似度是否超过预设阈值;
若是,则将所述待合并表与所述待匹配表进行合并,生成目标数据表;
存储所述目标数据表。
2.根据权利要求1所述的方法,其特征在于,所述接收所述表元数据和所述任务元数据的步骤之后,还包括:
对所述表元数据进行数据清洗,获取目标表元数据;
对所述任务元数据进行数据清洗,获取目标任务元数据。
3.根据权利要求2所述的方法,其特征在于,所述对所述表元数据进行数据清洗,获取目标表元数据的步骤,包括:
对所述表元数据进行过滤,保留预设字段且为所述预设字段构建字段名称;
计算预设时间内的所述数据表的数据量;
采用所述数据量、所述预设字段以及所述字段名称生成目标表元数据。
4.根据权利要求3所述的方法,其特征在于,所述对所述任务元数据进行数据清洗,获取目标任务元数据的步骤,包括:
去除所述任务元数据中的非周期任务,获得周期任务元数据;
对所述周期任务元数据进行分解,获得单任务元数据;所述单任务元数据包含自依赖任务;
对所述单任务元数据进行过滤,去除自依赖任务,获得目标单任务元数据;
基于所述目标单任务元数据,获取与所述数据表对应的数据血缘表;
采用所述数据血缘表生成目标任务元数据。
5.根据权利要求4所述的方法,其特征在于,所述表相识度包括表名相似度、字段相似度、数据量相似度和血缘关系相似度,所述目标表元数据包括所述数据表的表名、预设字段以及数据量,所述目标任务元数据包括所述数据血缘表,所述将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度的步骤,包括:
采用所述待合并表的第一表名和所述待匹配表的第二表名,通过表相似度识别模型获取所述表名相似度;
采用所述待合并表的第一预设字段和所述待匹配表的第二预设字段,通过表相似度识别模型获取所述字段相似度;
采用所述待合并表的第一数据量和所述待匹配表的第二数据量,通过表相似度识别模型获取所述数据量相似度;
采用所述待合并表的第一数据血缘表和所述待匹配表的第二数据血缘表,通过表相似度识别模型获取所述血缘关系相似度。
6.根据权利要求5所述的方法,其特征在于,所述将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度的步骤之后,还包括:
基于所述表相似度,将所述待匹配表按照预设的顺序进行排列。
7.根据权利要求5所述的方法,其特征在于,所述数据血缘表包括根节点,所述采用所述待合并表的第一数据血缘表和所述待匹配表的第二数据血缘表,通过表相似度识别模型获取所述血缘关系相似度的步骤,包括:
遍历所述第一数据血缘表和所述第二数据血缘表;
确定所述第一数据血缘表中的第一血缘根节点,以及所述第二数据血缘表中的第二血缘根节点;
采用所述第一血缘根节点和所述第二血缘根节点,通过表相似度识别模型获取所述血缘关系相似度。
8.一种数据的存储装置,其特征在于,所述数据以数据表的形式进行存储,所述数据表包括待合并表和待匹配表,所述数据表具有对应的表元数据和任务元数据,所述装置包括:
接收模块,用于接收所述表元数据和所述任务元数据;
表相似度获取模块,用于将所述表元数据和所述任务元数据输入构建的表相似度识别模型,获取所述待合并表与多个所述待匹配表之间的表相似度;
判断模块,用于判断所述表相似度是否超过预设阈值;
目标数据表生成模块,用于若所述表相似度超过预设阈值,则将所述待合并表与所述待匹配表进行合并,生成目标数据表;
存储模块,用于存储所述目标数据表。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的一个或多个的方法。
10.一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的一个或多个的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011447767.0A CN112597154A (zh) | 2020-12-11 | 2020-12-11 | 一种数据的存储方法、装置、电子设备、可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011447767.0A CN112597154A (zh) | 2020-12-11 | 2020-12-11 | 一种数据的存储方法、装置、电子设备、可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112597154A true CN112597154A (zh) | 2021-04-02 |
Family
ID=75191902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011447767.0A Pending CN112597154A (zh) | 2020-12-11 | 2020-12-11 | 一种数据的存储方法、装置、电子设备、可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112597154A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268485A (zh) * | 2021-06-02 | 2021-08-17 | 电信科学技术第十研究所有限公司 | 数据表关联分析方法、装置、设备及存储介质 |
CN113360496A (zh) * | 2021-05-26 | 2021-09-07 | 国网能源研究院有限公司 | 一种构建元数据标签库的方法及装置 |
CN115952174A (zh) * | 2023-03-13 | 2023-04-11 | 青岛庚泽信息技术有限公司 | 一种数据表联接方法、系统、终端及存储介质 |
CN118277426A (zh) * | 2023-01-13 | 2024-07-02 | 企知道科技有限公司 | 一种基于数据摘要对比的数据质量检测方法和终端 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012181605A (ja) * | 2011-02-28 | 2012-09-20 | Toshiba Corp | データ分析支援装置およびプログラム |
CN106294429A (zh) * | 2015-05-26 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 重复数据识别方法和装置 |
CN106897385A (zh) * | 2017-01-23 | 2017-06-27 | 武汉迎风聚智科技有限公司 | 一种基于关联矩阵的不确定数据连接合并算法 |
CN111627552A (zh) * | 2020-04-08 | 2020-09-04 | 湖南长城医疗科技有限公司 | 一种医疗流式数据血缘关系分析、存储方法及装置 |
CN111723210A (zh) * | 2020-06-29 | 2020-09-29 | 深圳壹账通智能科技有限公司 | 存储数据表的方法、装置、计算机设备及可读存储介质 |
CN111831629A (zh) * | 2019-04-15 | 2020-10-27 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
CN112035480A (zh) * | 2020-08-31 | 2020-12-04 | 中国平安财产保险股份有限公司 | 数据表管理方法、装置、设备及存储介质 |
-
2020
- 2020-12-11 CN CN202011447767.0A patent/CN112597154A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012181605A (ja) * | 2011-02-28 | 2012-09-20 | Toshiba Corp | データ分析支援装置およびプログラム |
CN106294429A (zh) * | 2015-05-26 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 重复数据识别方法和装置 |
CN106897385A (zh) * | 2017-01-23 | 2017-06-27 | 武汉迎风聚智科技有限公司 | 一种基于关联矩阵的不确定数据连接合并算法 |
CN111831629A (zh) * | 2019-04-15 | 2020-10-27 | 阿里巴巴集团控股有限公司 | 一种数据处理方法及装置 |
CN111627552A (zh) * | 2020-04-08 | 2020-09-04 | 湖南长城医疗科技有限公司 | 一种医疗流式数据血缘关系分析、存储方法及装置 |
CN111723210A (zh) * | 2020-06-29 | 2020-09-29 | 深圳壹账通智能科技有限公司 | 存储数据表的方法、装置、计算机设备及可读存储介质 |
CN112035480A (zh) * | 2020-08-31 | 2020-12-04 | 中国平安财产保险股份有限公司 | 数据表管理方法、装置、设备及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360496A (zh) * | 2021-05-26 | 2021-09-07 | 国网能源研究院有限公司 | 一种构建元数据标签库的方法及装置 |
CN113360496B (zh) * | 2021-05-26 | 2024-05-14 | 国网能源研究院有限公司 | 一种构建元数据标签库的方法及装置 |
CN113268485A (zh) * | 2021-06-02 | 2021-08-17 | 电信科学技术第十研究所有限公司 | 数据表关联分析方法、装置、设备及存储介质 |
CN113268485B (zh) * | 2021-06-02 | 2024-02-09 | 电信科学技术第十研究所有限公司 | 数据表关联分析方法、装置、设备及存储介质 |
CN118277426A (zh) * | 2023-01-13 | 2024-07-02 | 企知道科技有限公司 | 一种基于数据摘要对比的数据质量检测方法和终端 |
CN115952174A (zh) * | 2023-03-13 | 2023-04-11 | 青岛庚泽信息技术有限公司 | 一种数据表联接方法、系统、终端及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112597154A (zh) | 一种数据的存储方法、装置、电子设备、可读介质 | |
CN111831629B (zh) | 一种数据处理方法及装置 | |
CN109241278B (zh) | 科研知识管理方法及系统 | |
CN109784365B (zh) | 一种特征选择方法、终端、可读介质及计算机程序 | |
CN109656928B (zh) | 表间关系获得方法及装置 | |
CN111967521B (zh) | 跨境活跃用户识别方法及装置 | |
US20060184474A1 (en) | Data analysis apparatus, data analysis program, and data analysis method | |
CN110858219A (zh) | 物流对象信息处理方法、装置及计算机系统 | |
CN111680085A (zh) | 数据处理任务分析方法、装置、电子设备和可读存储介质 | |
CN110347934B (zh) | 一种文本数据过滤方法、装置及介质 | |
CN115016735A (zh) | 一种分布式缓存系统的控制方法、装置及介质 | |
CN110968802A (zh) | 一种用户特征的分析方法、分析装置及可读存储介质 | |
CN108629592B (zh) | 一种结算配置方法及装置和电子设备 | |
CN113344023A (zh) | 一种代码推荐方法、装置及系统 | |
CN110765100B (zh) | 标签的生成方法、装置、计算机可读存储介质及服务器 | |
CN110781211B (zh) | 一种数据的解析方法及装置 | |
US20160335300A1 (en) | Searching Large Data Space for Statistically Significant Patterns | |
CN107577690B (zh) | 海量信息数据的推荐方法及推荐装置 | |
CN114493279A (zh) | 一种工作流任务预测方法、装置、存储介质及电子设备 | |
CN113127461B (zh) | 一种数据清洗方法、装置、电子设备及存储介质 | |
CN110413899B (zh) | 服务器存储新闻的存储资源优化方法及系统 | |
CN113610629A (zh) | 一种从大规模特征集中筛选客户数据特征的方法及装置 | |
CN112765305A (zh) | 作者的兴趣主题的分析方法、装置、电子设备及存储介质 | |
CN106547907B (zh) | 一种频繁项集获取方法及装置 | |
CN116541382B (zh) | 基于数据安全识别级别的数据治理方法及系统 |
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 |