CN109840259B - 数据查询方法、装置、电子设备及可读存储介质 - Google Patents
数据查询方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN109840259B CN109840259B CN201811642776.8A CN201811642776A CN109840259B CN 109840259 B CN109840259 B CN 109840259B CN 201811642776 A CN201811642776 A CN 201811642776A CN 109840259 B CN109840259 B CN 109840259B
- Authority
- CN
- China
- Prior art keywords
- data
- data source
- query
- changed
- incremental
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据查询方法、装置、电子设备及可读存储介质,所述方法包括:检测与增量查询请求关联的变更数据源;响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源;根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据。可以根据配置的逻辑关系实现增量查询逻辑,有助于降低开发难度、维护成本。
Description
技术领域
本发明实施例涉及数据查询技术领域,尤其涉及一种数据查询方法、装置、电子设备及可读存储介质。
背景技术
在数据查询过程中,通常是对多个数据源进行关联、合并之后,计算得到查询结果数据。而当其中一个数据源变更时,需要重新进行数据查询。为了提高重新查询的效率,通常采用增量查询,而不同的数据源变更导致增量查询逻辑不同。
现有技术中,为了解决上述问题采用增量查询逻辑的定制开发。主要思想是针对不同的数据源变更开发不同的增量查询逻辑。具体为将增量查询逻辑划分为可复用的共用计算过程,从而针对不同的数据源变更,采用相关联的共用计算过程实现增量查询逻辑。
可以看出,定制开发根据业务需要进行复杂的逻辑处理,开发难度较大,维护成本高,复用率低。
发明内容
本发明提供一种数据查询方法、装置、电子设备及可读存储介质,以解决现有技术增量查询逻辑的上述问题。
根据本发明的第一方面,提供了一种数据查询方法,所述方法包括:
检测与增量查询请求关联的变更数据源;
响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源;
根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据。
可选地,所述根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据的步骤,包括:
从所述变更数据源开始根据所述逻辑关系从各目标数据源中查询数据。
可选地,所述从所述变更数据源开始根据所述逻辑关系从各目标数据源中查询数据的步骤,包括:
查询所述变更数据源中的增量数据;
根据所述逻辑关系获取与所述变更数据源关联的第一参考数据源,以及,查询结果数据与所述增量数据、第一参考数据源之间的运算逻辑;
根据所述逻辑关系生成所述第一参考数据源对应的第一参考数据;
根据所述运算逻辑、所述增量数据、第一参考数据生成查询结果数据。
可选地,所述根据所述逻辑关系生成所述第一参考数据源对应的第一参考数据的步骤,包括:
根据所述逻辑关系确定所述第一参考数据源对应的目标数据源;
从所述目标数据源中查询全量数据;
根据所述逻辑关系对各目标数据源的全量数据进行运算得到所述第一参考数据源对应的第一参考数据。
可选地,所述运算逻辑中包括针对增量数据的第一运算、针对第一参考数据的第二运算,以及所述增量数据源和第一参考数据源的关联关系,所述根据所述运算逻辑、所述增量数据、第一参考数据生成查询结果数据的步骤,包括:
对所述增量数据进行第一运算得到第一中间数据;
对所述第一参考数据进行第二运算得到第一参考数据;
根据所述第一中间数据和第一参考数据生成第二中间数据源;
根据所述第二中间数据源生成查询结果数据。
可选地,所述根据所述第二中间数据源生成查询结果数据的步骤,包括:
根据所述逻辑关系确定所述第二中间数据源是否存在关联的第二参考数据源;
在所述第二中间数据源不存在关联的数据源的情况下将所述第二中间数据源的数据作为查询结果数据。
根据本发明的第二方面,提供了一种数据查询装置,所述装置包括:
变更检测模块,用于检测与增量查询请求关联的变更数据源;
逻辑关系获取模块,用于响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源;
数据查询模块,用于根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据。
可选地,所述数据查询模块,包括:
数据查询子模块,用于从所述变更数据源开始根据所述逻辑关系从各目标数据源中查询数据。
可选地,所述数据查询子模块,包括:
增量数据查询单元,用于查询所述变更数据源中的增量数据。
第一参考数据源获取单元,用于根据所述逻辑关系获取与所述变更数据源关联的第一参考数据源,以及,查询结果数据与所述增量数据、第一参考数据源之间的运算逻辑。
第一参考数据生成单元,用于根据所述逻辑关系生成所述第一参考数据源对应的第一参考数据。
查询结果数据生成单元,用于根据所述运算逻辑、所述增量数据、第一参考数据生成查询结果数据。
可选地,所述第一参考数据生成单元,包括:
相关数据源确定子单元,用于根据所述逻辑关系确定所述第一参考数据源对应的目标数据源。
全量数据查询子单元,用于从所述目标数据源中查询全量数据。
第一参考数据生成子单元,用于根据所述逻辑关系对各目标数据源的全量数据进行运算得到所述第一参考数据源对应的第一参考数据。
可选地,所述运算逻辑中包括针对增量数据的第一运算、针对第一参考数据的第二运算,以及所述增量数据源和第一参考数据源的关联关系,所述查询结果数据生成单元,包括:
第一运算子单元,用于对所述增量数据进行第一运算得到第一中间数据。
第二运算子单元,用于对所述第一参考数据进行第二运算得到第一参考数据。
第二中间数据源生成子单元,用于根据所述第一中间数据和第一参考数据生成第二中间数据源。
查询结果数据生成子单元,用于根据所述第二中间数据源生成查询结果数据。
可选地,所述查询结果数据生成子单元,包括:
关联确定子单元,用于根据所述逻辑关系确定所述第二中间数据源是否存在关联的第二参考数据源。
结果运算子单元,用于在所述第二中间数据源不存在关联的数据源的情况下将所述第二中间数据源的数据作为查询结果数据。
根据本发明的第三方面,提供了一种电子设备,包括:
处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现前述数据查询方法。
根据本发明的第四方面,提供了一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行前述数据查询方法。
本发明实施例提供了一种数据查询方法、装置、电子设备及可读存储介质,所述方法包括:检测与增量查询请求关联的变更数据源;响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源;根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据。可以根据配置的逻辑关系实现增量查询逻辑,有助于降低开发难度、维护成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的系统架构下的一种数据查询方法具体步骤流程图;
图2是本发明实施例提供的数据查询方法中不同数据源变更的查询顺序示意图;
图3是本发明实施例提供的数据查询方法中数据源之间的逻辑关系示意图;
图4是本发明实施例提供的数据查询方法中查询顺序示意图;
图5是本发明实施例提供的一种数据查询装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
参照图1,其示出了一种数据查询方法的步骤流程图,包括:
步骤101,检测与增量查询请求关联的变更数据源。
其中,增量查询请求用于实时查询数据,针对业务不同而不同,从一个或多个数据源中根据业务逻辑查询数据。数据源最常见的为数据库表,当然还可以为其他存储数据的载体。
具体地,变更数据源可以为数据库表的表名,或表的其他标识性信息。
可以理解,数据源发生变更时,会生成变更信息并携带变更数据源,在本发明实施例中,变更信息仅涉及增量查询请求对应的目标数据源。
步骤102,响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源。
其中,各目标数据源之间的逻辑关系包括:目标数据源之间的关联关系、运算逻辑等。该逻辑关系可以通过配置文件配置,开发人员仅需要对数据源之间的关联关系、运算逻辑进行配置,而不需要编写复杂的处理逻辑,简化了开发人员的复杂度,提高了开发效率。
可以理解,在检测到变更信息时,代表有目标数据源发生了数据更新,此时会进行增量查询;在未检测到变更信息时,代表没有目标数据源发生数据变更,此时不会进行增量查询。
针对图2中的三张表,可以生成如图3所示的逻辑关系,可以看出,该逻辑关系描述了各目标数据源的关联关系、运算逻辑。例如,表A、B、C均为目标数据源,分别对应表节点T1、T2、T3,各节点中分别包括目标数据源A、B、C,以及针对目标数据源A、B、C的运算逻辑UDF(A)、UDF(B)、UDF(C);此外,除了针对目标数据源定义的表节点,还有针对表节点定义的图节点G1和G2,其中,G1针对表节点T1和T2关联、运算之后的中间数据源,G2针对图节点G1和表节点T3关联、运算之后的中间数据源。
在实际应用中,可以配置如图3所示的逻辑关系,每个节点可以包括:标识、类型、子节点、子节点之间的关联关系、运算逻辑、是否存在相关联的节点、相关联的节点、父节点。
其中,标识用于唯一表示节点,可以按照业务或其他规则进行定义。
类型可以包括:图节点、表节点两种。
子节点用于表示该节点的运算对象,可以为可以为表节点或图节点或目标数据源。若当前节点为图节点,则其子节点为表节点或图节点;对于表节点,子节点为目标数据源。例如,对于图节点G1,子节点为表节点T1和T2;对于表节点T1,子节点为表B。
子节点之间的关联关系可以分为左关联、右关联、内关联等,不同的关联关系可以得到不同的关联结果,例如,对于图节点G1,表节点T1左关联表节点T2得到的关联结果,和表节点T2左关联表节点T1得到的关联结果不同。需要说明的是,对于增量查询,右关联的使用概率较小。
运算逻辑为该节点针对子节点关联之后结果的运算逻辑,如图3所示的UDF(A)、UDF(B)、UDF(C)、UDF(T1+T2)、UDF(G1+T3)。
关联节点在存在相关联的节点时有效,可以用节点标识表示,当不存在时可以采用特殊标识表示。
父节点为当前节点所属的节点,如图3所示,图节点G1为表节点T1和T2的父节点,同时它也存在父节点,即图节点G2。
需要说明的是,图中的每个节点可以理解为一个中间数据源,对应的数据为每个节点的逻辑运算结果。例如,图节点G1可以作为中间数据源G1=UDF(T1+T2),表节点T1可以作为中间数据源T1=UDF(A)。
步骤103,根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据。
具体地,首先,查询变更数据源的增量数据,即变更数据;然后,根据逻辑关系,顺序查询其他目标数据源的数据,并进行逻辑运算得到查询结果数据。
可选地,在本发明的另一种实施例中,上述步骤103可以包括子步骤1031:
子步骤1031,从所述变更数据源开始根据所述逻辑关系从各目标数据源中查询数据。
具体地,从变更数据源开始查询并进行逻辑运算,然后查找与其关联的其他数据源进行数据查询和逻辑运算,最终得到查询结果数据。其中,变更数据源的数据查询为增量查询,即仅查询更新后的数据,其他数据源是数据查询是相关性查询,即根据与变更字段相关联的信息,查询与变更相关的数据。例如,表A中标识字段为ID1的记录变更,表A和表B通过标识字段关联,从而B表仅查询与标识字段为ID1的记录。
可以理解,当存在多个变更数据源时,可以将单个变更数据源单独查询一次,并将结果拼接起来成为查询结果数据。
可选地,在本发明的另一种实施例中,上述子步骤1031可以包括子步骤10311至10314:
子步骤10311,查询所述变更数据源中的增量数据。
查询变更数据源中的增量数据可以通过关联更新数据源对应的原表和更新表进行关联,得到增量数据。例如,如图4所示,可以将原表A和更新表A进行内关联,从而得到表A的增量数据。
在实际应用中,也可以根据表A中的指定字段判断数据是否为更新数据。例如,可以使用更新时间来判断,更新时间在上次查询之后的数据为更新数据;更新时间在上次查询之前的数据为原数据。本发明实施例对增量数据的查询方法不加以限制。
子步骤10312,根据所述逻辑关系获取与所述变更数据源关联的第一参考数据源,以及,查询结果数据与所述增量数据、第一参考数据源之间的运算逻辑。
其中,第一参考数据源可以为目标数据源,也可以为目标数据源经过逻辑运算、关联之后得到的中间数据源。
具体地,可以从变更数据源父节点的关联节点中获取。如图3所示,若变更数据源为表A,表A的父节点为表节点T1,表节点T1的关联节点为表节点T2,从而得到与变更数据源表A相关联的第一参考数据源为中间数据源T2;若变更数据源为表C,则表C的父节点为表节点T3,表节点T3的关联节点为G1,则得到与变更数据源表C相关联的第一参考数据源为中间数据源G1。
此外,若关联的节点直接为一个目标数据源,且未进行任何逻辑运算,则第一参考数据源为目标数据源。
子步骤10313,根据所述逻辑关系生成所述第一参考数据源对应的第一参考数据。
具体地,当第一参考数据源为对目标数据源时,直接从第一参考数据源中查询全量数据,得到第一参考数据。
当第一参考数据源为仅对目标数据源进行了逻辑运算的中间数据源时,第一参考数据为对目标数据源中数据进行逻辑运算的结果数据。如图4所示,第一参考数据源为中间数据源T2,则对表B进行UDF(B)得到第一参考数据。
当第一参考数据源为其他数据源的关联结果时,将数据源关联之后得到第一参考数据。如图3所示,若图节点G1对应的中间数据源为第一参考数据源时,需要首先生成图节点T1和T2的中间数据,然后对其进行关联、逻辑运算得到UDF(T1+T2)为第一参考数据。
可选地,在本发明的另一种实施例中,上述子步骤10313可以包括子步骤103131至103134:
子步骤103131,根据所述逻辑关系确定所述第一参考数据源对应的目标数据源。
具体地,从第一参考数据源开始向下遍历,判断节点的子节点是否为目标数据源。若节点的类型为表节点时,其子节点为目标数据源。
子步骤103132,从所述目标数据源中查询全量数据。
可以理解,对于每次针对一个变更数据源进行的增量查询,第一参考数据源对应的目标数据源未发生变更。
子步骤103133,根据所述逻辑关系对各目标数据源的全量数据进行运算得到所述第一参考数据源对应的第一参考数据。
具体地,将目标数据源按照从下向上的方向逐步进行关联、逻辑运算得到第一参考数据。例如,如图4所示,若第一参考数据源为T2,则首先从表B中查询全量数据;然后,进行UDF(B)得到第一参考数据。
子步骤10314,根据所述运算逻辑、所述增量数据、第一参考数据生成查询结果数据。
具体地,若运算逻辑中包括对增量数据的运算逻辑,则对增量数据进行逻辑运算;然后,将经过逻辑运算的增量数据和第一参考数据、或其他数据源关联、逻辑运算得到查询结果数据。
可选地,在本发明的另一种实施例中,上述子步骤10314可以包括子步骤103141至103143:
子步骤103141,对所述增量数据进行第一运算得到第一中间数据。
其中,第一运算的运算逻辑可以从变更数据源的父节点中获取。如图3所示,表A为变更数据源时,父节点T1的UDF(A)为第一运算的运算逻辑。
如图4所示,该步骤的增量数据为关联原表A、更新表A得到的数据,第一中间数据源为中间数据源T1,第一中间数据为UDF(A)。
第一参考数据第一参考数据子步骤103142,根据所述第一中间数据和第一参考数据生成第二中间数据源。
具体地,将第一中间数据和第一参考数据关联、逻辑运算得到第二中间数据源的数据。如图3所示,第一中间数据为UDF(A)的结果数据,第一参考数据为UDF(B)的结果数据,从而可以按照表节点T1和T2的关联关系,第二中间数据源为G1=UDF(T1+T2)。
子步骤103143,根据所述第二中间数据源生成查询结果数据。
具体地,按照第二中间数据源和查询结果数据的关系生成查询结果数据。例如,将第二中间数据源与其他数据源继续进行关联、逻辑运算得到查询结果。
可以理解,该过程是一个递归的过程,直至第二中间数据源不存在相关联的其他数据源。
可选地,在本发明的另一种实施例中,上述子步骤103143可以包括子步骤1031431至1031432:
子步骤1031431,根据所述逻辑关系确定所述第二中间数据源是否存在关联的第二参考数据源。
其中,第二参考数据源可以为目标数据源,也可以为目标数据源经过关联和/或逻辑运算得到的中间数据源。
如图3所示的逻辑关系,可以根据第二中间数据源所对应的节点是否存在相关联的节点,判断第二中间数据源是否存在关联的数据源。
具体地,首先,确定第二中间数据源所在节点(例如,图节点G1);然后,确定该节点是否存在相关联的节点,若存在(例如,表节点T3),则确定该第二中间数据源存在相关联的第二参考数据源(例如,中间数据源T3);若不存在,则确定该第二中间数据源不存在相关联的第二参考数据源。
子步骤1031432,在所述第二中间数据源不存在关联的数据源的情况下将所述第二中间数据源的数据作为查询结果数据。
具体地,如图3所示,在第二中间数据源G1存在关联的中间数据源T3时,首先生成数据源T3的数据UDF(C),然后再和第二中间数据源G1进行关联、逻辑运算,得到新的第二中间数据源G2=UDF(G1+T3)。此时,该第三数据源不存在关联的数据源,该第二中间数据源的数据UDF(G1+T3)为查询结果数据。
综上所述,本发明实施例提供了一种数据查询方法,所述方法包括:检测与增量查询请求关联的变更数据源;响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源;根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据。可以根据配置的逻辑关系实现增量查询逻辑,有助于降低开发难度、维护成本。
实施例二
参照图5,其示出了一种数据查询装置的结构图,具体如下。
变更检测模块201,用于检测与增量查询请求关联的变更数据源。
逻辑关系获取模块202,用于响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源。
数据查询模块203,用于根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据。
可选地,在本发明的另一种实施例中,上述数据查询模块203可以包括:
数据查询子模块,用于从所述变更数据源开始根据所述逻辑关系从各目标数据源中查询数据。
可选地,在本发明的另一种实施例中,上述数据查询子模块,包括:
增量数据查询单元,用于查询所述变更数据源中的增量数据。
第一参考数据源获取单元,用于根据所述逻辑关系获取与所述变更数据源关联的第一参考数据源,以及,查询结果数据与所述增量数据、第一参考数据源之间的运算逻辑。
第一参考数据生成单元,用于根据所述逻辑关系生成所述第一参考数据源对应的第一参考数据。
查询结果数据生成单元,用于根据所述运算逻辑、所述增量数据、第一参考数据生成查询结果数据。
可选地,在本发明的另一种实施例中,上述第一参考数据生成单元,包括:
相关数据源确定子单元,用于根据所述逻辑关系确定所述第一参考数据源对应的目标数据源。
全量数据查询子单元,用于从所述目标数据源中查询全量数据。
第一参考数据生成子单元,用于根据所述逻辑关系对各目标数据源的全量数据进行运算得到所述第一参考数据源对应的第一参考数据。
可选地,在本发明的另一种实施例中,上述运算逻辑中包括针对增量数据的第一运算、针对第一参考数据的第二运算,以及所述增量数据源和第一参考数据源的关联关系,所述查询结果数据生成单元,包括:
第一运算子单元,用于对所述增量数据进行第一运算得到第一中间数据。
第二中间数据源生成子单元,用于根据所述第一中间数据和第一参考数据生成第二中间数据源。
查询结果数据生成子单元,用于根据所述第二中间数据源生成查询结果数据。
可选地,在本发明的另一种实施例中,上述查询结果数据生成子单元,包括:
关联确定子单元,用于根据所述逻辑关系确定所述第二中间数据源是否存在关联的第二参考数据源。
结果运算子单元,用于在所述第二中间数据源不存在关联的数据源的情况下将所述第二中间数据源的数据作为查询结果数据。
综上所述,本发明实施例提供了一种数据查询装置,所述装置包括:变更检测模块,用于检测与增量查询请求关联的变更数据源;逻辑关系获取模块,用于响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源;数据查询模块,用于根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据。可以根据配置的逻辑关系实现增量查询逻辑,有助于降低开发难度、维护成本。
本发明实施例还提供了一种电子设备,包括:处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现前述实施例的数据查询方法。
本发明实施例还提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行前述实施例的数据查询方法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据查询设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种数据查询方法,其特征在于,所述方法包括:
检测与增量查询请求关联的变更数据源;
响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源;
根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据;
其中,所述根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据的步骤,包括:
从所述变更数据源开始根据所述逻辑关系从各目标数据源中查询数据。
2.根据权利要求1所述的方法,其特征在于,所述从所述变更数据源开始根据所述逻辑关系从各目标数据源中查询数据的步骤,包括:
查询所述变更数据源中的增量数据;
根据所述逻辑关系获取与所述变更数据源关联的第一参考数据源,以及,查询结果数据与所述增量数据、第一参考数据源之间的运算逻辑;
根据所述逻辑关系生成所述第一参考数据源对应的第一参考数据;
根据所述运算逻辑、所述增量数据、第一参考数据生成查询结果数据。
3.根据权利要求2所述的方法,其特征在于,所述根据所述逻辑关系生成所述第一参考数据源对应的第一参考数据的步骤,包括:
根据所述逻辑关系确定所述第一参考数据源对应的目标数据源;
从所述目标数据源中查询全量数据;
根据所述逻辑关系对各目标数据源的全量数据进行运算得到所述第一参考数据源对应的第一参考数据。
4.根据权利要求2所述的方法,其特征在于,所述运算逻辑中包括针对增量数据的第一运算、针对第一参考数据的第二运算,以及所述增量数据源和第一参考数据源的关联关系,所述根据所述运算逻辑、所述增量数据、第一参考数据生成查询结果数据的步骤,包括:
对所述增量数据进行第一运算得到第一中间数据;
根据所述第一中间数据和第一参考数据生成第二中间数据源;
根据所述第二中间数据源生成查询结果数据。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第二中间数据源生成查询结果数据的步骤,包括:
根据所述逻辑关系确定所述第二中间数据源是否存在关联的第二参考数据源;
在所述第二中间数据源不存在关联的数据源的情况下将所述第二中间数据源的数据作为查询结果数据。
6.一种数据查询装置,其特征在于,所述装置包括:
变更检测模块,用于检测与增量查询请求关联的变更数据源;
逻辑关系获取模块,用于响应于所述变更数据源,获取所述增量查询请求对应的各目标数据源之间的逻辑关系,所述目标数据源至少包括所述变更数据源;
数据查询模块,用于根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据;其中,所述根据所述变更数据源以及所述逻辑关系从各目标数据源中查询数据的步骤,包括:
从所述变更数据源开始根据所述逻辑关系从各目标数据源中查询数据。
7.一种电子设备,其特征在于,包括:
处理器、存储器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5中一个或多个所述的数据查询方法。
8.一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如方法权利要求1至5中一个或多个所述的数据查询方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811642776.8A CN109840259B (zh) | 2018-12-29 | 2018-12-29 | 数据查询方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811642776.8A CN109840259B (zh) | 2018-12-29 | 2018-12-29 | 数据查询方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109840259A CN109840259A (zh) | 2019-06-04 |
CN109840259B true CN109840259B (zh) | 2021-07-06 |
Family
ID=66883555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811642776.8A Active CN109840259B (zh) | 2018-12-29 | 2018-12-29 | 数据查询方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109840259B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023050403A1 (zh) * | 2021-09-30 | 2023-04-06 | 西门子股份公司 | 数据查询的方法、数据服务和计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103049556A (zh) * | 2012-12-28 | 2013-04-17 | 中国科学院深圳先进技术研究院 | 一种海量医疗数据的快速统计查询方法 |
CN106970936A (zh) * | 2017-02-09 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 数据处理方法及装置、数据查询方法及装置 |
CN107273506A (zh) * | 2017-06-19 | 2017-10-20 | 西安电子科技大学 | 一种数据库多表联合查询的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10642795B2 (en) * | 2013-04-30 | 2020-05-05 | Oracle International Corporation | System and method for efficiently duplicating data in a storage system, eliminating the need to read the source data or write the target data |
-
2018
- 2018-12-29 CN CN201811642776.8A patent/CN109840259B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103049556A (zh) * | 2012-12-28 | 2013-04-17 | 中国科学院深圳先进技术研究院 | 一种海量医疗数据的快速统计查询方法 |
CN106970936A (zh) * | 2017-02-09 | 2017-07-21 | 阿里巴巴集团控股有限公司 | 数据处理方法及装置、数据查询方法及装置 |
CN107273506A (zh) * | 2017-06-19 | 2017-10-20 | 西安电子科技大学 | 一种数据库多表联合查询的方法 |
Non-Patent Citations (1)
Title |
---|
一种基于增量归集的大数据量的数据查询方法;朱涛;《电子世界》;20140915;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109840259A (zh) | 2019-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9507875B2 (en) | Symbolic hyper-graph database | |
US9779158B2 (en) | Method, apparatus, and computer-readable medium for optimized data subsetting | |
EP4369180A2 (en) | Callpath finder | |
EP3418910A1 (en) | Big data-based method and device for calculating relationship between development objects | |
CN107480260B (zh) | 大数据实时分析方法、装置、计算设备及计算机存储介质 | |
CN111414410B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN111324781A (zh) | 一种数据分析方法、装置及设备 | |
US20120095986A1 (en) | Runtime optimization of spatiotemporal events processing background | |
WO2013157144A1 (ja) | プログラム、情報処理装置およびイベント処理方法 | |
CN109840259B (zh) | 数据查询方法、装置、电子设备及可读存储介质 | |
CN108712486B (zh) | 工作量证明方法及装置 | |
CN109344169B (zh) | 数据处理方法及装置 | |
CN105894193A (zh) | 一种指标配置方法和装置 | |
CN116432185B (zh) | 一种异常检测方法、装置、可读存储介质及电子设备 | |
CN114995877B (zh) | 一种变量配置方法及装置 | |
CN111078671A (zh) | 数据表字段的修改方法、装置、设备和介质 | |
CN112015714A (zh) | 基于数据库的数据模型生成方法及装置 | |
CN112862245B (zh) | 数据交换方法、装置以及电子设备 | |
CN110609888B (zh) | 基于关系网络的图谱查证方法、装置、服务器和存储介质 | |
KR101673151B1 (ko) | 프로그램 소스 및 db 스키마의 연관 관계 변화 분석 방법 및 장치 | |
US8321844B2 (en) | Providing registration of a communication | |
CN110765100A (zh) | 标签的生成方法、装置、计算机可读存储介质及服务器 | |
CN116610714B (zh) | 一种数据查询方法、装置、计算机设备及存储介质 | |
CN115221211B (zh) | 一种图计算处理方法、装置、电子设备及存储介质 | |
CN112631925B (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 |