CN114372083A - 元数据分析方法及装置 - Google Patents
元数据分析方法及装置 Download PDFInfo
- Publication number
- CN114372083A CN114372083A CN202210016788.XA CN202210016788A CN114372083A CN 114372083 A CN114372083 A CN 114372083A CN 202210016788 A CN202210016788 A CN 202210016788A CN 114372083 A CN114372083 A CN 114372083A
- Authority
- CN
- China
- Prior art keywords
- data
- effective
- table data
- matching
- script
- 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
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/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- 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/24—Querying
- G06F16/242—Query formulation
- G06F16/243—Natural language query formulation
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种元数据分析方法及装置,属于金融技术领域或其他技术领域。该元数据分析方法包括:根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言;对有效结构化查询语言进行分词处理得到有效词语,根据有效词语与表名称列表的匹配结果确定匹配范围;将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。本发明可以快速检索到有效的元数据信息,提高元数据分析的通用性。
Description
技术领域
本发明涉及金融技术领域,具体地,涉及一种元数据分析方法及装置。
背景技术
当前对于SQL语法分析有很多工具,比如基于java开发的ANTLR,apache旗下的druid和基于C语言开发的lex和yacc等。这类工具的核心思想是根据SQL(StructuredQuery Lan guage,结构化查询语言)语法特性的进行分词,再根据语法规则进行语义分析,之后统计出对应语句的基本逻辑,进行元数据分析。这些已有的工具能解决一些常见的统计需求,但是对于一些特定的场景,也存在一定弊端:
1.已有分析工具只针对SQL结构的语法才能进行分析,但是通常企业中的SQL是依托于一个完整的脚本来实现的,其中不止包含SQL语句。在这种场景下,单纯的去解析SQL语法显然是无法做到的。
2.SQL语法针对不同数据库的语义有很大差异,很难做到一个工具能兼顾到市面主流数据库语法的情况,遇到无法解析的语法,程序会直接退出或报异常导致分析失败。
3.自动化功能需要额外开发,已有工具提供了语义分析与解析,但是想和现有系统对接需要额外开发,如果想批量分析语法和语义必须进行二次开发以适配企业相关系统。
4.分析内容无法定制化,利用工具可以解析一些常见元数据信息,包括列的分析以及表的名称,但是针对脚本等复杂语法,很难再深入挖掘出更关键的信息,比如源表与目标表,调用的存储过程或者一些特殊语法的使用情况等。
5.分析内容存在过多冗余或无效结果。通常在开发脚本语言时,比较常用到的是临时表或者中间结果表,这种表的生命周期只存在于脚本执行期间,而这些往往是企业后期分析元数据时不需要关注的,已有工具不能做到很好的剔除。
发明内容
本发明实施例的主要目的在于提供一种元数据分析方法及装置,以快速检索到有效的元数据信息,提高元数据分析的通用性。
为了实现上述目的,本发明实施例提供一种元数据分析方法,包括:
根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言;
对有效结构化查询语言进行分词处理得到有效词语,根据有效词语与表名称列表的匹配结果确定匹配范围;
将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
本发明实施例还提供一种元数据分析装置,包括:
筛选模块,用于根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言;
匹配范围模块,用于对有效结构化查询语言进行分词处理得到有效词语,根据有效词语与表名称列表的匹配结果确定匹配范围;
匹配模块,用于将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并在处理器上运行的计算机程序,处理器执行计算机程序时实现所述的元数据分析方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现所述的元数据分析方法的步骤。
本发明实施例的元数据分析方法及装置先根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言,再对有效结构化查询语言进行分词处理后与表名称列表的匹配结果确定匹配范围,最后将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据,可以快速检索到有效的元数据信息,提高元数据分析的通用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中元数据分析方法的流程图;
图2是本发明另一实施例中元数据分析方法的流程图;
图3是本发明又一实施例中元数据分析方法的流程图;
图4是本发明实施例中获取源表数据和目标表数据的流程图;
图5是本发明实施例中生成元数据分析结果的流程图;
图6是本发明实施例中S301的流程图;
图7是本发明实施例中表流向示意图;
图8是本发明实施例中元数据分析装置的结构框图;
图9是本发明实施例中计算机设备的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
需要说明的是,本发明的元数据分析方法及装置可用于金融领域的元数据分析场景中,也可用于除金融领域之外的任意领域。本发明实施例对元数据分析方法及装置的应用领域不做限定。
鉴于现有技术存在无法深入挖掘出更关键的信息,不能有效剔除冗余或无效结果,本发明实施例提供一种元数据分析方法,可以很快检索到脚本中的元数据信息并对其所属的业务类别进行判断。本发明涉及企业中SQL开发的脚本中的语法分析,以MPPDB数据仓库语言为例,用于对SQL文本中的源表、目标表以及存储过程的使用情况进行统计分析,不单一分析一条SQL语法,而是从脚本的视角出发,以脚本为整个单位作为分析对象针对MPPDB数据仓库的语法特性进行针对性的算法设计,通过自动化程序的方式统计出脚本中的元数据信息,帮助企业快速定位该脚本的作用。元数据信息在发明中指的是脚本中的元数据信息。本发明对脚本中用到的源表和目标表进行挖掘,并在此基础上提出业务分类的模糊聚类算法,以源表为基准将目标表进行业务类型的归属判断,从而辅助企业梳理自身的数据资产,为相关数据分析和数据库的定期维护打下坚实的基础,也为企业数据资产的识别管理提供有力的支持。以下结合附图对本发明进行详细说明。
与现有工具不同的是,本发明在已知全量库表名称基础上,先在脚本中找寻名称一致的数据表,再根据前置关键字定位该表是源表或是目标表,而不是单一通过SQL语义去识别元数据信息。图1是本发明实施例中元数据分析方法的流程图。图2是本发明另一实施例中元数据分析方法的流程图。图3是本发明又一实施例中元数据分析方法的流程图。如图1-图3所示,元数据分析方法包括:
S101:根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言。
现有技术鲜有涉及MPPDB数据库的元数据分析,本发明中提及的脚本为MPPDB数据仓库相关脚本,主要包含两类:
1、存储过程脚本,即数据库导出存储过程定义后保存的SQL文件。
2、多条SQL语句组合实现某一功能的加载脚本,加载脚本以PERL语言开发的脚本为例。
在执行S101之前,还包括:
1)对脚本进行格式化处理。
脚本分布在多个文件夹层级中,工具根据文件层级逐层检索。为了区分不同脚本,通常企业会将执行相同功能的脚本放置到同一个目录下,之后通过文件夹的名字来标识这一系列脚本所表达的相似功能。有些比较特殊的会在一个功能目录下再包含多层级的文件夹,只将实际执行的脚本放置到文件最后一层。针对这些情况,需要在遍历文件夹的同时将文件夹本身的名字予以保留,在获取文件夹内实际脚本的同时,将文件名称作为脚本的另外一标识和脚本名称合并共同作为新的脚本的名称以便于后续分析的记录。本发明的格式化处理包括:
1、为了保证只识别到需要处理的脚本文件,将文件后缀为.pl(PERL脚本独有的后缀)的脚本进行获取,同时将脚本名称统一格式化为小写,将脚本重命名为“文件夹1_文件夹2_……_脚本名称.pl”(小写)的格式。
针对存储过程脚本,导出整个MPPDB数据库相关存储过程的定义,在整个定义脚本中将其拆分为单独的单个存储过程脚本的形式,将每一个存储过程定义单独存储为一个脚本文件,名称格式为“存储过程名称.sql”的形式,将处理好的文本汇总到一个文件目录后用于后续统计分析。
2、对统计汇总后的脚本注释进行识别和剔除。由于注释主要是帮助后续开发人员阅读脚本逻辑的,主要目的是辅助理解脚本逻辑,但是会对元数据的分析起到干扰的作用。注释中存在的表名或者其他元数据信息会干扰最终的统计结果,需要进行删除。PERL脚本和存储过程脚本支持的注释语法主要有三种,包括符号“#这是注释”,“--这是注释”,“/*这是注释*/”,通过程序模块对三种注释及其可能出现的排列组合(例如/*--这是注释*/)进行全部替换。
3、变量名称格式化。通常企业为了简化开发统一管理,对库名等系统关键参数会进行环境变量的定义。变量主要分为两类,一类是环境变量,这类变量值是固定的一些系统参数,每个脚本都是同样的数值,对其进行直接替换即可;一类是脚本内变量,这类变量针对不同脚本有不同的定义,需要对其进行变量值识别,进行替换,针对每个脚本的自定义变量还原其最原始的值保证元数据分析的准确。
4、文本内容格式化。对已经汇总好的脚本进行格式上的调整,在不改变脚本本身逻辑的前提下,对内容进行格式化,为后续实际分析减少干扰项。格式化主要进行以下工作:对文本中的英文字符小写化处理;将文本中多个空格或制表符统一转换为一个空格,同时删除掉每条语句前后的空格;将脚本文件字符统一转换为GBK编码。
2)获取全量表名称生成表名称列表。
具体实施时,导出数据库表中所有表的名称,格式为“数据库名称.数据表名称”或“数据表名称”,统一进行小写化处理便于后续匹配,将其记录在文本文件中作为基础搜索库,后续脚本中的表名搜索都基于表名称列表tableList,其中的某一个表可以命名为tableN。
3)切割脚本内容。
针对PERL脚本或者存储过程脚本来说,多条语句之间必须用“;”来进行区分,否则不符合基本语法规则。基于此种基本规则,程序可以通过“;”将脚本中的多条SQL语句单独切割出来,将脚本中的所有语句切割完后作为一个分析集合等待后续进一步处理,将该集合命名为结构化查询语言语句集fileContextList。
PERL脚本或者存储过程语法灵活,虽然已对脚本内容进行了切割,但是其中真正有效的SQL语句并没有被完全筛选出来。此时只需要分析对元数据统计有价值的信息即可。为了保留有效信息,需要识别单个子句中是否包含库中实际包含的库名。因此在具体实施时,S101包括:
循环遍历fileContextList,将其中包含表名称列表tableList的子句筛选出来。将筛选结果作为有效分析SQL对象集合,并将其命名为有效结构化查询语言语句集valueFileContextList。在此基础上,将其中的一条完整结构化查询语言SQL命名为有效结构化查询语言valueFileContextN。这样做一方面可以剔除掉脚本中的非SQL语句部分,一方面对于不存在于数据库中的实体表的相关语句也进行了剔除,最大限度的剔除了干扰信息。
S102:对有效结构化查询语言进行分词处理得到有效词语,根据有效词语与表名称列表的匹配结果确定匹配范围。
具体实施时,SQL语句多个关键词之间通常需要指定字符来区分不同单词,因此需要根据以下字符将有效结构化查询语言valueFileContextN中的内容进行分词:逗号(,),英文单引号('),英文双引号("),左括号((),右括号()),等于号(=),小于号(<),大于号(>),空格符()和制表符()。将切分好的词组命名为有效词语列表wordList,将结果保存起来用于后续关键字匹配,其中单个单词命名为有效词语wordN。
由于SQL语法中关于源表和目标表等信息都是在表名的前置位出现,因此采用从后向前遍历的方式,从有效词语列表中最后一个有效词语wordN开始,逐个与表名称列表tableList中的表名称tableN做等值匹配,直到遇到第一个匹配值后,作为后续遍历的起始位置,此时匹配范围为有效词语列表中的第一个有效词语至起始位置的有效词语。例如,设wordList中共有N个有效词语,从后遍历到第M个有效词语时匹配成功,则将wordList的第N-M个有效词语作为第二次遍历的起始位置,此时匹配范围为有效词语列表中的第一个有效词语至第N-M个有效词语。
S103:将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
为了找寻源表和目标表的关键标识,本发明建立了关键词集合metaKeywordList,其中某一个关键词命名为keyword。该集合用于后续在匹配到表名后的二次匹配,确认该表是源表还是目标表。在初始阶段,只定义已知符合SQL语法规则的匹配规则。例如,在初始阶段定义如下规则:在有效词语列表wordList匹配到"into","update","insert"和"rename"时,认定该表为目标表;在匹配到关键词"from"和"join"时,认定该表为源表,关键词集合metaKeywordList会根据语法检索不断更新。
本发明在执行S103时为倒序匹配,此时匹配的对象为关键词集合metaKeywordList,通过等值匹配找到该表名对应的关键词keyword。在匹配到关键词后根据规则确定源表数据和目标表数据。
在两次匹配完成后,从wordList的第N-M的位置开始,继续和tableList中的表名称做等值匹配,直到wordList中的所有有效词语都被遍历结束,即完成了该有效结构化查询语言valueFileContextN的全部分析工作。之后再从valueFileContextList中取出下一条有效结构化查询语言valueFileContextN,根据多次遍历的方式倒序匹配,循环往复,直到valueFileContextList的语句全部被处理完,则完成了整个脚本所有语句的元数据分析。
初始的metaKeywordList是根据SQL语法特性进行建立的,很难保证准确且完备。随着遍历次数以及反复修正,才能做到适应各种复杂SQL语法场景。针对模型词完善,主要提出以下策略:
1)将多次遍历中没有在metaKeywordList匹配到的情况作为分析对象,分析没有匹配到的原因,深入挖掘关键词。没有匹配到的原因有以下几种可能:
a.因为数据库版本更新导致的某些关键词发生了变化,此时系统会记录报错信息以及报错发生的位置,并发出警报,之后通过人工手动添加的方式添加新的关键字。将新的关键词补充到metaKeywordList,作为后续重新循环匹配的依据。
b.一些特殊关键词未能匹配,例如关键词"alter","truncate"和"comment"等,这些关键词虽然不作为判断元数据的依据,但是如果提前匹配到则结束此次循环,认为该条语法没有明确的表达出该表的元数据信息,无需对该表名称进行进一步分析,所以也无须在metaKeywordList中添加这些关键词。
c.如果是由于本身该有效词语wordN不应作为元数据被统计出来,则对这种情况进行规避处理,比如某些场景下语句中列的名称会与表的名称相同,那这个列名不应该作为表名称来对待,因此补充metaKeywordList的关键词"select","on"和"where",在前置词匹配过程中如果先遇到这些词语,则认为出现列表同名的情况,提前终止匹配,不把该wordN作为元数据统计的对象。
2)针对多次遍历中已经匹配到前置关键词的结果进行逻辑分析,考虑到脚本的源表和目标表是对开发者意图的提炼,所以该分析有一定主观性,因此在验证准确性时辅以人工对照的方式。从脚本总量中随机抽取1%的脚本,对其进行人工分析,手动标注出所使用的源表及目标表(对临时表进行剔除),将人工统计的结果作为标准结果和程序分析出来的结果进行比对,如果一致,则认为分析正确,否则进一步分析不一致的原因。在解决完程序差异后,继续抽取1%的样本和优化后的程序的分析结果做比较,看结果是否可以一致,如果一致则认为分析模型已相对合理,否则继续分析原因,进一步与优化程序。在优化过程中,如果单纯只靠等值匹配关键词的方法会容易漏掉一些sql语句的特殊语法的情况。针对此种情况,则需要通过正则匹配进行二次匹配,添加特殊规则的筛选逻辑。图4是本发明实施例中获取源表数据和目标表数据的流程图。如图4所示,还包括:
S201:根据有效词语与预设的关键词的匹配结果确定未匹配有效结构化查询语言。
一实施例中,S201包括:根据有效词语与预设的关键词的匹配结果确定未匹配有效词语;确定未匹配有效词语对应的未匹配有效结构化查询语言。
S202:根据预设的表语法格式从未匹配有效结构化查询语言中获取源表数据和目标表数据。
例如,预设的表语法格式包括:
a.语法格式为"create table xxxA as table xxxB with data",将xxxA认定为目标表,xxxB认定为源表。
b.语法格式为"alter table xxxA rename to xxxB",将xxxB认定为目标表,xxxA认定为源表。
c.语法格式为"call procA"或者"perfrom procA",则认为procA为脚本中调用的存储过程信息。
一实施例中,在执行S103之后还包括:根据源表数据、目标表数据和脚本生成表流向数据。在流向数据中,源表和目标表作为每一个流向的节点,脚本本身作为点与点的联系,通过这种抽象方式,可以很好地得到表中数据的走向。
图7是本发明实施例中表流向示意图。如图7所示,本发明取一张只作为源表出现而并没有在脚本作为目标表的数据表作为一个起点,将其命名为table1N(例如table11),通过之前的元数据分析结果得到其所在脚本的集合perl1List,逐个遍历perl1List,统计出所有脚本对应的目标表table2N(例如table21、table22和table23),则可以认为table1N的数据流入到table2N的表中。在此基础上,进一步去遍历table2N,取其中一张表,并得到以该表作为源表出现的所有脚本集合perl2List,逐个遍历perl2List,统计出每个脚本对应的目标表,得到table3N(例如table31、table32和table33)。以此类推,直到遍历到完全没有后续可以分析的脚本后,则得到关于表tale1N所有的流向表信息。
在分析结束后,隐去脚本的信息则可以得到表与表之间的基础关系。以图7为例,table11为初始起点源表,table21、table22和table23为table11的第一层相关表,table31、table32和table33为第二层关系表。逐个分析所有元数据结果,直到每一张只作为源表的数据表都分析完数据的流向,则得到一份完整的基于所有目标表和源表之间联系的数据流向分析,该结果建立了源表和目标表的联系,可以用作后续进一步模糊聚类分析,确定每张表的业务属性。
综上,本发明利用等值匹配与正则匹配相结合的方式,辅以人工识别结果的验证,可以保证模型识别的准确度非常高。
图1所示的元数据分析方法的执行主体可以为计算机。由图1所示的流程可知,本发明实施例的元数据分析方法先根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言,再对有效结构化查询语言进行分词处理后与表名称列表的匹配结果确定匹配范围,最后将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据,可以快速检索到有效的元数据信息,提高元数据分析的通用性。
另外,现有技术针对的是技术层面的分析,如果只是单纯的分析出源表和目标表后而没有进一步给出表相关的业务属性,很难有实际的应用价值。每个表在建立时都会有一定的业务属性,代表了这个表的基础用途和业务需求,随着系统需求的增加,数据库内存储的表已经达到上千上万个,如何对这些表进行梳理分类,建设企业的数据资产成为了一大难题。本发明前期已将所有表进行了源表和目标表的划分,从数据分析的角度出发,通常基础的贴源数据表的量会远少于最终分析后的结果表,这其中贴源表即可理解为元数据中的源表,而分析结果表即为目标表。由此可以定义在所有脚本中只作为源表出现且没有成为过目标表的数据表作为分类的基础,这部分表的数据量只占总量表的少部分,大概在10%左右。本发明通过人工标注的方式,将标注表数据划分到c个符合其业务场景的类别中作为分类的基础源。图5是本发明实施例中生成元数据分析结果的流程图。如图5所示,为了解决上述技术问题,本发明实施例的元数据分析方法还包括:
S301:根据标注表数据对源表数据和目标表数据进行聚类处理,得到表业务种类。
本发明采用了模糊聚类算法。模糊的意思指的是一个事件发生的程度,用在聚类中可以表示一条记录以怎样的概率或者说程度属于第一类业务,又以怎样的程度属于第二类业务等等。由于最终的目标表有可能使用了多个业务类的源表,那么此时他不可能完全属于或者完全不属于哪一类,所以他具体属于哪一张表就具有模糊性,因此模糊概念的提出更能描述现实遇到的问题。模糊的程度可以用模糊函数uA(x)来衡量,它表示的是集合X中的元素x对集合A的隶属程度。跟传统的聚类有所区别的地方是,它改变了传统分类非此即彼的一个现象,一个对象可以以不同的程度同时属于多个类。因此,对于剩余目标表的业务分类,也不是可以完全肯定的将其划分到某一类,而是可以分析出其和哪一类更具有相似度,对数据库中全部的目标表进行聚类,将它们归于与之最相邻的业务类型,从而有效的完成了数据库数据聚类。
数据库模糊聚类算法的输入是一个待聚类的数据集,在这里是剩余没有划分业务场景的所有目标表。每一个数据表都有p个特征,本发明实施例中p的值为2。根据元数据的分析以及初始的源表分类可以把待归类的目标表和已分类的源表的相似度用以下两个特征来表述:
1)单个目标表所用到的源表的特征,包括所有源表中所属的业务类别及占比,这部分特征代表了目标表所用到的源表的数量占比,通过经验可以知道,一个目标表用到的同类型业务指标的源表占比越大,则其更倾向于归为该类业务。
2)单个目标表与其源表的层级关系。如果一个目标表是经过一个源表多次加工,中间产生了很多中间目标表,因此最终的目标表离最初始的源表的“距离”较远,则也可以认为该目标表虽然用到该源表,但是也相对直接由初始源表加工一步到达最终目标表的情况相比,相似程度更低。
结合上述两种特征,本发明将每一个目标表距离所有c个业务特征的距离量化,通过函数uA(x)来表达该表距离某个业务特征的隶属程度。它的输出是一个n行c列的矩阵U,c是业务类别数目,n是数据集中所有表的个数,用这个矩阵就可以表示分类的结果,因为某一列表示的是表对各个业务分类的隶属程度,哪一个隶属程度的值最大,就说明表属于哪一类业务。
还有一个输出是各个类的聚类中心向量集合V,一共有c个元素(表)。每个元素也是有p维的,如下:
X={x1,x2,...,xn},xk∈RP;
本发明的目标函数如下:
其中,X为待分类表xk的集合,xk为根据p个特征得到的第k个待分类表,uij为元素j(某个表)对类别i(业务类别)的隶属程度,dij为欧氏距离下元素j与中心点i之间的距离(关联程度),Jm(U,V)为隶属度矩阵U与聚类中心向量集合V的目标函数,代表各个点(各个表)到各个类(业务类别)的加权距离的和。m是一个模糊化程度的参数,目标函数里面的m值是提前确定好的。m代表的是模糊C平均算法的模糊系数,它可以影响分类的准确程度。这个算法有一个某一个元素对所有类别的隶属程度的值加起来要等于的约束条件。根据经验来说,m选取2.0是比较合理的。
本发明对c的选取定义了一个参数优选方法评价指标L(c)函数,分子表示的是类间距离之和,分母表示的是类内间距之和,因此L(c)的值就越大越好:
根据实际应用结果可以发现c等于7时的聚类效果最好,所以本发明一共设立了七个聚类数目,他们代表了七种业务分类,分别是个人金融业务、个人贷款业务、对公各户业务、个人信贷业务、网上银行手机银行业务、银行卡业务和中间业务缴费业务。
聚类要达到的最终效果就是类内相似度最大,类间相似度最小,这时点和中心的加权距离之和是最小的,所以只要使得目标函数取得最小值就可以了。最优解的表达式是:
对于有约束条件的求极值问题一般使用拉格朗日乘子法解决,构造的拉格朗日函数如下:
图6是本发明实施例中S301的流程图。如图6所示,S301包括:
S401:根据标注表数据确定聚类中心。
在执行S401之前,先设定聚类个数c(1<c<n),模糊指数m(m>1),最大迭代数T和收敛的精度ε,同时用随机数初始化隶属度矩阵U1。
一实施例中,S401包括:根据标注表数据和表数据确定表业务种类;根据表业务种类和标注表数据确定聚类中心。
其中,表数据包括源表数据和目标表数据。
S402:根据隶属度数据、表数据和模糊指数更新聚类中心,根据更新后的聚类中心、表数据和模糊指数更新隶属度数据后,进行对应迭代计算。
一实施例中,第t+1次迭代的聚类中心Vt+1=F(Ut),Ut为第t次迭代的隶属度数据。具体实施时,先采用L(c)函数和Ut确定c,再采用拉格朗日函数计算更新后的聚类中心Vt+1。第t+1次迭代的隶属度数据U t+1=G(Vt),其中G表示更新函数。聚类中心更新后,其对应的隶属度数据(隶属度矩阵)随之更新。
S403:当当前迭代次数等于预设迭代次数,或当前迭代中的隶属度数据收敛时,根据当前迭代计算获得的隶属度数据确定表业务种类。
具体实施时,t=T时,根据当前迭代计算获得的隶属度数据UT确定表业务种类。隶属度数据的最大值对应的业务类型为隶属度数据对应表的表业务种类。
当||Ut-Ut-1||≤ε时,第t次迭代中的隶属度数据Ut收敛,根据该隶属度数据确定表业务种类。
经过上述迭代,可以将剩余的所有未分类的目标表根据隶属程度得到其最相似的业务种类归属,从而根据只标注少部分源表的业务归属实现了全量数据库表分类的目的,一方面解决了人工标注大量表的难题,一方面确定了所有表的业务归属,从而为企业的数据资产规划提供了有力的保障。
S302:根据表业务种类、源表数据、目标表数据和表流向数据生成元数据分析结果。
执行S302时,可以将元数据分析模块的结果进行格式化处理,处理成可以直接导入数据库存储的格式。将脚本名称、相关文件夹信息、元数据信息(包含源表、目标表和表流向数据)以及表所属业务种类作为核心表段。一个脚本对应多条元数据信息的情况作为多条记录进行存储,通过标识字段来区分不同的元数据信息,元数据信息字段存储表的名称或者存储过程的名称。
利用已经处理好的元数据信息,用户可以在包含大量SQL处理逻辑的脚本中快速识别出关键信息,批量统计出每个脚本中包含的元数据信息,包括源表、目标表以及定位表相关的业务场景,可以找到该脚本后续所有相关脚本的表使用情况;也可以针对单个数据表,找到其所有相关的调用或者查询某个表被引用的次数,对高频使用的表也有了一定了解。这种方式极大的简化后续企业对数据资产分析的工作量,为后续数据库维护和高频信息筛查提供可靠的指导。
本发明实施例的具体流程如下:
1、根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言。
2、对有效结构化查询语言进行分词处理得到有效词语,根据有效词语与所述表名称列表的匹配结果确定匹配范围。
3、将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
4、根据有效词语与预设的关键词的匹配结果确定未匹配有效词语,确定未匹配有效词语对应的未匹配有效结构化查询语言。
5、根据预设的表语法格式从未匹配有效结构化查询语言中获取源表数据和目标表数据。
6、根据源表数据、目标表数据和脚本生成表流向数据。
7、根据标注表数据和表数据确定表业务种类;根据表业务种类和标注表数据确定聚类中心。
8、根据隶属度数据、表数据和模糊指数更新聚类中心,根据更新后的聚类中心、表数据和模糊指数更新隶属度数据后,进行对应迭代计算;其中,表数据包括源表数据和目标表数据。
9、当当前迭代次数等于预设迭代次数,或当前迭代中的隶属度数据收敛时,根据当前迭代计算获得的隶属度数据确定表业务种类。
10、根据表业务种类、源表数据、目标表数据和表流向数据生成元数据分析结果。
综上所述,本发明实施例提供的元数据分析方法具有以下有益效果:
(1)没有直接从SQL语义出发,而是通过分词与关键词模型倒序遍历的方式,直接定位单条SQL语句的关键信息,避免了SQL语法无法直接穷举的弊端,结合经验干预可以很好的应对不同SQL语法特性,给出不同的处理策略,使元数据的分析更有通用性;
(2)在分析的一开始就限定了有效表信息的范围,可以很好的剔除掉元数据分析中出现的干扰和无效信息,保证每一次元数据处理只分析已知表名称,避免对一些临时表或者无效表进行不必要的分析;
(3)关键词模型的引入为结果的准确性提供了有力支持。一个表名称匹配的结果必须对应一个处理方案,所有匹配到的表名最后都会进行一个合理的元数据结果归类,或为源表,或为目标表,或为其他某些特殊情况。利用关键词模型不断修正的方式可以使结果更加准确;
(4)数据库模糊聚类分析的引入为元数据的业务领域分类奠定了基础。每一个数据表很难完全属于某一种业务类别,所以模糊聚类算法可以计算出元数据和各个业务类别的隶属度,通过不断的迭代直至达到最大迭代次数或者收敛精度小于某一个设定的值来优化隶属度矩阵和类中心,最大的隶属度值表明该元数据最有可能属于哪一种业务类别,同时利用目标表的来源都是目标表这一逻辑关系,将少量源表进行业务分类,实现了对全库的数据表的最终分类,极大的降低了人工成本。
另外,元数据的分析是企业后续建立数据资产系统的基础,同时也能为企业的数据资源进行很好的归纳分析,因此本发明实施例提供的元数据分析方法还可以带来以下效果:
(1)确定有效脚本,对无效脚本进行清理。本发明的元数据是针对脚本来进行的,而通常脚本之间会有相互的依赖,比如一个脚本的目标表作为另外一个脚本的源表出现,将多个表的用途拆分到多个脚本中可以降低脚本之间的耦合度,但是这也增多了脚本的数量。随着系统运行时间拉长,有些脚本的功能已经没有对应的业务场景。在分析元数据后,可以快速的定位到某些脚本中的目标表,不再被后续任务调用的情况。而如果一个脚本的目标表不作为源表出现在其他脚本中,要么是该脚本自己成为一个最终输出,要么是该脚本已经可以停用。另外一种情况,鉴于基础的表全量来自于数据库导出,如果一个脚本中没有分析出其存在当前有效的源表或目标表,则大概率说明该脚本已失效。脚本中元数据的分析给了企业一个可以快速划分出有效数据表的范围,从而快速清理无效脚本。
(2)数据比对及验证。企业数据库如果面临数据迁移的场景下,需要对整个数据库的资源有一定了解。在迁移之前,需要完全了解迁移的数据表范围,在迁移过程中需要对相关的脚本进行开发改造,在迁移的后期需要对迁移的数据进行数据一致性验证。通过元数据的分析可以很好的解决这项大工程,元数据的统计在一开始就确定了实际使用表的范围,脚本验证过程中由于明确了脚本的源表和目标表,可以很快的找到脚本相关的表调用情况,通过验证表的数据来完成对脚本的校验。上述问题都可以通过元数据的梳理得以解决。
(3)数据问题排查。企业中经常出现数据加载出现问题的情况。一般来讲,需要对该表的上游进行数据分析,从脚本入手,分析该脚本对这个表的加载逻辑,层层探索,逐渐找到最终出现问题的源头。如果没有对脚本的元数据进行分析,则只能单纯靠人工排查的方式去寻找每个脚本的输入源与输出源,工作量很大而且容易出错。相反,如果对脚本的元数据信息进行过统计分析,则可以通过简单的查询语句即可排查出其相关的上游和下游表,从而快速定位到问题。
(4)业务场景划分。表所属的业务场景是更高维度的数据分析,开发人员或者用户面对众多数据表时很难快速识别该表所属的业务领域,有了业务场景的划分,则可以帮助其更快的了解表的属性,为数据分析提供便捷。更高层面,根据不同表所属类别的量,管理层也可以掌握企业目前的业务更倾向于哪个模块,从而更好的制定战略。
基于同一发明构思,本发明实施例还提供了一种元数据分析装置,由于该装置解决问题的原理与元数据分析方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
图8是本发明实施例中元数据分析装置的结构框图。如图8所示,元数据分析装置包括:
筛选模块,用于根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言;
匹配范围模块,用于对有效结构化查询语言进行分词处理得到有效词语,根据有效词语与表名称列表的匹配结果确定匹配范围;
匹配模块,用于将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
在实际应用中,元数据分析装置包括脚本格式化模块、元数据分析模块、模型修正模块、表属性模糊聚类分析模块和结果输出模块。
脚本格式化模块主要用于对基础的脚本进行识别和处理,剔除掉无用或者干扰的信息,只保留需要分析的脚本,同时对脚本中和元数据分析无关或干扰的信息进行剔除。
元数据分析模块建立在格式化后的脚本基础上,包括筛选模块、匹配范围模块和匹配模块。用于对脚本中的元数据信息进行识别分析,核心思路是找寻关键的目标表和源表。源表是sql查询语句中调用的表,脚本的输入源,目标表是根据语法逻辑最终生成的表,是脚本的输出。通常脚本语法有上千行的语法逻辑,分析出其源表和目标表后可以极大的提炼脚本的逻辑含义,让开发者和使用者快速的了解到脚本涉及的数据源以及最终输出。有了这部分的元数据信息可以很快的划分出脚本中所涉及的所有表,对表被调用的频率进行统计,并结合表本身的业务属性快速将数据表进行业务属性划分,为企业的数据资产建设提供有力支持。
模型修正模块的核心目的是通过不断迭代与人工干预的方式持续完善关键词语法metaKeywordList中的内容。
表属性模糊聚类分析模块用于确定表的所属业务类型。
结果输出模块建立在以上所有分析基础上,是对最终分析结果的记录与输出。
综上,本发明实施例的元数据分析装置先根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言,再对有效结构化查询语言进行分词处理后与表名称列表的匹配结果确定匹配范围,最后将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据,可以快速检索到有效的元数据信息,提高元数据分析的通用性。
本发明实施例还提供能够实现上述实施例中的元数据分析方法中全部步骤的一种计算机设备的具体实施方式。图9是本发明实施例中计算机设备的结构框图,参见图9,所述计算机设备具体包括如下内容:
处理器(processor)901和存储器(memory)902。
所述处理器901用于调用所述存储器902中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的元数据分析方法中的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言;
对有效结构化查询语言进行分词处理得到有效词语,根据有效词语与表名称列表的匹配结果确定匹配范围;
将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
综上,本发明实施例的计算机设备先根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言,再对有效结构化查询语言进行分词处理后与表名称列表的匹配结果确定匹配范围,最后将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据,可以快速检索到有效的元数据信息,提高元数据分析的通用性。
本发明实施例还提供能够实现上述实施例中的元数据分析方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的元数据分析方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言;
对有效结构化查询语言进行分词处理得到有效词语,根据有效词语与表名称列表的匹配结果确定匹配范围;
将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
综上,本发明实施例的计算机可读存储介质先根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言,再对有效结构化查询语言进行分词处理后与表名称列表的匹配结果确定匹配范围,最后将匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据,可以快速检索到有效的元数据信息,提高元数据分析的通用性。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
本发明实施例中所描述的各种说明性的逻辑块,或单元,或装置都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。
Claims (10)
1.一种元数据分析方法,其特征在于,包括:
根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言;
对所述有效结构化查询语言进行分词处理得到有效词语,根据所述有效词语与所述表名称列表的匹配结果确定匹配范围;
将所述匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
2.根据权利要求1所述的元数据分析方法,其特征在于,还包括:
根据所述源表数据、所述目标表数据和所述脚本生成表流向数据。
3.根据权利要求1所述的元数据分析方法,其特征在于,还包括:
根据有效词语与预设的关键词的匹配结果确定未匹配有效结构化查询语言;
根据预设的表语法格式从所述未匹配有效结构化查询语言中获取源表数据和目标表数据。
4.根据权利要求3所述的元数据分析方法,其特征在于,根据有效词语与预设的关键词的匹配结果确定未匹配有效结构化查询语言包括:
根据有效词语与预设的关键词的匹配结果确定未匹配有效词语;
确定所述未匹配有效词语对应的未匹配有效结构化查询语言。
5.根据权利要求2所述的元数据分析方法,其特征在于,还包括:
根据标注表数据对所述源表数据和所述目标表数据进行聚类处理,得到表业务种类;
根据所述表业务种类、所述源表数据、所述目标表数据和所述表流向数据生成元数据分析结果。
6.根据权利要求5所述的元数据分析方法,其特征在于,根据所述标注表数据对所述源表数据和所述目标表数据进行聚类处理,得到表业务种类包括:
根据所述标注表数据确定聚类中心;
根据隶属度数据、表数据和模糊指数更新所述聚类中心,根据更新后的聚类中心、所述表数据和所述模糊指数更新所述隶属度数据后,进行对应迭代计算;其中,所述表数据包括所述源表数据和所述目标表数据;
当当前迭代次数等于预设迭代次数,或当前迭代中的隶属度数据收敛时,根据当前迭代计算获得的隶属度数据确定表业务种类。
7.根据权利要求6所述的元数据分析方法,其特征在于,根据所述标注表数据确定聚类中心包括:
根据所述标注表数据和所述表数据确定表业务种类;
根据所述表业务种类和所述标注表数据确定聚类中心。
8.一种元数据分析装置,其特征在于,包括:
筛选模块,用于根据预设的表名称列表从脚本的结构化查询语言中筛选有效结构化查询语言;
匹配范围模块,用于对所述有效结构化查询语言进行分词处理得到有效词语,根据所述有效词语与所述表名称列表的匹配结果确定匹配范围;
匹配模块,用于将所述匹配范围中的有效词语与预设的关键词进行匹配得到源表数据和目标表数据。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的元数据分析方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的元数据分析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210016788.XA CN114372083A (zh) | 2022-01-07 | 2022-01-07 | 元数据分析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210016788.XA CN114372083A (zh) | 2022-01-07 | 2022-01-07 | 元数据分析方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114372083A true CN114372083A (zh) | 2022-04-19 |
Family
ID=81144366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210016788.XA Pending CN114372083A (zh) | 2022-01-07 | 2022-01-07 | 元数据分析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114372083A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117493641A (zh) * | 2024-01-02 | 2024-02-02 | 中国电子科技集团公司第二十八研究所 | 一种基于语义元数据的二次模糊搜索方法 |
-
2022
- 2022-01-07 CN CN202210016788.XA patent/CN114372083A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117493641A (zh) * | 2024-01-02 | 2024-02-02 | 中国电子科技集团公司第二十八研究所 | 一种基于语义元数据的二次模糊搜索方法 |
CN117493641B (zh) * | 2024-01-02 | 2024-03-22 | 中国电子科技集团公司第二十八研究所 | 一种基于语义元数据的二次模糊搜索方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111522816B (zh) | 基于数据库引擎的数据处理方法、装置、终端及介质 | |
CN105373365B (zh) | 用于管理关于近似串匹配的档案的方法和系统 | |
JP2022535792A (ja) | データフィールドのプロファイルデータからのデータフィールドの意味論的意味の発見 | |
JP2023516139A (ja) | データフィールドの意味論的ラベルからのデータフィールドのデータ処理値に対するルールの生成 | |
US11449564B2 (en) | System and method for searching based on text blocks and associated search operators | |
EP3674918B1 (en) | Column lineage and metadata propagation | |
CN104424360A (zh) | 用于访问源数据库中的一组数据表格的方法和系统 | |
US11698918B2 (en) | System and method for content-based data visualization using a universal knowledge graph | |
CN113110866A (zh) | 一种数据库变更脚本的评估方法及装置 | |
CN114091426A (zh) | 一种处理数据仓库中字段数据的方法和装置 | |
WO2023151252A1 (zh) | 特征匹配规则构建、特征匹配方法、装置、设备及介质 | |
CN114372083A (zh) | 元数据分析方法及装置 | |
US20210209303A1 (en) | High volume message classification and distribution | |
WO2014191719A1 (en) | Datasets profiling tools, methods, and systems | |
CN116775830A (zh) | 一种在线技术文档搜索方法、设备及介质 | |
CN112463857A (zh) | 基于关系数据库支持回溯数据查询的数据处理方法及系统 | |
CN115062049B (zh) | 一种数据血缘分析方法及装置 | |
De Bonis et al. | Graph-based methods for Author Name Disambiguation: a survey | |
Qiu et al. | Big data linkage for product specification pages | |
CN114860852A (zh) | 一种面向军事领域的知识图谱构建方法 | |
CN114692595B (zh) | 一种基于文本匹配的重复冲突方案检测方法 | |
US20240111736A1 (en) | Semantic classification for data management | |
Mior | JSONoid: Monoid-based Enrichment for Configurable and Scalable Data-Driven Schema Discovery | |
AU2015249134A1 (en) | Fuzzy data operations | |
Kopp et al. | Computational Technology and Software Tool for Translation of Business Rules into Database Creation Scripts. |
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 |