CN110647562A - 一种数据查询方法和装置、电子设备、存储介质 - Google Patents
一种数据查询方法和装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN110647562A CN110647562A CN201910933249.0A CN201910933249A CN110647562A CN 110647562 A CN110647562 A CN 110647562A CN 201910933249 A CN201910933249 A CN 201910933249A CN 110647562 A CN110647562 A CN 110647562A
- Authority
- CN
- China
- Prior art keywords
- field
- data
- index
- database
- update
- 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.)
- Granted
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/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供一种数据查询方法和装置、电子设备、存储介质。该方法包括:接收对象发送的数据查询请求,从第一数据处理平台的第一数据库中获取与待查询数据对应的语句和标识,根据存储于第一数据库中的表结构确定语句在第二数据库中的索引位置和更新字段位置,根据标识、索引位置和更新字段位置从第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值,根据索引的字段名、索引的字段值、更新字段名和更新前后的数据值生成查询结果,将查询结果推送给对象,实现了提高查询效率,且实现了对更新前后的数据值的可查询,以确保查询结果的完整性,且实现了数据修改轨迹的可追踪性,数据变动显示更加明了的技术效果。
Description
技术领域
本公开涉及数据处理技术领域,尤其涉及一种数据查询方法和装置、电子设备、存储介质。
背景技术
随着互联网、物联网和人工智能等技术的发展,数据的量有了飞速的增加。对于有些数据,可能后续会进行修改操作,如增加、修改和删除等;对于有些数据,可能会再次使用,或者再次查询,以便利用数据对某些应用或场景进行分析等,因此,数据查询技术成为焦点。
在现有技术中,主要的数据查询方法为全面获取表索引,及其表索引所在的位置,在进行相应解析后获取更新字段的位置,然后根据位置获取更新字段的数据值。
然而发明人在实现本公开的过程中,发现至少存在如下问题:上述现有技术中的数据查询方法得到的查询结果不精准。
发明内容
本公开提供一种数据查询方法和装置、电子设备、存储介质,用以解决现有技术中数据查询方法得到的查询结果不精准的问题。
一方面,本公开实施例提供一种数据查询方法,所述方法包括:
接收对象发送的数据查询请求,其中,所述数据查询请求中携带待查询数据;
从第一数据处理平台的第一数据库中获取与所述待查询数据对应的语句和标识;
根据存储于所述第一数据库中的表结构确定所述语句在第二数据库中的索引位置和更新字段位置,其中,所述表结构是从第二数据处理平台的第二数据库中获取并存储至所述第一数据库的;
根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值;
根据所述索引的字段名、所述索引的字段值、所述更新字段名和更新前后的数据值生成查询结果;
将所述查询结果推送给所述对象。
在一些实施例中,所述根据存储于所述第一数据库中的表结构确定所述语句在第二数据库中的索引位置和更新字段位置包括:
对所述语句进行拆分,至少得到表名和设置字段;
根据所述表结构确定所述表名在所述第二数据库中的索引位置;
根据所述表结构确定所述设置字段在所述第二数据库中的更新字段位置。
在一些实施例中,在所述对所述语句进行拆分,至少得到表名和设置字段之后,所述方法还包括:
判断所述表名和所述设置字段是否均为大写字母;
若否,则将小写字母转换为大写字母;
对均是大写字母的表名进行前后缀去除处理,并对均是大写字母的设置字段进行前后缀去除处理;
以及,根据所述表结构确定所述表名在所述第二数据库中的索引位置包括:
根据所述表结构确定经过前后缀去除处理的表名在所述第二数据库中的索引位置;
根据所述表结构确定所述设置字段在所述第二数据库中的更新字段位置;
根据所述表结构确定经过前后缀去除处理的设置字段在所述第二数据库中的更新字段位置。
在一些实施例中,所述根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值包括:
根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取备份文件内容;
对所述备份文件内容进行过滤处理;
获取经过滤处理的备份文件内容的所述索引的字段名、所述索引的字段值、所述更新字段名和所述更新前后的数据值。
在一些实施例中,所述从第一数据处理平台的第一数据库中获取与所述待查询数据对应的语句和标识包括:
从所述第一数据库中获取与所述待查询数据对应的数据操作日志;
读取所述数据操作日志中与所述待查询数据对应的相关内容,其中,所述相关内容至少包括所述语句和所述标识。
另一个方面,本公开实施例还提供了一种数据查询装置,所述装置包括:
接收模块,用于接收对象发送的数据查询请求,其中,所述数据查询请求中携带待查询数据;
第一获取模块,用于从第一数据处理平台的第一数据库中获取与所述待查询数据对应的语句和标识;
确定模块,用于根据存储于所述第一数据库中的表结构确定所述语句在第二数据库中的索引位置和更新字段位置,其中,所述表结构是从第二数据处理平台的第二数据库中获取并存储至所述第一数据库的;
第二获取模块,用于根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值;
生成模块,用于根据所述索引的字段名、所述索引的字段值、所述更新字段名和更新前后的数据值生成查询结果;
推送模块,用于将所述查询结果推送给所述对象。
在一些实施例中,所述确定模块具体用于,对所述语句进行拆分,至少得到表名和设置字段,根据所述表结构确定所述表名在所述第二数据库中的索引位置,根据所述表结构确定所述设置字段在所述第二数据库中的更新字段位置。
在一些实施例中,所述确定模块还用于,判断所述表名和所述设置字段是否均为大写字母,若否,则将小写字母转换为大写字母,对均是大写字母的表名进行前后缀去除处理,并对均是大写字母的设置字段进行前后缀去除处理,根据所述表结构确定经过前后缀去除处理的表名在所述第二数据库中的索引位置,根据所述表结构确定经过前后缀去除处理的设置字段在所述第二数据库中的更新字段位置。
在一些实施例中,所述第二获取模块具体用于,根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取备份文件内容,对所述备份文件内容进行过滤处理,获取经过滤处理的备份文件内容的所述索引的字段名、所述索引的字段值、所述更新字段名和所述更新前后的数据值。
在一些实施例中,所述第一获取模块具体用于,从所述第一数据库中获取与所述待查询数据对应的数据操作日志,读取所述数据操作日志中与所述待查询数据对应的相关内容,其中,所述相关内容至少包括所述语句和所述标识。
另一个方面,本公开实施例还提供了一种电子设备,包括:存储器,处理器;
所述存储器用于存储所述处理器可执行指令的存储器;
其中,当执行所述存储器中的指令时,所述处理器被配置为实现如上任一实施例所述的方法。
另一个方面,本公开实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上任一实施例所述的方法。
本公开提供的接收对象发送的数据查询请求,其中,数据查询请求中携带待查询数据,从第一数据处理平台的第一数据库中获取与待查询数据对应的语句和标识,根据存储于第一数据库中的表结构确定语句在第二数据库中的索引位置和更新字段位置,其中,表结构是从第二数据处理平台的第二数据库中获取并存储至第一数据库的,根据标识、索引位置和更新字段位置从第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值,根据索引的字段名、索引的字段值、更新字段名和更新前后的数据值生成查询结果,将查询结果推送给对象,通过确定索引位置和更新字段位置,并根据标识、索引位置和更新字段位置获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值,以便生成查询结果,避免了现有技术中通过全面获取表索引,基于表索引确定更新字段的数据值时造成的搜索时间长的技术弊端,实现了提高查询效率,降低搜索成本的技术效果,且实现了对更新前后的数据值的可查询,以确保查询结果的完整性,且实现了数据修改轨迹的可追踪性,数据变动显示更加明了的技术效果。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本公开实施例的数据查询方法的场景示意图;
图2为本公开实施例的数据查询方法的流程示意图;
图3为本公开实施例的根据存储于第一数据库中的表结构确定语句在第二数据库中的索引位置和更新字段位置的方法的流程示意图;
图4为本公开实施例的根据标识、索引位置和更新字段位置从第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值的方法的流程示意图;
图5为本公开实施例的数据查询装置的模块示意图;
图6为本公开实施例的电子设备的结构示意图;
附图标记:10、用户,20、数据处理平台,30、用户终端,1、接收模块,2、第一获取模块,3、确定模块,4、第二获取模块,5、生成模块,6、推送模块。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开实施例提供的数据查询方法,可以适用于如图1所示的场景。
其中,执行本公开实施例的数据查询方法的主体可以为数据查询装置,数据查询装置可以为数据处理平台,也可以为服务器,也可以为终端等。
在如图1所示的应用场景中,对象可以为用户10,数据查询装置可以为数据处理平台20,且用户10可以通过用户终端30向数据处理平台20发送数据查询请求。
其中,用户10可以通过语音或者触屏的方式通过用户终端30向数据处理平台20发送数据查询请求。
在一些实施例中,用户10也可以与数据处理平台20直接进行交互,如用户10可以通过语音的方式向数据处理平台20发起数据查询请求。
在一些实施例中,数据处理平台20可以包括显示设备(图中未示出),用户10可通过点击显示设备的方式向数据处理平台20输入数据查询请求,即用户10还可以通过触屏的方式向数据处理平台20发起数据查询请求。
其中,数据处理平台20在接收到数据查询请求时,执行本公开实施例的数据查询方法,得到查询结果,并将查询结果经用户终端30推送至用户10。
在该示例中,用户终端30在接收到数据处理平台20反馈的查询结果时,对查询结果进行显示。
在一些实施例中,数据处理平台20也可以通过显示设备将查询结果进行显示。
当然,在一些实施例中,数据处理平台20可以通过语音的形式对查询结果进行播报;同理,用户终端30也可以通过语音的形式对查询结果进行播报。
下面以具体地实施例对本公开的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本公开的实施例进行描述。
一个方面,本公开实施例提供了一种适用于上述应用场景的数据查询方法。
请参阅图2,图2为本公开实施例的数据查询方法的流程示意图。
如图2所示,该方法包括:
S101:接收对象发送的数据查询请求,其中,数据查询请求中携带待查询数据。
结合上述应用场景可知,用户可以通过用户终端向数据处理平台发送用于查询数据的数据查询请求,该数据查询请求中携带待查询数据,以便数据处理平台生成与待查询数据相对应的查询结果,并将查询结果反馈至用户。
S102:从第一数据处理平台的第一数据库中获取与待查询数据对应的语句和标识。
其中,标识可以用于将待查询数据与其他数据进行区分。即,通过标识可以将不同的数据进行区分。
在一些实施例中,标识可以为ID。
在一些实施例中,数据处理平台可以为第一数据处理平台。第一数据处理平台可以为数据修复平台,如补天数据平台。
在一些实施例中,可以利用Druid从第一数据库中获取与待查询数据对应的语句和标识。
其中,Druid是一个拥有数据实时查询和分析的高容错、高性能开源分布式系统,旨在快速处理大规模的数据,并能够实现快速查询和分析。尤其是当发生代码部署、机器故障以及其他产品系统遇到宕机等情况时,Druid仍然能够保持100%正常运行。创建Druid的最初意图主要是为了解决查询延时问题,当时试图使用hadoop来实现交互式查询分析,但是很难满足实时分析的需要。而Druid提供了以交互方式访问数据的能力,并权衡了查询的灵活性和性能的全面性。
在一些实施例中,也可以利用Druid和MySQL从第一数据库中获取与待查询数据对应的语句和标识。
其中,MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性,MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
S103:根据存储于第一数据库中的表结构确定语句在第二数据库中的索引位置和更新字段位置,其中,表结构是从第二数据处理平台的第二数据库中获取并存储至第一数据库的。
其中,第二数据处理平台可以为第三方数据处理平台,第一数据库中的表结构源于第二数据库。
在该步骤中,基于语句对表结构进行查询,以便确定语句在第二数据库中的相关信息,如索引位置和更新字段位置。
S104:根据标识、索引位置和更新字段位置从第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值。
在获取到待查询数据的标识,且确定出索引位置和更新字段位置时,可确定出待查询数据对应的索引的字段名、索引的字段值、更新字段名和更新前后的数据值。
S105:根据索引的字段名、索引的字段值、更新字段名和更新前后的数据值生成查询结果。
S106:将查询结果推送给对象。
基于上述示例可知,在一些实施例中,数据处理平台可以通过显示设备对查询结果进行显示,或者语音播报,以便用户知悉查询结果。
在另一些实施例中,数据处理平台可将查询结果推送至用户终端,由用户终端对查询结果进行显示,或者语音播报,以便用户知悉查询结果。
本公开实施例提供了一种数据查询方法,该方法包括:接收对象发送的数据查询请求,其中,数据查询请求中携带待查询数据,从第一数据处理平台的第一数据库中获取与待查询数据对应的语句和标识,根据存储于第一数据库中的表结构确定语句在第二数据库中的索引位置和更新字段位置,其中,表结构是从第二数据处理平台的第二数据库中获取并存储至第一数据库的,根据标识、索引位置和更新字段位置从第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值,根据索引的字段名、索引的字段值、更新字段名和更新前后的数据值生成查询结果,将查询结果推送给对象,通过确定索引位置和更新字段位置,并根据标识、索引位置和更新字段位置获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值,以便生成查询结果,避免了现有技术中通过全面获取表索引,基于表索引确定更新字段的数据值时造成的搜索时间长的技术弊端,实现了提高查询效率,降低搜索成本的技术效果,且实现了对更新前后的数据值的可查询,以确保查询结果的完整性,且实现了数据修改轨迹的可追踪性,数据变动显示更加明了的技术效果。
结合图3(图3为本公开实施例的根据存储于第一数据库中的表结构确定语句在第二数据库中的索引位置和更新字段位置的方法的流程示意图)可知,在一些实施例中,S103包括:
S31:对语句进行拆分,至少得到表名和设置字段。
基于上述示例可知,可基于Druid对语句进行拆分,拆分成表名(Table Name),设置字段(Set字段)/更新值,WHERE条件等信息。
S32:根据表结构确定表名在第二数据库中的索引位置。
对表结构进行查询,以便确定表名对应的索引位置。
S33:根据表结构确定设置字段在第二数据库中的更新字段位置。
对表结构进行查询,以便确定设置字段对应的更新字段位置。
在一些实施例中,在S31之后,该方法还包括:
S31’:判断表名和设置字段是否均为大写字母,若否,则执行S32’,若是,则执行S33’。
S32’:将小写字母转换为大写字母。
S33’:对均是大写字母的表名进行前后缀去除处理,并对均是大写字母的设置字段进行前后缀去除处理。
在本公开实施例中,对为小写字母的表名和/或设置字段进行转换,转换为大写字母,并进行前后缀去除处理,以便去除冗余的信息,进而实现查询的高效性和准确性。
以及,S32包括:根据表结构确定经过前后缀去除处理的表名在第二数据库中的索引位置。
以及,S33包括:根据表结构确定经过前后缀去除处理的设置字段在第二数据库中的更新字段位置。
结合图4(图4为本公开实施例的根据标识、索引位置和更新字段位置从第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值的方法的流程示意图)可知,在一些实施例中,S104包括:
S41:根据标识、索引位置和更新字段位置从第二数据库中获取备份文件内容。
S42:对备份文件内容进行过滤处理。
S43:获取经过滤处理的备份文件内容的索引的字段名、索引的字段值、更新字段名和更新前后的数据值。
在一些实施例中,S102包括:
S1:从第一数据库中获取与待查询数据对应的数据操作日志。
S2:读取数据操作日志中与待查询数据对应的相关内容,其中,相关内容至少包括语句和标识。
在一些实施例中,在S105之后,该方法还包括:基于查询结果对数据的信息进行存储,如将索引的字段名和索引的字段值,更新字段名和更新前后的数据值添加至新的表格中进行存储,并存储至第一数据库,将操作人,操作时间也分别进行记录。
根据本公开实施例的另一个方面,本公开实施例提供了一种数据查询装置。
请参阅图5,图5为本公开实施例的数据查询装置的模块示意图。
如图5所示,该装置包括:
接收模块1,用于接收对象发送的数据查询请求,其中,所述数据查询请求中携带待查询数据;
第一获取模块2,用于从第一数据处理平台的第一数据库中获取与所述待查询数据对应的语句和标识;
确定模块3,用于根据存储于所述第一数据库中的表结构确定所述语句在第二数据库中的索引位置和更新字段位置,其中,所述表结构是从第二数据处理平台的第二数据库中获取并存储至所述第一数据库的;
第二获取模块4,用于根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值;
生成模块5,用于根据所述索引的字段名、所述索引的字段值、所述更新字段名和更新前后的数据值生成查询结果;
推送模块6,用于将所述查询结果推送给所述对象。
在一些实施例中,所述确定模块3具体用于,对所述语句进行拆分,至少得到表名和设置字段,根据所述表结构确定所述表名在所述第二数据库中的索引位置,根据所述表结构确定所述设置字段在所述第二数据库中的更新字段位置。
在一些实施例中,所述确定模块3还用于,判断所述表名和所述设置字段是否均为大写字母,若否,则将小写字母转换为大写字母,对均是大写字母的表名进行前后缀去除处理,并对均是大写字母的设置字段进行前后缀去除处理,根据所述表结构确定经过前后缀去除处理的表名在所述第二数据库中的索引位置,根据所述表结构确定经过前后缀去除处理的设置字段在所述第二数据库中的更新字段位置。
在一些实施例中,所述第二获取模块4具体用于,根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取备份文件内容,对所述备份文件内容进行过滤处理,获取经过滤处理的备份文件内容的所述索引的字段名、所述索引的字段值、所述更新字段名和所述更新前后的数据值。
在一些实施例中,所述第一获取模块2具体用于,从所述第一数据库中获取与所述待查询数据对应的数据操作日志,读取所述数据操作日志中与所述待查询数据对应的相关内容,其中,所述相关内容至少包括所述语句和所述标识。
根据本公开实施例的另一个方面,本公开实施例还提供了一种电子设备,包括:存储器,处理器;
存储器用于存储处理器可执行指令的存储器;
其中,当执行存储器中的指令时,处理器被配置为实现如上任一实施例所述的方法。
请参阅图6,图6为本公开实施例的电子设备的结构示意图。
如图6所示,该电子设备包括存储器和处理器,该电子设备还可以包括通信接口和总线,其中,处理器、通信接口和存储器通过总线连接;处理器用于执行存储器中存储的可执行模块,例如计算机程序。
其中,存储器可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
总线可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。
其中,存储器用于存储程序,处理器在接收到执行指令后,执行程序,前述本公开实施例任一实施例揭示的方法可以应用于处理器中,或者由处理器实现。
处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。结合本公开实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
根据本公开实施例的另一个方面,本公开实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上任一实施例所述的方法。
读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本公开实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
还应理解,在本公开各实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (12)
1.一种数据查询方法,其特征在于,所述方法包括:
接收对象发送的数据查询请求,其中,所述数据查询请求中携带待查询数据;
从第一数据处理平台的第一数据库中获取与所述待查询数据对应的语句和标识;
根据存储于所述第一数据库中的表结构确定所述语句在第二数据库中的索引位置和更新字段位置,其中,所述表结构是从第二数据处理平台的第二数据库中获取并存储至所述第一数据库的;
根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值;
根据所述索引的字段名、所述索引的字段值、所述更新字段名和更新前后的数据值生成查询结果;
将所述查询结果推送给所述对象。
2.根据权利要求1所述的方法,其特征在于,所述根据存储于所述第一数据库中的表结构确定所述语句在第二数据库中的索引位置和更新字段位置包括:
对所述语句进行拆分,至少得到表名和设置字段;
根据所述表结构确定所述表名在所述第二数据库中的索引位置;
根据所述表结构确定所述设置字段在所述第二数据库中的更新字段位置。
3.根据权利要求2所述的方法,其特征在于,在所述对所述语句进行拆分,至少得到表名和设置字段之后,所述方法还包括:
判断所述表名和所述设置字段是否均为大写字母;
若否,则将小写字母转换为大写字母;
对均是大写字母的表名进行前后缀去除处理,并对均是大写字母的设置字段进行前后缀去除处理;
以及,根据所述表结构确定所述表名在所述第二数据库中的索引位置包括:
根据所述表结构确定经过前后缀去除处理的表名在所述第二数据库中的索引位置;
根据所述表结构确定所述设置字段在所述第二数据库中的更新字段位置;
根据所述表结构确定经过前后缀去除处理的设置字段在所述第二数据库中的更新字段位置。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值包括:
根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取备份文件内容;
对所述备份文件内容进行过滤处理;
获取经过滤处理的备份文件内容的所述索引的字段名、所述索引的字段值、所述更新字段名和所述更新前后的数据值。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述从第一数据处理平台的第一数据库中获取与所述待查询数据对应的语句和标识包括:
从所述第一数据库中获取与所述待查询数据对应的数据操作日志;
读取所述数据操作日志中与所述待查询数据对应的相关内容,其中,所述相关内容至少包括所述语句和所述标识。
6.一种数据查询装置,其特征在于,所述装置包括:
接收模块,用于接收对象发送的数据查询请求,其中,所述数据查询请求中携带待查询数据;
第一获取模块,用于从第一数据处理平台的第一数据库中获取与所述待查询数据对应的语句和标识;
确定模块,用于根据存储于所述第一数据库中的表结构确定所述语句在第二数据库中的索引位置和更新字段位置,其中,所述表结构是从第二数据处理平台的第二数据库中获取并存储至所述第一数据库的;
第二获取模块,用于根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取索引的字段名、索引的字段值、更新字段名和更新前后的数据值;
生成模块,用于根据所述索引的字段名、所述索引的字段值、所述更新字段名和更新前后的数据值生成查询结果;
推送模块,用于将所述查询结果推送给所述对象。
7.根据权利要求6所述的装置,其特征在于,所述确定模块具体用于,对所述语句进行拆分,至少得到表名和设置字段,根据所述表结构确定所述表名在所述第二数据库中的索引位置,根据所述表结构确定所述设置字段在所述第二数据库中的更新字段位置。
8.根据权利要求7所述的装置,其特征在于,所述确定模块还用于,判断所述表名和所述设置字段是否均为大写字母,若否,则将小写字母转换为大写字母,对均是大写字母的表名进行前后缀去除处理,并对均是大写字母的设置字段进行前后缀去除处理,根据所述表结构确定经过前后缀去除处理的表名在所述第二数据库中的索引位置,根据所述表结构确定经过前后缀去除处理的设置字段在所述第二数据库中的更新字段位置。
9.根据权利要求6至8中任一项所述的装置,其特征在于,所述第二获取模块具体用于,根据所述标识、所述索引位置和所述更新字段位置从所述第二数据库中获取备份文件内容,对所述备份文件内容进行过滤处理,获取经过滤处理的备份文件内容的所述索引的字段名、所述索引的字段值、所述更新字段名和所述更新前后的数据值。
10.根据权利要求6至8中任一项所述的装置,其特征在于,所述第一获取模块具体用于,从所述第一数据库中获取与所述待查询数据对应的数据操作日志,读取所述数据操作日志中与所述待查询数据对应的相关内容,其中,所述相关内容至少包括所述语句和所述标识。
11.一种电子设备,包括:存储器,处理器;
所述存储器用于存储所述处理器可执行指令的存储器;
其中,当执行所述存储器中的指令时,所述处理器被配置为实现如权利要求1至5中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910933249.0A CN110647562B (zh) | 2019-09-29 | 2019-09-29 | 一种数据查询方法和装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910933249.0A CN110647562B (zh) | 2019-09-29 | 2019-09-29 | 一种数据查询方法和装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110647562A true CN110647562A (zh) | 2020-01-03 |
CN110647562B CN110647562B (zh) | 2022-04-26 |
Family
ID=69011944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910933249.0A Active CN110647562B (zh) | 2019-09-29 | 2019-09-29 | 一种数据查询方法和装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110647562B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111680038A (zh) * | 2020-05-18 | 2020-09-18 | 赵家乐 | 适用于变更的安全多维数据对象集的查询方法及存储介质 |
CN111797108A (zh) * | 2020-07-17 | 2020-10-20 | 西安数据如金信息科技有限公司 | 一种更新分析数据库的方法及装置 |
CN112307489A (zh) * | 2020-06-24 | 2021-02-02 | 神州融安科技(北京)有限公司 | 字符显示方法、装置、电子设备及计算机可读存储介质 |
CN112817990A (zh) * | 2021-01-28 | 2021-05-18 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备以及可读存储介质 |
CN112835938A (zh) * | 2021-02-23 | 2021-05-25 | 百度在线网络技术(北京)有限公司 | 数据处理方法、装置、电子设备和计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271473A (zh) * | 2008-04-29 | 2008-09-24 | 华为技术有限公司 | 数据查询方法、装置及系统 |
JP2010238038A (ja) * | 2009-03-31 | 2010-10-21 | Nec Corp | 分散ファイルシステム及び分散ファイル格納方法 |
CN107038207A (zh) * | 2017-02-20 | 2017-08-11 | 阿里巴巴集团控股有限公司 | 一种数据查询方法、数据处理方法及装置 |
CN108038175A (zh) * | 2017-09-30 | 2018-05-15 | 用友金融信息技术股份有限公司 | 多维数据动态关联查询方法、装置、计算机设备和介质 |
CN108304463A (zh) * | 2017-12-26 | 2018-07-20 | 中国广核电力股份有限公司 | 一种用于数据库的数据管理方法及其数据库应用组件 |
CN108427748A (zh) * | 2018-03-12 | 2018-08-21 | 北京奇艺世纪科技有限公司 | 分布式数据库二级索引查询方法、装置以及服务器 |
-
2019
- 2019-09-29 CN CN201910933249.0A patent/CN110647562B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101271473A (zh) * | 2008-04-29 | 2008-09-24 | 华为技术有限公司 | 数据查询方法、装置及系统 |
JP2010238038A (ja) * | 2009-03-31 | 2010-10-21 | Nec Corp | 分散ファイルシステム及び分散ファイル格納方法 |
CN107038207A (zh) * | 2017-02-20 | 2017-08-11 | 阿里巴巴集团控股有限公司 | 一种数据查询方法、数据处理方法及装置 |
CN108038175A (zh) * | 2017-09-30 | 2018-05-15 | 用友金融信息技术股份有限公司 | 多维数据动态关联查询方法、装置、计算机设备和介质 |
CN108304463A (zh) * | 2017-12-26 | 2018-07-20 | 中国广核电力股份有限公司 | 一种用于数据库的数据管理方法及其数据库应用组件 |
CN108427748A (zh) * | 2018-03-12 | 2018-08-21 | 北京奇艺世纪科技有限公司 | 分布式数据库二级索引查询方法、装置以及服务器 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111680038A (zh) * | 2020-05-18 | 2020-09-18 | 赵家乐 | 适用于变更的安全多维数据对象集的查询方法及存储介质 |
CN111680038B (zh) * | 2020-05-18 | 2021-08-31 | 江西师范大学 | 适用于变更的安全多维数据对象集的查询方法及存储介质 |
CN112307489A (zh) * | 2020-06-24 | 2021-02-02 | 神州融安科技(北京)有限公司 | 字符显示方法、装置、电子设备及计算机可读存储介质 |
CN112307489B (zh) * | 2020-06-24 | 2024-03-22 | 神州融安科技(北京)有限公司 | 字符显示方法、装置、电子设备及计算机可读存储介质 |
CN111797108A (zh) * | 2020-07-17 | 2020-10-20 | 西安数据如金信息科技有限公司 | 一种更新分析数据库的方法及装置 |
CN112817990A (zh) * | 2021-01-28 | 2021-05-18 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备以及可读存储介质 |
CN112817990B (zh) * | 2021-01-28 | 2024-03-08 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备以及可读存储介质 |
CN112835938A (zh) * | 2021-02-23 | 2021-05-25 | 百度在线网络技术(北京)有限公司 | 数据处理方法、装置、电子设备和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110647562B (zh) | 2022-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110647562B (zh) | 一种数据查询方法和装置、电子设备、存储介质 | |
CN108089893B (zh) | 冗余资源的确定方法、装置、终端设备与存储介质 | |
CN109829096B (zh) | 一种数据采集方法、装置、电子设备及存储介质 | |
CN110413634B (zh) | 数据查询方法、系统、装置及计算机可读存储介质 | |
CN110737594B (zh) | 自动生成测试用例的数据库标准符合性测试方法及装置 | |
CN110851539A (zh) | 元数据校验方法、装置、可读存储介质和电子设备 | |
US20150341771A1 (en) | Hotspot aggregation method and device | |
CN109241026B (zh) | 数据管理的方法、装置及系统 | |
CN109376142B (zh) | 数据迁移方法及终端设备 | |
CN109358898B (zh) | 一种信息处理方法、装置、电子设备和存储介质 | |
CN111324781A (zh) | 一种数据分析方法、装置及设备 | |
CN113268500B (zh) | 业务处理方法、装置及电子设备 | |
CN111722998A (zh) | 代码的质量控制方法、系统、设备及存储介质 | |
CN111460232A (zh) | 功能模块的查找方法、装置、终端和计算机可读存储介质 | |
CN107609011B (zh) | 一种数据库记录的维护方法和装置 | |
CN112988776B (zh) | 文本解析规则的更新方法、装置、设备及可读存储介质 | |
CN111143356B (zh) | 报表检索方法及装置 | |
CN117171030A (zh) | 软件运行环境检测方法、装置、设备及存储介质 | |
CN109558403B (zh) | 数据聚合方法及装置、计算机装置及计算机可读存储介质 | |
CN111078671A (zh) | 数据表字段的修改方法、装置、设备和介质 | |
CN107729476B (zh) | 一种机器数据在线处理方法及系统 | |
CN115757174A (zh) | 一种数据库的差异检测方法及装置 | |
CN111858619A (zh) | 一种数据自流转的方法、装置和电子设备 | |
CN110020348B (zh) | 圈选事件的预警方法及装置 | |
CN109408368B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |