CN109840254A - 一种数据虚拟化及查询方法、装置 - Google Patents
一种数据虚拟化及查询方法、装置 Download PDFInfo
- Publication number
- CN109840254A CN109840254A CN201811534934.8A CN201811534934A CN109840254A CN 109840254 A CN109840254 A CN 109840254A CN 201811534934 A CN201811534934 A CN 201811534934A CN 109840254 A CN109840254 A CN 109840254A
- Authority
- CN
- China
- Prior art keywords
- data
- information
- dictionary
- checked
- user
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据虚拟化及查询方法、装置,该数据虚拟化方法包括:从数据库中采集多种数据,根据数据及其属性构建数据字典;获取常用词库词典和行业术语词库中的词汇信息;根据词汇信息及数据字典中的数据及其映射关系构建数据语义层。通过实施本发明,实现将分散在企业内部的数据进行虚拟化,为使用者提供基于虚拟化定义的数据统一访问,使用者不用关心数据存在哪里及格式要求等,从而降低数据的查询难度,便于后续用户进行语句查询时,进行语句的解析、查询等操作。
Description
技术领域
本发明涉及计算机信息管理应用技术领域,具体涉及一种数据虚拟化及查询方法、装置。
背景技术
随着大数据业务的不断拓展,业务数据基于不同平台并采用不同的技术、方案和标准,导致数据在系统、语法和语义等层面存在异构性,数据源之间无法识别,支撑业务运转的应用系统数据集成查询变得越来越复杂。因此,为适应业务应用逐渐扩大和业务环境多变的趋势,探索新的数据集成方法动态反映其变化,即时满足各种应用随时随地访问数据具有重要意义。
目前已有的大数据查询技术是基于面向服务的领域数据集成框架实现的,该框架建立了领域数据模型,使分布、异构的数据源与应用程序相桥接,但其中的领域数据模型不具备数据源分布、异构的特性,而且是领域专家通过图形化的界面手工构建,带有一定的主观性,而且数据元素之间缺乏相互关联。且分布式异构数据集成缺少统一的语义描述,给查询、共享带来较大困难。
发明内容
有鉴于此,本发明实施例提供了一种数据虚拟化及查询方法、装置,以解决已有查询技术无法有效查询异构化数据的问题。
根据第一方面,本发明实施例提供了一种数据虚拟化方法,包括:从数据库中采集多种数据,根据所述数据及其属性构建数据字典;获取常用词库词典和行业术语词库中的词汇信息;根据所述词汇信息及所述数据字典中的数据及其映射关系构建数据语义层。
结合第一方面,在第一方面第一实施方式中,根据所述数据及其属性构建数据字典,包括:通过以下步骤至少之一获取数据的属性及物理存储的对应关系:从数据库的系统信息中采集,获取数据的属性及物理存储的对应关系;及解析数据库的运行日志,提取所述数据的属性及物理存储的对应关系;及提取数据库中的表名或字段名单词,根据所述表名或字段名单词建立属性及物理存储的对应关系的映射关系;及获取所述数据库中的结构性数据,根据所述结构性数据获取所述数据的属性及物理存储的对应关系;根据所述数据的属性及物理存储的对应关系构建所述数据字典。
结合第一方面,在第一方面第二实施方式中,根据所述词汇信息及所述数据字典中的数据及其映射关系构建数据语义层,包括:提取所述常用词库词典中的词语及其类型;获取所述行业术语词库中的行业专有名词;采集所述数据字典中的数据库表结构、样本信息、解析日志和设计文档;根据所述词语及其类型、行业专有名词、数据库表结构、样本信息、解析日志和设计文档进行深度学习,构建所述数据语义层。
根据第二方面,本发明实施例提供了一种数据查询方法,包括:获取用户输入的待查询数据;对所述待查询数据进行语法解析,在数据语义层查询所述待查询数据对应的物理存储信息及属性信息,所述数据语义层为根据第一方面或第一方面任意一种实施方式所述的数据虚拟化方法构建;根据所述数据信息、物理存储信息及属性信息进行分区查询,得到至少一分区查询结果;根据所述至少一分区查询结果进行数据关联汇总,生成最终查询结果,反馈给用户。
结合第二方面,在第二方面第一实施方式中,该数据查询方法还包括:将语法解析后的待查询数据及解析结果暂存于高速缓冲区。
结合第二方面第一实施方式,在第二方面第二实施方式中,在获取用户输入的待查询数据之后、对所述待查询数据进行语法解析之前,所述数据查询方法还包括:在所述高速缓冲区中查询是否存储有所述待查询数据;如果有,则提取所述解析结果。
结合第二方面第一实施方式或第二实施方式,在第二方面第三实施方式中,该数据查询方法还包括:提取所述待查询数据中的关键字;根据所述关键字对所述待查询数据进行语法性检查;将检查结果反馈给用户。
结合第二方面,在第二方面第四实施方式中,对所述待查询数据进行语法解析,还包括:提取所述待查询数据中的表名和/或字段名;根据所述表名和/或字段名查询数据库中是否存在与所述待查询数据相对应的数据信息;将查询结果反馈给用户。
结合第二方面第四实施方式,在第二方面第五实施方式中,该数据查询方法还包括:将语法解析后的待查询数据及解析结果暂存于高速缓冲区。
结合第二方面第五实施方式,在第二方面第六实施方式中,在获取用户输入的待查询数据之后、对所述待查询数据进行语法解析之前,所述数据查询方法还包括:在所述高速缓冲区中查询是否存储有所述待查询数据;如果有,则提取所述解析结果。
结合第二方面,在第二方面第七实施方式中,根据所述数据信息、物理存储信息及属性信息进行分区查询,包括:根据所述数据信息、物理存储信息及属性信息确定待查询数据的数据类型、存储位置、存储时间;根据所述数据类型、存储位置、存储时间划分用于数据查询的多个分片集;根据所述分片集分别查询相应的子数据,得到所述分区查询结果。
结合第二方面第七实施方式,在第二方面第八实施方式中,根据所述至少一分区查询结果进行数据关联汇总,包括:获取用户输入的查询规则需求;根据所述查询规则需求将所述子数据进行数据处理;将经过数据处理后的子数据进行整合,生成所述最终查询结果。
结合第二方面或第二方面中任意一种实施方式,在第二方面第九实施方式中,在将所述最终查询结果反馈给用户之前,所述数据查询方法还包括:根据预设数据特征识别所述最终查询结果中的敏感字段;根据所述用户的归属机构信息和/或密级信息对所述敏感字段进行脱敏处理;将脱敏处理后的最终查询结果反馈给用户。
根据第三方面,本发明实施例提供了一种数据虚拟化装置,包括:数据字典模块,用于从数据库中采集多种数据,根据所述数据及其属性构建数据字典;词汇信息获取模块,用于获取常用词库词典和行业术语词库中的词汇信息;数据语义层构建模块,用于根据所述词汇信息及所述数据字典中的数据及其映射关系构建数据语义层。
根据第四方面,本发明实施例提供了一种数据查询装置,包括:待查询数据获取模块,用于获取用户输入的待查询数据;信息解析模块,用于对所述待查询数据进行语法解析,在数据语义层查询所述待查询数据对应的物理存储信息及属性信息,所述数据语义层为根据第一方面或第一方面任意一种实施方式所述的数据虚拟化方法构建;分区查询结果生成模块,用于根据所述数据信息、物理存储信息及属性信息进行分区查询,得到至少一分区查询结果;最终查询结果生成模块,用于根据所述至少一分区查询结果进行数据关联汇总,生成最终查询结果,反馈给用户。
根据第五方面,本发明实施例提供了一种服务器,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行第一方面或者第一方面的任意一种实施方式中所述的数据虚拟化方法,或者,执行第二方面或第二方面任意一种实施方式所述的数据查询方法。
根据第六方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行第一方面或者第一方面的任意一种实施方式中所述的数据虚拟化方法,或者,执行第二方面或第二方面任意一种实施方式所述的数据查询方法。
本发明实施例的数据虚拟化及查询方法、装置的有益效果在于,能够基于用户的需求、词语的语义、类型、属性等信息建立映射关系,将分散在企业内部的数据进行虚拟化,为使用者提供基于虚拟化定义的数据统一访问,使用者不用关心数据存在哪里及格式要求等,从而降低数据的查询难度。
附图说明
通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
图1示出了本发明实施例的数据虚拟化方法的流程示意图;
图2示出了本发明实施例的数据虚拟化方法的步骤S13的流程示意图;
图3示出了本发明实施例的数据查询方法的流程示意图;
图4示出了本发明实施例的数据虚拟化装置的结构示意图;
图5示出了本发明实施例的数据查询装置的结构示意图;
图6示出了本发明实施例的服务器的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种数据虚拟化方法,如图1所示,该数据虚拟化方法主要包括以下步骤:
步骤S11:从数据库中采集多种数据,根据数据及其属性构建数据字典;数据字典是存放数据库以及表结构信息的数据结构,主要包括数据库信息,表结构属性、在线存储时间,数据库安全信息,数据语义层与物理数据表的映射等。在系统初始化阶段,可自动完成对企业等所用数据库所有的数据平台进行采集建立。
步骤S12:获取常用词库词典和行业术语词库中的词汇信息;其中,常用词库词典是指通过国家发布的汉语字典库,主要包括常用的词语、地名库,百家姓等信息;行业术语库是指用户所关注的行业专有名词,例如电信行业中的话务量,账期,余额,停机等术语,主要用于分词识别,断句使用。
步骤S13:根据词汇信息及数据字典中的数据及其映射关系构建数据语义层。语义层的构建主要依靠知识库的学习和积累,主要方式通常包括数据字典的采集,行业术语词库收集,常用词库收集等。
通过上述步骤S11至步骤S13,本发明实施例的数据虚拟化方法,能够基于用户的需求、词语的语义、类型、属性等信息建立映射关系,将分散在企业内部的数据进行虚拟化,为使用者提供基于虚拟化定义的数据统一访问,使用者不用关心数据存在哪里及格式要求等,从而降低数据的查询难度,便于后续用户进行语句查询时,进行语句的解析、查询等操作。
可选地,在本发明的一些实施例中,上述步骤S11,从数据库中采集多种数据,根据数据及其属性构建数据字典的过程主要包括:
首先,通过以下步骤至少之一获取数据的属性及物理存储的对应关系:从数据库的系统信息中采集,获取数据的属性及物理存储的对应关系;及解析数据库的运行日志,提取数据的属性及物理存储的对应关系;及提取数据库中的表名或字段名单词,根据表名或字段名单词建立属性及物理存储的对应关系的映射关系;及获取数据库中的结构性数据,根据结构性数据获取数据的属性及物理存储的对应关系。
在获取到数据的属性及物理存储的对应关系后,即根据数据的属性及物理存储的对应关系构建数据字典。
数据语义层是为数据应用分析人员按业务过程呈现关键数据实体,使其可从业务视角使用数据。从业务视角构建业务的语义层,建立语义与物理层数据之间的关系。使用者只需对语义层进行操作使用,从而完成对异构数据平台的数据查询组装。可选地,在本发明的一些实施例中,如图2所示,上述步骤S13,根据词汇信息及数据字典中的数据及其映射关系构建数据语义层的过程,主要包括:
步骤S131:提取常用词库词典中的词语及其类型,例如常用的词语、地名库,百家姓等信息;
步骤S132:获取行业术语词库中的行业专有名词,比如电信行业中的话务量,账期,余额,停机等术语;
步骤S133:采集数据字典中的数据库表结构、样本信息、解析日志和设计文档;
步骤S134:根据词语及其类型、行业专有名词、数据库表结构、样本信息、解析日志和设计文档进行深度学习,构建数据语义层。
经过上述步骤构建的数据语义层例如是:电力客户营销包含业务办理、用电施工、客户供电记录、收费缴费信息。将这些跨专业、跨系统的数据按照其语义、类型、属性、映射关系等构建成为整体的数据语义层。
本发明实施例的数据虚拟化方法,是基于数据库中的语句数据以及行业数据等,构建用户查询所需的数据字典及数据语义层,从而为后续进行实际的语句查询提供更加准确、便捷的查询途径等。
本发明实施例还提供一种数据查询方法,如图3所示,该数据查询方法主要包括:
步骤S21:获取用户输入的待查询数据;该待查询数据例如是用户想要查询的字、词、句等数据。
步骤S22:对待查询数据进行语法解析,在数据语义层查询待查询数据对应的物理存储信息及属性信息(例如,物理实体信息所在数据库类型,连接url,用户名,密码,获取数据接口方式等等),该数据语义层为通过上述任意方法实施例所述的数据虚拟化方法构建;在本发明实施例中,可以是通过逻辑sql的解析,使得用户可以不用知道底层数据库的物理名称只需输入语义对象名称即可,例如同样是客户姓名字段,有的数据库字段名为name,有的为xm(姓名),有的为zwm(中文名),用户不用关心字段名称叫什么,只需统一输入查询“姓名”即可。
步骤S23:根据数据信息、物理存储信息及属性信息进行分区查询,得到至少一分区查询结果;实际应用中,用户是针对逻辑的数据实体进行查询,但数据的物理部署可能是复杂的,甚至是分布在不同的平台上。此步骤中是根据用户查询的数据进行分区划分,在不同分区进行查询。
步骤S24:根据至少一分区查询结果进行数据关联汇总,生成最终查询结果,反馈给用户。基于步骤S23的分区查询,从不同的平台汇聚数据后进行合并再返回给用户。
通过上述步骤S21至步骤S24,本发明实施例的数据查询方法,基于对数据库中的数据进行虚拟化处理构建的数据字典及数据语义层,能够实现异构化数据的快速查询,并且,用户无需关心数据存在哪里及格式要求等,从而降低数据的查询难度。
可选地,在本发明的一些实施例中,对于通过逻辑sql的解析得到的解析结果,可以和待查询数据一起暂存于高速缓冲区,这样,当用户再次进行查询时,可首先基于高速缓冲区进行查询,从查询解析的高速缓冲中判断是否已经有相同的查询语句已经解析过,如果有,则可以直接使用之前解析的结果,省去后续的步骤,提高查询解析的效率。如果没有解析过,则执行后续的步骤,进行正常的解析及查询过程,返回给用户查询结果,并可将解析的结果存入高速缓冲区。
进一步地,还可在进行解析前首先对待查询数据进行语句合法性检查,对输入的查询数据进行语法规范检查,例如关键字(select,from等)是否有定义,顺序是否正确等。如果认为这条查询数据不符合语法规则的时候,则可把这个错误信息反馈给客户端。在语句合法性检查的过程中,不会对语句中所包含的语义层的信息进行检查。
可选地,在本发明的一些实施例中,对于待查询数据进行解析的过程,除了逻辑sql解析,还包括物理sql查询解析,主要包括:提取待查询数据中的表名和/或字段名;根据表名和/或字段名查询数据库中是否存在与待查询数据相对应的数据信息;将查询结果反馈给用户。
相类似地,对于通过物理sql查询解析得到的解析结果,可以和待查询数据一起暂存于高速缓冲区,这样,当用户再次进行查询时,可首先基于高速缓冲区进行查询,从查询解析的高速缓冲中判断是否已经有相同的查询语句已经解析过,如果有,则可以直接使用之前解析的结果,省去后续的步骤,提高查询解析的效率。如果没有解析过,则执行后续的步骤,进行正常的解析及查询过程,返回给用户查询结果,并可将解析的结果存入高速缓冲区。
进一步地,还可在进行解析前首先对待查询数据进行语句合法性检查,对输入的查询数据进行语法规范检查,例如关键字(select,from等)是否有定义,顺序是否正确等。如果认为这条查询数据不符合语法规则的时候,则可把这个错误信息反馈给客户端。在语句合法性检查的过程中,不会对语句中所包含的语义层的信息进行检查。
可选地,在本发明的一些实施例中,上述步骤S23,根据数据信息、物理存储信息及属性信息进行分区查询,得到至少一分区查询结果,主要包括:
根据数据信息、物理存储信息及属性信息确定待查询数据的数据类型、存储位置、存储时间等信息;根据数据类型、存储位置、存储时间划分用于数据查询的多个分片集;根据分片集分别查询相应的子数据,得到分区查询结果。
具体实施时,在一些情况下,例如当shard key或shard key的某个前辍部分被当作查询条件的一部分时,会将查询路由到分片集的某个子集下,其它时候,将查询引向所有包含目标表数据的分片下。例如,查询某个客户最近1年的信息,最新的信息可能存在内存数据,近6个月信息存在仓库上,历史信息存在HBASE上,此时则需根据用户查询的数据的类型、存储位置、存储时间等信息确定其各自的存储位置,进行分区查询,分别得到查询结果。
可选地,在本发明的一些实施例中,上述步骤S24,根据至少一分区查询结果进行数据关联汇总,生成最终查询结果,主要包括:
获取用户输入的查询规则需求;根据所述查询规则需求将所述子数据进行数据处理;将经过数据处理后的子数据进行整合,生成所述最终查询结果。
具体实施时,用户可能通过输入一些查询规则,限定反馈的查询结果,例如,如果查询操作用sort方法指定了排序规则,查询重写将$orderby选项传递给各个目标分片,在将结果集返回客户端之前,结果转换环节会接收所有结果数据,确定后执行合并排序,生成最终查询结果。
如果查询操作用limit限制结果集的大小,查询重写将这个限制传递给各个目标分片,在返回客户端之前再将整个结果集缩减到指定大小,生成最终查询结果。
如果查询操作用skip方法指定要忽略的结果个数,重写不会将这个忽略数传递给目标分片,而是从各分片检索出符合查询条件的所有结果,在组装最终结果集时再忽略指定数目的数据。但是如果它和limit方法联合使用,重写将limit的值加上skip方法的值传递给目标分片,生成最终查询结果。
通过上述的分区查询、数据关联的过程来提升这些操作的效率。
可选地,在本发明的一些实施例中,在将最终查询结果反馈给用户之前,本发明实施例的数据查询方法还包括:根据预设数据特征识别最终查询结果中的敏感字段;根据用户的归属机构信息和/或密级信息对敏感字段进行脱敏处理;将脱敏处理后的最终查询结果反馈给用户,从而保证用户查询信息的安全性。
本发明实施例的数据虚拟化方法及数据查询方法,具有轻量部署和快捷使用的特点。具体来说,本发明提供的方法可以采用软件编程实现,以检索模块形式供系统调用,以达到灵活支持检索的目的。可设置检索服务器,在服务器上加载检索模块,并发布为webservice方式,服务器可以是tomcate、iis或webspere等,检索模块通过webservice方式,可以提供给远程应用系统进行调用。本发明支持中文查询,对业务人员没有知识背景要求,极大了便捷了业务人员的应用。业务人员仅需要输入中文查询词句,应用系统将查询词句反馈检索服务器,经过中文分词,关键词和er模型映射处理,最后输出可能命中条目和匹配度排序;应用系统输出可选条目,实时呈现给业务人员。
本发明实施例还提供一种数据虚拟化装置,如图4所示,该数据虚拟化装置包括:
数据字典模块11,用于从数据库中采集多种数据,根据数据及其属性构建数据字典;详细内容请参见上述方法实施例中步骤S11的相关描述。
词汇信息获取模块12,用于获取常用词库词典和行业术语词库中的词汇信息;详细内容请参见上述方法实施例中步骤S12的相关描述。
数据语义层构建模块13,用于根据词汇信息及数据字典中的数据及其映射关系构建数据语义层;详细内容请参见上述方法实施例中步骤S13的相关描述。
通过上述各组成部分的协同动作,本发明实施例的数据虚拟化装置,能够基于用户的需求、词语的语义、类型、属性等信息建立映射关系,将分散在企业内部的数据进行虚拟化,为使用者提供基于虚拟化定义的数据统一访问,使用者不用关心数据存在哪里及格式要求等,从而降低数据的查询难度,便于后续用户进行语句查询时,进行语句的解析、查询等操作。
本发明实施例还提供一种数据查询装置,如图5所示,该数据查询装置包括:
待查询数据获取模块21,用于获取用户输入的待查询数据;详细内容请参见上述方法实施例中步骤S21的相关描述。
信息解析模块22,用于对待查询数据进行语法解析,在数据语义层查询待查询数据对应的物理存储信息及属性信息,该数据语义层为通过上述任意方法实施例的数据虚拟化方法构建;详细内容请参见上述方法实施例中步骤S22的相关描述。
分区查询结果生成模块23,用于根据数据信息、物理存储信息及属性信息进行分区查询,得到至少一分区查询结果;详细内容请参见上述方法实施例中步骤S23的相关描述。
最终查询结果生成模块24,用于根据至少一分区查询结果进行数据关联汇总,生成最终查询结果,反馈给用户;详细内容请参见上述方法实施例中步骤S24的相关描述。
通过上述各个组成部分及其实现的功能,本发明实施例的数据查询装置,基于对数据库中的数据进行虚拟化处理构建的数据字典及数据语义层,能够实现异构化数据的快速查询,并且,用户无需关心数据存在哪里及格式要求等,从而降低数据的查询难度。
本发明实施例还提供一种服务器,如图6所示,该服务器可以包括处理器61和存储器62,其中处理器61和存储器62可以通过总线或者其他方式连接,图6中以通过总线连接为例。
处理器61可以为中央处理器(Central Processing Unit,CPU)。处理器61还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器62作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的数据虚拟化方法或数据查询方法对应的程序指令/模块(例如,图4所示的数据字典模块11、词汇信息获取模块12、数据语义层构建模块13,或图5所示的待查询数据获取模块21、信息解析模块22、分区查询结果生成模块23及最终查询结果生成模块24)。处理器61通过运行存储在存储器62中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的数据虚拟化方法或数据查询方法。
存储器62可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器61所创建的数据等。此外,存储器62可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器62可选包括相对于处理器61远程设置的存储器,这些远程存储器可以通过网络连接至处理器61。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器62中,当被所述处理器61执行时,执行如图1-图3所示实施例中的数据虚拟化方法或数据查询方法。
上述服务器具体细节可以对应参阅图1至图3所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random AccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (17)
1.一种数据虚拟化方法,其特征在于,包括:
从数据库中采集多种数据,根据所述数据及其属性构建数据字典;
获取常用词库词典和行业术语词库中的词汇信息;
根据所述词汇信息及所述数据字典中的数据及其映射关系构建数据语义层。
2.根据权利要求1所述的数据虚拟化方法,其特征在于,根据所述数据及其属性构建数据字典,包括:
通过以下步骤至少之一获取数据的属性及物理存储的对应关系:
从数据库的系统信息中采集,获取数据的属性及物理存储的对应关系;及
解析数据库的运行日志,提取所述数据的属性及物理存储的对应关系;及
提取数据库中的表名或字段名单词,根据所述表名或字段名单词建立属性及物理存储的对应关系的映射关系;及
获取所述数据库中的结构性数据,根据所述结构性数据获取所述数据的属性及物理存储的对应关系;
根据所述数据的属性及物理存储的对应关系构建所述数据字典。
3.根据权利要求1所述的数据虚拟化方法,其特征在于,根据所述词汇信息及所述数据字典中的数据及其映射关系构建数据语义层,包括:
提取所述常用词库词典中的词语及其类型;
获取所述行业术语词库中的行业专有名词;
采集所述数据字典中的数据库表结构、样本信息、解析日志和设计文档;
根据所述词语及其类型、行业专有名词、数据库表结构、样本信息、解析日志和设计文档进行深度学习,构建所述数据语义层。
4.一种数据查询方法,其特征在于,包括:
获取用户输入的待查询数据;
对所述待查询数据进行语法解析,在数据语义层查询所述待查询数据对应的物理存储信息及属性信息,所述数据语义层为根据权利要求1-3中任一项所述的数据虚拟化方法构建;
根据所述数据信息、物理存储信息及属性信息进行分区查询,得到至少一分区查询结果;
根据所述至少一分区查询结果进行数据关联汇总,生成最终查询结果,反馈给用户。
5.根据权利要求4所述的数据查询方法,其特征在于,还包括:
将语法解析后的待查询数据及解析结果暂存于高速缓冲区。
6.根据权利要求5所述的数据查询方法,其特征在于,在获取用户输入的待查询数据之后、对所述待查询数据进行语法解析之前,所述数据查询方法还包括:
在所述高速缓冲区中查询是否存储有所述待查询数据;
如果有,则提取所述解析结果。
7.根据权利要求5或6所述的数据查询方法,其特征在于,还包括:
提取所述待查询数据中的关键字;
根据所述关键字对所述待查询数据进行语法性检查;
将检查结果反馈给用户。
8.根据权利要求4所述的数据查询方法,其特征在于,对所述待查询数据进行语法解析,还包括:
提取所述待查询数据中的表名和/或字段名;
根据所述表名和/或字段名查询数据库中是否存在与所述待查询数据相对应的数据信息;
将查询结果反馈给用户。
9.根据权利要求8所述的数据查询方法,其特征在于,还包括:
将语法解析后的待查询数据及解析结果暂存于高速缓冲区。
10.根据权利要求9所述的数据查询方法,其特征在于,在获取用户输入的待查询数据之后、对所述待查询数据进行语法解析之前,所述数据查询方法还包括:
在所述高速缓冲区中查询是否存储有所述待查询数据;
如果有,则提取所述解析结果。
11.根据权利要求4所述的数据查询方法,其特征在于,根据所述数据信息、物理存储信息及属性信息进行分区查询,包括:
根据所述数据信息、物理存储信息及属性信息确定待查询数据的数据类型、存储位置、存储时间;
根据所述数据类型、存储位置、存储时间划分用于数据查询的多个分片集;
根据所述分片集分别查询相应的子数据,得到所述分区查询结果。
12.根据权利要求11所述的数据查询方法,其特征在于,根据所述至少一分区查询结果进行数据关联汇总,包括:
获取用户输入的查询规则需求;
根据所述查询规则需求将所述子数据进行数据处理;
将经过数据处理后的子数据进行整合,生成所述最终查询结果。
13.根据权利要求4-12中任一项所述的数据查询方法,其特征在于,在将所述最终查询结果反馈给用户之前,所述数据查询方法还包括:
根据预设数据特征识别所述最终查询结果中的敏感字段;
根据所述用户的归属机构信息和/或密级信息对所述敏感字段进行脱敏处理;
将脱敏处理后的最终查询结果反馈给用户。
14.一种数据虚拟化装置,其特征在于,包括:
数据字典模块,用于从数据库中采集多种数据,根据所述数据及其属性构建数据字典;
词汇信息获取模块,用于获取常用词库词典和行业术语词库中的词汇信息;
数据语义层构建模块,用于根据所述词汇信息及所述数据字典中的数据及其映射关系构建数据语义层。
15.一种数据查询装置,其特征在于,包括:
待查询数据获取模块,用于获取用户输入的待查询数据;
信息解析模块,用于对所述待查询数据进行语法解析,在数据语义层查询所述待查询数据对应的物理存储信息及属性信息,所述数据语义层为根据权利要求1-3中任一项所述的数据虚拟化方法构建;
分区查询结果生成模块,用于根据所述数据信息、物理存储信息及属性信息进行分区查询,得到至少一分区查询结果;
最终查询结果生成模块,用于根据所述至少一分区查询结果进行数据关联汇总,生成最终查询结果,反馈给用户。
16.一种服务器,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行如权利要求1-3中任一项所述的数据虚拟化方法,或者,执行如权利要求4-13中任一项所述的数据查询方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行如权利要求1-3中任一项所述的数据虚拟化方法,或者,执行如权利要求4-13中任一项所述的数据查询方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811534934.8A CN109840254A (zh) | 2018-12-14 | 2018-12-14 | 一种数据虚拟化及查询方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811534934.8A CN109840254A (zh) | 2018-12-14 | 2018-12-14 | 一种数据虚拟化及查询方法、装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109840254A true CN109840254A (zh) | 2019-06-04 |
Family
ID=66883227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811534934.8A Pending CN109840254A (zh) | 2018-12-14 | 2018-12-14 | 一种数据虚拟化及查询方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109840254A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110287213A (zh) * | 2019-07-03 | 2019-09-27 | 中通智新(武汉)技术研发有限公司 | 基于olap系统的数据查询方法、装置及系统 |
CN110471995A (zh) * | 2019-08-14 | 2019-11-19 | 中电科新型智慧城市研究院有限公司 | 一种跨领域信息共享交换数据模型建模方法 |
CN111159219A (zh) * | 2019-12-31 | 2020-05-15 | 湖南亚信软件有限公司 | 一种数据管理方法、装置、服务器及存储介质 |
CN112667415A (zh) * | 2020-12-24 | 2021-04-16 | 思创数码科技股份有限公司 | 数据调用方法、装置、可读存储介质及电子设备 |
CN112835889A (zh) * | 2021-01-12 | 2021-05-25 | 杨飞 | 一种异构系统数据集成方法、系统及设备 |
WO2021258848A1 (zh) * | 2020-06-24 | 2021-12-30 | 平安科技(深圳)有限公司 | 数据字典生成方法、数据查询方法、装置、设备及介质 |
CN114168622A (zh) * | 2020-09-10 | 2022-03-11 | 北京达佳互联信息技术有限公司 | 一种基于领域特定语言的数据查询方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140236579A1 (en) * | 2013-02-18 | 2014-08-21 | Nadine Sina Kurz | Method and Device for Performing Natural Language Searches |
CN104572979A (zh) * | 2014-12-31 | 2015-04-29 | 北京锐安科技有限公司 | 一种处理结构化查询语言sql的方法及装置 |
CN105468634A (zh) * | 2014-09-05 | 2016-04-06 | 富士通株式会社 | 数据查询装置和方法 |
CN105786946A (zh) * | 2015-12-24 | 2016-07-20 | 国云科技股份有限公司 | 一种虚拟化的数据集成和查询系统及其实现方法 |
CN108121739A (zh) * | 2016-11-30 | 2018-06-05 | 株式会社日立制作所 | 数据收集方法和数据收集系统 |
-
2018
- 2018-12-14 CN CN201811534934.8A patent/CN109840254A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140236579A1 (en) * | 2013-02-18 | 2014-08-21 | Nadine Sina Kurz | Method and Device for Performing Natural Language Searches |
CN105468634A (zh) * | 2014-09-05 | 2016-04-06 | 富士通株式会社 | 数据查询装置和方法 |
CN104572979A (zh) * | 2014-12-31 | 2015-04-29 | 北京锐安科技有限公司 | 一种处理结构化查询语言sql的方法及装置 |
CN105786946A (zh) * | 2015-12-24 | 2016-07-20 | 国云科技股份有限公司 | 一种虚拟化的数据集成和查询系统及其实现方法 |
CN108121739A (zh) * | 2016-11-30 | 2018-06-05 | 株式会社日立制作所 | 数据收集方法和数据收集系统 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110287213A (zh) * | 2019-07-03 | 2019-09-27 | 中通智新(武汉)技术研发有限公司 | 基于olap系统的数据查询方法、装置及系统 |
CN110287213B (zh) * | 2019-07-03 | 2023-02-17 | 中通智新(武汉)技术研发有限公司 | 基于olap系统的数据查询方法、装置及系统 |
CN110471995A (zh) * | 2019-08-14 | 2019-11-19 | 中电科新型智慧城市研究院有限公司 | 一种跨领域信息共享交换数据模型建模方法 |
CN110471995B (zh) * | 2019-08-14 | 2022-04-15 | 中电科新型智慧城市研究院有限公司 | 一种跨领域信息共享交换数据模型建模方法 |
CN111159219A (zh) * | 2019-12-31 | 2020-05-15 | 湖南亚信软件有限公司 | 一种数据管理方法、装置、服务器及存储介质 |
CN111159219B (zh) * | 2019-12-31 | 2023-05-23 | 湖南亚信软件有限公司 | 一种数据管理方法、装置、服务器及存储介质 |
WO2021258848A1 (zh) * | 2020-06-24 | 2021-12-30 | 平安科技(深圳)有限公司 | 数据字典生成方法、数据查询方法、装置、设备及介质 |
CN114168622A (zh) * | 2020-09-10 | 2022-03-11 | 北京达佳互联信息技术有限公司 | 一种基于领域特定语言的数据查询方法及装置 |
CN112667415A (zh) * | 2020-12-24 | 2021-04-16 | 思创数码科技股份有限公司 | 数据调用方法、装置、可读存储介质及电子设备 |
CN112667415B (zh) * | 2020-12-24 | 2023-11-24 | 思创数码科技股份有限公司 | 数据调用方法、装置、可读存储介质及电子设备 |
CN112835889A (zh) * | 2021-01-12 | 2021-05-25 | 杨飞 | 一种异构系统数据集成方法、系统及设备 |
CN112835889B (zh) * | 2021-01-12 | 2023-12-29 | 杨飞 | 一种异构系统数据集成方法、系统及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109840254A (zh) | 一种数据虚拟化及查询方法、装置 | |
US10169471B2 (en) | Generating and executing query language statements from natural language | |
CN112384907B (zh) | 与文本挖掘集成的规范编辑系统 | |
US11403356B2 (en) | Personalizing a search of a search service | |
US20170083569A1 (en) | Natural language interface to databases | |
US10042921B2 (en) | Robust and readily domain-adaptable natural language interface to databases | |
US11106719B2 (en) | Heuristic dimension reduction in metadata modeling | |
CN107209757B (zh) | 自然语言理解缓存器 | |
EP2530608A1 (en) | Semantic terminology importer | |
US20230076923A1 (en) | Semantic search based on a graph database | |
US11487801B2 (en) | Dynamic data visualization from factual statements in text | |
US20220300542A1 (en) | System and method for translating a software query in an automated integration process into natural language | |
CN112559717A (zh) | 搜索匹配方法、装置、电子设备以及存储介质 | |
US11704345B2 (en) | Inferring location attributes from data entries | |
US8862609B2 (en) | Expanding high level queries | |
CN201114128Y (zh) | 企业搜索引擎装置 | |
US11940953B2 (en) | Assisted updating of electronic documents | |
CN111126073B (zh) | 语义检索方法和装置 | |
US11093566B2 (en) | Router based query results | |
US20210034987A1 (en) | Auxiliary handling of metadata and annotations for a question answering system | |
WO2022111148A1 (en) | Metadata indexing for information management | |
US11847121B2 (en) | Compound predicate query statement transformation | |
CN108470047B (zh) | 基于物联网的远程平台监测系统 | |
EP2990960A1 (en) | Data retrieval via a telecommunication network | |
US11841909B2 (en) | Text analytics views for web site sources |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190604 |
|
RJ01 | Rejection of invention patent application after publication |