CN112860737B - 数据查询方法、装置、电子设备及可读存储介质 - Google Patents
数据查询方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN112860737B CN112860737B CN202110267043.6A CN202110267043A CN112860737B CN 112860737 B CN112860737 B CN 112860737B CN 202110267043 A CN202110267043 A CN 202110267043A CN 112860737 B CN112860737 B CN 112860737B
- Authority
- CN
- China
- Prior art keywords
- field
- data
- query
- target
- application program
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012545 processing Methods 0.000 claims abstract description 10
- 230000004044 response Effects 0.000 claims description 13
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据处理,揭露一种数据查询方法,包括:建立各个应用程序对应的初始表格;为每个维度字段设置优先级,确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合;当某一指定数据源中某一指定字段的数值有变更时,获取指定字段对应的目标字段集合,计算目标字段集合中每个维度字段对应的目标数值,将目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格;获取查询请求携带的目标应用程序名称及待查询字段名称,从目标应用程序对应的目标表格中查询待查询字段对应的数值,得到查询结果。本发明还提供一种数据查询装置、电子设备及可读存储介质。本发明提高了数据查询效率。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种数据查询方法、装置、电子设备及可读存储介质。
背景技术
随着大数据时代的到来,数据量越加庞大,如何快速、准确的查询数据是当前的研究重点。当前,随着业务的发展及数据量的增加,所需要查询的数据通常不仅仅为单表中的数据,可能关联到多个表单的数据,需要串行执行查询逻辑,一个查询可能需要调用10个以上的接口,接口平均响应时间在1.5秒以上,从而导致查询时间过长。因此,亟需一种数据查询方法,以提高查询效率。
发明内容
鉴于以上内容,有必要提供一种数据查询方法,旨在提高数据查询效率。
本发明提供的数据查询方法,包括:
从第一数据库中获取第一时间段内各个应用程序对应的第一查询数据,基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格,为所述初始表格中每个维度字段配置对应的查询逻辑及运算逻辑,所述运算逻辑包括参与运算的原始字段名称及其所属数据源名称;
基于所述查询逻辑为每个维度字段设置优先级,基于所述运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合;
实时监测各个数据源,当某一指定数据源中某一指定字段的数值有变更时,获取所述指定字段对应的目标字段集合,基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值,将所述目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格;
解析用户基于客户端发出的查询请求,获取所述请求携带的目标应用程序名称及所述目标应用程序的待查询字段名称,从所述目标应用程序对应的目标表格中查询所述待查询字段对应的数值,得到查询结果。
可选的,所述第一查询数据包括各个应用程序对应的被查询字段的名称及其被查询次数、查询响应时间,所述基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格包括:
将被查询次数大于第一阈值的被查询字段及查询响应时间大于第二阈值的被查询字段作为各个应用程序对应的维度字段;
按照被查询次数从高到低的顺序将所述维度字段分别填入预设类型的空白表格中,得到各个应用程序对应的初始表格。
可选的,所述查询逻辑包括查询的依赖关系及依赖层级,所述基于所述查询逻辑为每个维度字段设置优先级包括:
按照依赖层级从低到高的顺序设置维度字段从高到低的优先级,依赖层级越低,优先级越高。
可选的,所述基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值包括:
接收所述指定数据源所属的客户端发送的数据密文及标准信息摘要值;
从第二数据库中获取所述指定数据源所属的客户端对应的密钥,采用所述密钥解密所述数据密文,得到所述指定字段对应的变更后的数据;
基于所述标准信息摘要值对所述变更后的数据进行安全性校验,当安全性校验通过时,按照优先级从高到低的顺序依次计算所述目标字段集合中每个维度字段对应的目标数值。
可选的,所述基于所述标准信息摘要值对所述变更后的数据进行安全性校验包括:
计算所述变更后的数据的信息摘要值,判断计算得到的信息摘要值与所述标准信息摘要值是否一致;
当计算得到的信息摘要值与所述标准信息摘要值一致时,判断安全性校验通过。
可选的,在判断计算得到的信息摘要值与所述标准信息摘要值是否一致之后,所述方法还包括:
若计算得到的信息摘要值与所述标准信息摘要值不一致,则判定安全性校验失败,丢弃所述变更后的数据,并向预设客户端发送预警信息。
可选的,所述方法还包括:
每隔第二时间段,获取各个应用程序对应的第二查询数据,基于所述第二查询数据更新各个应用程序对应的目标表格中的维度字段的名称及其数值,得到各个应用程序对应的更新后的目标表格。
为了解决上述问题,本发明还提供一种数据查询装置,所述装置包括:
建立模块,用于从第一数据库中获取第一时间段内各个应用程序对应的第一查询数据,基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格,为所述初始表格中每个维度字段配置对应的查询逻辑及运算逻辑,所述运算逻辑包括参与运算的原始字段名称及其所属数据源名称;
确定模块,用于基于所述查询逻辑为每个维度字段设置优先级,基于所述运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合;
更新模块,用于实时监测各个数据源,当某一指定数据源中某一指定字段的数值有变更时,获取所述指定字段对应的目标字段集合,基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值,将所述目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格;
查询模块,用于解析用户基于客户端发出的查询请求,获取所述请求携带的目标应用程序名称及所述目标应用程序的待查询字段名称,从所述目标应用程序对应的目标表格中查询所述待查询字段对应的数值,得到查询结果。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的数据查询程序,所述数据查询程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述数据查询方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据查询程序,所述数据查询程序可被一个或者多个处理器执行,以实现上述数据查询方法。
相较现有技术,本发明首先基于第一查询数据建立各个应用程序对应的预设类型的初始表格,该步骤实现了将应用程序对应的多表转换为单表;接着,基于查询逻辑为每个维度字段设置优先级,基于运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合;然后,当某一指定数据源中某一指定字段的数值有变更时,获取指定字段对应的目标字段集合,根据优先级逐一计算目标字段集合中每个维度字段对应的目标数值,将目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格,该步骤实现了当数据源发生变化时,相关联的表格数据相应自动更新,保证了数据的准确性;最后,获取查询请求携带的目标应用程序名称及待查询字段名称,从目标应用程序对应的目标表格中查询待查询字段对应的数值,得到查询结果,该步骤实现了从单表中迅速获取目标数据,有效避免了现有技术中一个查询需要等待多个接口响应的情况。因此,本发明提高了数据查询效率。
附图说明
图1为本发明一实施例提供的数据查询方法的流程示意图;
图2为本发明一实施例提供的数据查询装置的模块示意图;
图3为本发明一实施例提供的实现数据查询方法的电子设备的结构示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明提供一种数据查询方法。参照图1所示,为本发明一实施例提供的数据查询方法的流程示意图。该方法可以由一个电子设备执行,该电子设备可以由软件和/或硬件实现。
本实施例中,数据查询方法包括:
S1、从第一数据库中获取第一时间段内各个应用程序对应的第一查询数据,基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格,为所述初始表格中每个维度字段配置对应的查询逻辑及运算逻辑,所述运算逻辑包括参与运算的原始字段名称及其所属数据源名称。
本实施例中的查询是针对应用程序的查询,例如,在购物类应用程序中查询某一产品的库存信息。
所述第一查询数据包括各个应用程序对应的被查询字段的名称及其被查询次数、查询响应时间,所述基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格包括:
A11、将被查询次数大于第一阈值的被查询字段及查询响应时间大于第二阈值的被查询字段作为各个应用程序对应的维度字段;
A12、按照被查询次数从高到低的顺序将所述维度字段分别填入预设类型的空白表格中,得到各个应用程序对应的初始表格。
本实施例中,所述预设类型的初始表格为elasticsearch表,elasticsearch表支持分布式、高扩展、高实时的搜索,相较于其它表格,elasticsearch表可提供更高效的搜索查询。
将经常被查询及查询响应时间较长的被查询字段作为维度字段填入elasticsearch表中,后续直接基于elasticsearch表进行查询,可极大的提高查询效率;同时将被查询次数较多的维度字段放入elasticsearch表的前面,可更快捷的查询到该维度字段。
本实施例中为每个应用程序建立一个elasticsearch表,在其它实施例中,可根据业务需要为不同的业务场景分别建立一个elasticsearch表。例如,针对保险类应用程序,可按照险种类型,为车险数据、健康险数据及财产险数据分别建立一个elasticsearch表;也可以按照保险进程,为投保数据、续展数据及理赔数据分别建立一个elasticsearch表。
本实施例中,可根据应用程序对应的程序代码分析、确定该应用程序的各个维度字段对应的查询逻辑及运算逻辑。
S2、基于所述查询逻辑为每个维度字段设置优先级,基于所述运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合。
所述查询逻辑包括查询的依赖关系及依赖层级,所述基于所述查询逻辑为每个维度字段设置优先级包括:
按照依赖层级从低到高的顺序设置维度字段从高到低的优先级,依赖层级越低,优先级越高。
例如,对于保险类应用程序,用户的基本信息(手机号码、通讯地址、身份证号码等)可直接从数据源中查询到,而不需要依赖任何中间数据,因此,基本信息所对应的优先级最高;年度理赔总额则需要汇总年度内的各类险种的每个理赔单对应的数据,则年度理赔总额对应的优先级稍低。
所述运算逻辑包括运算公式及参与运算的各个字段,参与运算的字段包括数据源中的原始字段及运算的中间字段,例如,对于年度理赔总额,各个理赔单对应的理赔金额为原始字段,各险种对应的月理赔额、年理赔额为中间字段。基于维度字段的运算逻辑即可确定各个数据源中每个原始字段对应的维度字段,当原始字段的数值发生变化时,其对应的字段集合中的每个维度字段的数值也将发生变化。
S3、实时监测各个数据源,当某一指定数据源中某一指定字段的数值有变更时,获取所述指定字段对应的目标字段集合,基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值,将所述目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格。
所述基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值包括:
B11、接收所述指定数据源所属的客户端发送的数据密文及标准信息摘要值;
B12、从第二数据库中获取所述指定数据源所属的客户端对应的密钥,采用所述密钥解密所述数据密文,得到所述指定字段对应的变更后的数据;
B13、基于所述标准信息摘要值对所述变更后的数据进行安全性校验,当安全性校验通过时,按照优先级从高到低的顺序依次计算所述目标字段集合中每个维度字段对应的目标数值。
本实施例中,为保证数据传输的安全性,数据源所属客户端在上报数据前会先将数据加密,可采用对称加密密钥或非对称加密中的私钥进行加密,第二数据库中存储有各个数据源所属客户端对应的对称密钥或非对称公钥,以便于对接收到的数据密文进行解密。
在计算目标字段集合中各个维度字段对应的目标数值时,按照优先级从高到低的顺序(即依赖层级由低到高的顺序)进行计算,无依赖关系的维度字段的目标数值最早更新,接着更新依赖层级较低的维度字段的目标数值,依赖层级高的维度字段可将依赖层级低的维度字段的目标数值作为中间数值进行计算,避免了重复计算,提高了计算效率。例如,可将计算得到月理赔额作为中间数据计算年度理赔总额,避免了根据各个理赔单的原始数据进行重复计算。
本实施例中,所述基于所述标准信息摘要值对所述变更后的数据进行安全性校验包括:
C11、计算所述变更后的数据的信息摘要值,判断计算得到的信息摘要值与所述标准信息摘要值是否一致;
C12、当计算得到的信息摘要值与所述标准信息摘要值一致时,判断安全性校验通过。
所述信息摘要值为MD5值,通过比对计算得到的信息摘要值与标准信息摘要值是否一致,可进一步保证数据密文的安全性(未被篡改)及完整性。
本实施例中,在判断计算得到的信息摘要值与所述标准信息摘要值是否一致之后,所述方法还包括:
若计算得到的信息摘要值与所述标准信息摘要值不一致,则判定安全性校验失败,丢弃所述变更后的数据,并向预设客户端发送预警信息。
S4、解析用户基于客户端发出的查询请求,获取所述请求携带的目标应用程序名称及所述目标应用程序的待查询字段名称,从所述目标应用程序对应的目标表格中查询所述待查询字段对应的数值,得到查询结果。
本实施例中,在数据源的某一原始字段的数值变更时实时更新表格中关联的维度字段的数值,保证了目标表格中数据的准确性;查询时可根据目标表格进行单表查询,有效避免了现有技术中一个查询需等待多个接口响应的情况,且无需执行复杂的查询逻辑,极大的提高了查询效率。
本实施例中,所述方法还包括:
每隔第二时间段,获取各个应用程序对应的第二查询数据,基于所述第二查询数据更新各个应用程序对应的目标表格中的维度字段的名称及其数值,得到各个应用程序对应的更新后的目标表格。
例如,每月更新一次目标表格中的维度字段名称,可使得目标表格中的维度字段更符合当前的查询需求。
由上述实施例可知,本发明提出的数据查询方法,首先,基于第一查询数据建立各个应用程序对应的预设类型的初始表格,该步骤实现了将应用程序对应的多表转换为单表;接着,基于查询逻辑为每个维度字段设置优先级,基于运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合;然后,当某一指定数据源中某一指定字段的数值有变更时,获取指定字段对应的目标字段集合,根据优先级逐一计算目标字段集合中每个维度字段对应的目标数值,将目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格,该步骤实现了当数据源发生变化时,相关联的表格数据相应自动更新,保证了数据的准确性;最后,获取查询请求携带的目标应用程序名称及待查询字段名称,从目标应用程序对应的目标表格中查询待查询字段对应的数值,得到查询结果,该步骤实现了从单表中迅速获取目标数据,有效避免了现有技术中一个查询需要等待多个接口响应的情况。因此,本发明提高了数据查询效率。
如图2所示,为本发明一实施例提供的数据查询装置的模块示意图。
本发明所述数据查询装置100可以安装于电子设备中。根据实现的功能,所述数据查询装置100可以包括建立模块110、确定模块120、更新模块130及查询模块140。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
建立模块110,用于从第一数据库中获取第一时间段内各个应用程序对应的第一查询数据,基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格,为所述初始表格中每个维度字段配置对应的查询逻辑及运算逻辑,所述运算逻辑包括参与运算的原始字段名称及其所属数据源名称。
本实施例中的查询是针对应用程序的查询,例如,在购物类应用程序中查询某一产品的库存信息。
所述第一查询数据包括各个应用程序对应的被查询字段的名称及其被查询次数、查询响应时间,所述基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格包括:
A21、将被查询次数大于第一阈值的被查询字段及查询响应时间大于第二阈值的被查询字段作为各个应用程序对应的维度字段;
A22、按照被查询次数从高到低的顺序将所述维度字段分别填入预设类型的空白表格中,得到各个应用程序对应的初始表格。
本实施例中,所述预设类型的初始表格为elasticsearch表,elasticsearch表支持分布式、高扩展、高实时的搜索,相较于其它表格,elasticsearch表可提供更高效的搜索查询。
将经常被查询及查询响应时间较长的被查询字段作为维度字段填入elasticsearch表中,后续直接基于elasticsearch表进行查询,可极大的提高查询效率;同时将被查询次数较多的维度字段放入elasticsearch表的前面,可更快捷的查询到该维度字段。
本实施例中为每个应用程序建立一个elasticsearch表,在其它实施例中,可根据业务需要为不同的业务场景分别建立一个elasticsearch表。例如,针对保险类应用程序,可按照险种类型,为车险数据、健康险数据及财产险数据分别建立一个elasticsearch表;也可以按照保险进程,为投保数据、续展数据及理赔数据分别建立一个elasticsearch表。
本实施例中,可根据应用程序对应的程序代码分析、确定该应用程序的各个维度字段对应的查询逻辑及运算逻辑。
确定模块120,用于基于所述查询逻辑为每个维度字段设置优先级,基于所述运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合。
所述查询逻辑包括查询的依赖关系及依赖层级,所述基于所述查询逻辑为每个维度字段设置优先级包括:
按照依赖层级从低到高的顺序设置维度字段从高到低的优先级,依赖层级越低,优先级越高。
例如,对于保险类应用程序,用户的基本信息(手机号码、通讯地址、身份证号码等)可直接从数据源中查询到,而不需要依赖任何中间数据,因此,基本信息所对应的优先级最高;年度理赔总额则需要汇总年度内的各类险种的每个理赔单对应的数据,则年度理赔总额对应的优先级稍低。
所述运算逻辑包括运算公式及参与运算的各个字段,参与运算的字段包括数据源中的原始字段及运算的中间字段,例如,对于年度理赔总额,各个理赔单对应的理赔金额为原始字段,各险种对应的月理赔额、年理赔额为中间字段。基于维度字段的运算逻辑即可确定各个数据源中每个原始字段对应的维度字段,当原始字段的数值发生变化时,其对应的字段集合中的每个维度字段的数值也将发生变化。
更新模块130,用于实时监测各个数据源,当某一指定数据源中某一指定字段的数值有变更时,获取所述指定字段对应的目标字段集合,基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值,将所述目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格。
所述基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值包括:
B21、接收所述指定数据源所属的客户端发送的数据密文及标准信息摘要值;
B22、从第二数据库中获取所述指定数据源所属的客户端对应的密钥,采用所述密钥解密所述数据密文,得到所述指定字段对应的变更后的数据;
B23、基于所述标准信息摘要值对所述变更后的数据进行安全性校验,当安全性校验通过时,按照优先级从高到低的顺序依次计算所述目标字段集合中每个维度字段对应的目标数值。
本实施例中,为保证数据传输的安全性,数据源所属客户端在上报数据前会先将数据加密,可采用对称加密密钥或非对称加密中的私钥进行加密,第二数据库中存储有各个数据源所属客户端对应的对称密钥或非对称公钥,以便于对接收到的数据密文进行解密。
在计算目标字段集合中各个维度字段对应的目标数值时,按照优先级从高到低的顺序(即依赖层级由低到高的顺序)进行计算,无依赖关系的维度字段的目标数值最早更新,接着更新依赖层级较低的维度字段的目标数值,依赖层级高的维度字段可将依赖层级低的维度字段的目标数值作为中间数值进行计算,避免了重复计算,提高了计算效率。例如,可将计算得到月理赔额作为中间数据计算年度理赔总额,避免了根据各个理赔单的原始数据进行重复计算。
本实施例中,所述基于所述标准信息摘要值对所述变更后的数据进行安全性校验包括:
C21、计算所述变更后的数据的信息摘要值,判断计算得到的信息摘要值与所述标准信息摘要值是否一致;
C22、当计算得到的信息摘要值与所述标准信息摘要值一致时,判断安全性校验通过。
所述信息摘要值为MD5值,通过比对计算得到的信息摘要值与标准信息摘要值是否一致,可进一步保证数据密文的安全性(未被篡改)及完整性。
本实施例中,在判断计算得到的信息摘要值与所述标准信息摘要值是否一致之后,所述更新模块130还用于:
若计算得到的信息摘要值与所述标准信息摘要值不一致,则判定安全性校验失败,丢弃所述变更后的数据,并向预设客户端发送预警信息。
查询模块140,用于解析用户基于客户端发出的查询请求,获取所述请求携带的目标应用程序名称及所述目标应用程序的待查询字段名称,从所述目标应用程序对应的目标表格中查询所述待查询字段对应的数值,得到查询结果。
本实施例中,在数据源的某一原始字段的数值变更时实时更新表格中关联的维度字段的数值,保证了目标表格中数据的准确性;查询时可根据目标表格进行单表查询,有效避免了现有技术中一个查询需等待多个接口响应的情况,且无需执行复杂的查询逻辑,极大的提高了查询效率。
本实施例中,所述查询模块140还用于:
每隔第二时间段,获取各个应用程序对应的第二查询数据,基于所述第二查询数据更新各个应用程序对应的目标表格中的维度字段的名称及其数值,得到各个应用程序对应的更新后的目标表格。
例如,每月更新一次目标表格中的维度字段名称,可使得目标表格中的维度字段更符合当前的查询需求。
如图3所示,为本发明一实施例提供的实现数据查询方法的电子设备的结构示意图。
所述电子设备1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。所述电子设备1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
在本实施例中,电子设备1包括,但不仅限于,可通过***总线相互通信连接的存储器11、处理器12、网络接口13,该存储器11中存储有数据查询程序10,所述数据查询程序10可被所述处理器12执行。图3仅示出了具有组件11-13以及数据查询程序10的电子设备1,本领域技术人员可以理解的是,图3示出的结构并不构成对电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
其中,存储器11包括内存及至少一种类型的可读存储介质。内存为电子设备1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子设备1的内部存储单元,例如该电子设备1的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。本实施例中,存储器11的可读存储介质通常用于存储安装于电子设备1的操作***和各类应用软件,例如存储本发明一实施例中的数据查询程序10的代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子设备1的总体操作,例如执行与其他设备进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行数据查询程序10等。
网络接口13可包括无线网络接口或有线网络接口,该网络接口13用于在所述电子设备1与客户端(图中未画出)之间建立通信连接。
可选的,所述电子设备1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选的,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的数据查询程序10是多个指令的组合,在所述处理器12中运行时,可以实现:
从第一数据库中获取第一时间段内各个应用程序对应的第一查询数据,基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格,为所述初始表格中每个维度字段配置对应的查询逻辑及运算逻辑,所述运算逻辑包括参与运算的原始字段名称及其所属数据源名称;
基于所述查询逻辑为每个维度字段设置优先级,基于所述运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合;
实时监测各个数据源,当某一指定数据源中某一指定字段的数值有变更时,获取所述指定字段对应的目标字段集合,基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值,将所述目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格;
解析用户基于客户端发出的查询请求,获取所述请求携带的目标应用程序名称及所述目标应用程序的待查询字段名称,从所述目标应用程序对应的目标表格中查询所述待查询字段对应的数值,得到查询结果。
具体地,所述处理器12对上述数据查询程序10的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。所述计算机可读介质可以是非易失性的,也可以是非易失性的。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
所述计算机可读存储介质上存储有数据查询程序10,所述数据查询程序10可被一个或者多个处理器执行,本发明计算机可读存储介质具体实施方式与上述数据查询方法各实施例基本相同,在此不作赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。***权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种数据查询方法,其特征在于,所述方法包括:
从第一数据库中获取第一时间段内各个应用程序对应的第一查询数据,基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格,为所述初始表格中每个维度字段配置对应的查询逻辑及运算逻辑,所述运算逻辑包括参与运算的原始字段名称及其所属数据源名称;
基于所述查询逻辑为每个维度字段设置优先级,基于所述运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合;
实时监测各个数据源,当某一指定数据源中某一指定字段的数值有变更时,获取所述指定字段对应的目标字段集合,基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值,将所述目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格;
解析用户基于客户端发出的查询请求,获取所述请求携带的目标应用程序名称及所述目标应用程序的待查询字段名称,从所述目标应用程序对应的目标表格中查询所述待查询字段对应的数值,得到查询结果。
2.如权利要求1所述的数据查询方法,其特征在于,所述第一查询数据包括各个应用程序对应的被查询字段的名称及其被查询次数、查询响应时间,所述基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格包括:
将被查询次数大于第一阈值的被查询字段及查询响应时间大于第二阈值的被查询字段作为各个应用程序对应的维度字段;
按照被查询次数从高到低的顺序将所述维度字段分别填入预设类型的空白表格中,得到各个应用程序对应的初始表格。
3.如权利要求1所述的数据查询方法,其特征在于,所述查询逻辑包括查询的依赖关系及依赖层级,所述基于所述查询逻辑为每个维度字段设置优先级包括:
按照依赖层级从低到高的顺序设置维度字段从高到低的优先级,依赖层级越低,优先级越高。
4.如权利要求1所述的数据查询方法,其特征在于,所述基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值包括:
接收所述指定数据源所属的客户端发送的数据密文及标准信息摘要值;
从第二数据库中获取所述指定数据源所属的客户端对应的密钥,采用所述密钥解密所述数据密文,得到所述指定字段对应的变更后的数据;
基于所述标准信息摘要值对所述变更后的数据进行安全性校验,当安全性校验通过时,按照优先级从高到低的顺序依次计算所述目标字段集合中每个维度字段对应的目标数值。
5.如权利要求4所述的数据查询方法,其特征在于,所述基于所述标准信息摘要值对所述变更后的数据进行安全性校验包括:
计算所述变更后的数据的信息摘要值,判断计算得到的信息摘要值与所述标准信息摘要值是否一致;
当计算得到的信息摘要值与所述标准信息摘要值一致时,判断安全性校验通过。
6.如权利要求5所述的数据查询方法,其特征在于,在判断计算得到的信息摘要值与所述标准信息摘要值是否一致之后,所述方法还包括:
若计算得到的信息摘要值与所述标准信息摘要值不一致,则判定安全性校验失败,丢弃所述变更后的数据,并向预设客户端发送预警信息。
7.如权利要求1所述的数据查询方法,其特征在于,所述方法还包括:
每隔第二时间段,获取各个应用程序对应的第二查询数据,基于所述第二查询数据更新各个应用程序对应的目标表格中的维度字段的名称及其数值,得到各个应用程序对应的更新后的目标表格。
8.一种数据查询装置,其特征在于,所述装置包括:
建立模块,用于从第一数据库中获取第一时间段内各个应用程序对应的第一查询数据,基于所述第一查询数据建立各个应用程序对应的预设类型的初始表格,为所述初始表格中每个维度字段配置对应的查询逻辑及运算逻辑,所述运算逻辑包括参与运算的原始字段名称及其所属数据源名称;
确定模块,用于基于所述查询逻辑为每个维度字段设置优先级,基于所述运算逻辑确定各个数据源中每个原始字段对应的维度字段,将各个原始字段对应的维度字段的集合作为一个字段集合;
更新模块,用于实时监测各个数据源,当某一指定数据源中某一指定字段的数值有变更时,获取所述指定字段对应的目标字段集合,基于所述优先级逐一计算所述目标字段集合中每个维度字段对应的目标数值,将所述目标数值更新至对应的初始表格,得到各个应用程序对应的目标表格;
查询模块,用于解析用户基于客户端发出的查询请求,获取所述请求携带的目标应用程序名称及所述目标应用程序的待查询字段名称,从所述目标应用程序对应的目标表格中查询所述待查询字段对应的数值,得到查询结果。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的数据查询程序,所述数据查询程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一项所述的数据查询方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据查询程序,所述数据查询程序可被一个或者多个处理器执行,以实现如权利要求1至7任一项所述的数据查询方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110267043.6A CN112860737B (zh) | 2021-03-11 | 2021-03-11 | 数据查询方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110267043.6A CN112860737B (zh) | 2021-03-11 | 2021-03-11 | 数据查询方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112860737A CN112860737A (zh) | 2021-05-28 |
CN112860737B true CN112860737B (zh) | 2022-08-12 |
Family
ID=75994182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110267043.6A Active CN112860737B (zh) | 2021-03-11 | 2021-03-11 | 数据查询方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112860737B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113705184B (zh) * | 2021-09-01 | 2023-09-22 | 同盾科技有限公司 | 自定义报表的生成方法及装置、存储介质、电子设备 |
CN115314751B (zh) * | 2022-08-08 | 2024-07-23 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN117151555B (zh) * | 2023-11-01 | 2024-02-02 | 青岛文达通科技股份有限公司 | 一种智慧城市服务*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7657515B1 (en) * | 2007-03-30 | 2010-02-02 | Alexa Internet | High efficiency document search |
US8447774B1 (en) * | 2004-11-23 | 2013-05-21 | Progress Software Corporation | Database-independent mechanism for retrieving relational data as XML |
CN105512200A (zh) * | 2015-11-26 | 2016-04-20 | 华为技术有限公司 | 一种分布式数据库处理的方法和设备 |
CN110457346A (zh) * | 2019-07-05 | 2019-11-15 | 中国平安财产保险股份有限公司 | 数据查询方法、装置及计算机可读存储介质 |
CN111125099A (zh) * | 2019-12-10 | 2020-05-08 | 苏宁云计算有限公司 | 基于Druid宽表的关联数据处理方法及装置 |
CN111782923A (zh) * | 2020-06-24 | 2020-10-16 | 平安科技(深圳)有限公司 | 数据查询方法、装置、电子设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001075664A1 (en) * | 2000-03-31 | 2001-10-11 | Kapow Aps | Method of retrieving attributes from at least two data sources |
US7739309B2 (en) * | 2004-09-30 | 2010-06-15 | Microsoft Corporation | Method, system, and computer-readable medium for merging data from multiple data sources for use in an electronic document |
US7797312B2 (en) * | 2006-04-06 | 2010-09-14 | International Business Machines Corporation | Database query processing method and system |
US20130173662A1 (en) * | 2012-01-03 | 2013-07-04 | International Business Machines Corporation | Dependency based prioritization of sub-queries and placeholder resolution |
-
2021
- 2021-03-11 CN CN202110267043.6A patent/CN112860737B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8447774B1 (en) * | 2004-11-23 | 2013-05-21 | Progress Software Corporation | Database-independent mechanism for retrieving relational data as XML |
US7657515B1 (en) * | 2007-03-30 | 2010-02-02 | Alexa Internet | High efficiency document search |
CN105512200A (zh) * | 2015-11-26 | 2016-04-20 | 华为技术有限公司 | 一种分布式数据库处理的方法和设备 |
CN110457346A (zh) * | 2019-07-05 | 2019-11-15 | 中国平安财产保险股份有限公司 | 数据查询方法、装置及计算机可读存储介质 |
CN111125099A (zh) * | 2019-12-10 | 2020-05-08 | 苏宁云计算有限公司 | 基于Druid宽表的关联数据处理方法及装置 |
CN111782923A (zh) * | 2020-06-24 | 2020-10-16 | 平安科技(深圳)有限公司 | 数据查询方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
干货 | Elasticsearch多表关联设计指南;@ 小浩;《https://www.cnblogs.com/xiohao/p/12774882.html》;20200425;第1-5页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112860737A (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112860737B (zh) | 数据查询方法、装置、电子设备及可读存储介质 | |
CN112445854B (zh) | 多源业务数据实时处理方法、装置、终端及存储介质 | |
CN112416728A (zh) | 埋点数据获取方法、装置、客户端设备及可读存储介质 | |
CN112527599A (zh) | 智能监控方法、装置、电子设备及可读存储介质 | |
CN113342498A (zh) | 并发请求处理方法、装置、服务器及存储介质 | |
CN111400308A (zh) | 缓存数据的处理方法、电子装置及可读存储介质 | |
CN112948418A (zh) | 动态查询方法、装置、设备及存储介质 | |
CN112596932A (zh) | 服务注册及拦截方法、装置、电子设备及可读存储介质 | |
CN111814045B (zh) | 数据查询方法、装置、电子设备及存储介质 | |
CN112506486A (zh) | 搜索***建立方法、装置、电子设备及可读存储介质 | |
CN114185895A (zh) | 数据导入导出方法、装置、电子设备及存储介质 | |
CN110309496B (zh) | 数据汇总方法、电子装置及计算机可读存储介质 | |
CN111159183B (zh) | 报表生成方法、电子装置及计算机可读存储介质 | |
CN112699142A (zh) | 冷热数据处理方法、装置、电子设备及存储介质 | |
CN112631731A (zh) | 数据查询方法、装置、电子设备及存储介质 | |
CN111723077A (zh) | 数据字典维护方法、装置及计算机设备 | |
CN112527280B (zh) | 界面展示方法、装置、服务器及可读存储介质 | |
CN115409008A (zh) | 图表生成方法、装置、电子设备及可读存储介质 | |
CN113094248A (zh) | 用户行为数据分析方法、装置、电子设备及介质 | |
WO2019071899A1 (zh) | 电子装置、车辆数据导入方法及存储介质 | |
CN113590703B (zh) | Es数据导入方法、装置、电子设备及可读存储介质 | |
CN115086047B (zh) | 接口鉴权方法、装置、电子设备及存储介质 | |
CN112286703B (zh) | 用户分类方法、装置、客户端设备及可读存储介质 | |
CN113364848B (zh) | 文件缓存方法、装置、电子设备及存储介质 | |
CN112182598A (zh) | 公有样本id识别方法、装置、服务器及可读存储介质 |
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 |