CN106599310A - 基于多数据源场景的并发查询方法和装置 - Google Patents

基于多数据源场景的并发查询方法和装置 Download PDF

Info

Publication number
CN106599310A
CN106599310A CN201611250310.4A CN201611250310A CN106599310A CN 106599310 A CN106599310 A CN 106599310A CN 201611250310 A CN201611250310 A CN 201611250310A CN 106599310 A CN106599310 A CN 106599310A
Authority
CN
China
Prior art keywords
subtask
line transaction
inquiry
data source
pending
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
Application number
CN201611250310.4A
Other languages
English (en)
Inventor
安兴朝
舒展
邢磊
聂砂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN201611250310.4A priority Critical patent/CN106599310A/zh
Publication of CN106599310A publication Critical patent/CN106599310A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24532Query optimisation of parallel queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种基于多数据源场景的并发查询方法和装置。所述方法包括:当联机交易需执行查询数据库任务时,分析联机交易,确定联机交易执行查询数据库任务时需要的线程数量和待查询的数据源;依据线程数量和待查询的数据源,创建待执行子任务列表;待执行子任务列表包括线程标号和与线程标号相对应的数据源,线程标号的数量等于线程数量;依据待执行子任务列表,创建待执行子任务;将待执行子任务提交至线程池以执行预先设定的子任务查询操作;获取各个待执行子任务执行预先设定的子任务查询操作后生成的处理结果;汇总处理结果。本发明能够实现对多数据源中子表数据进行并发查询,从而能够缩短查询任务的执行时间,提高处理效率。

Description

基于多数据源场景的并发查询方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于多数据源场景的并发查询方法和装置。
背景技术
在许多产品系统的应用组件(即业务功能、业务流程及实现模式相近,针对同一类别业务产品或服务的具体实现的集合)中,数据量的爆发式增长,已经使得单数据源无法在大数据量下满足良好的性能,因此将这些数据通过数据水平切分的手段分散到多个数据源中,是解决大数据量存储和操作的最终方案。数据水平切分,是指将原来在单数据源环境内一张数据库表在多数据源中分别建立子表,其中的数据通过一定规则分散到这些子表中。水平切分数据库,可以降低单个数据源的负载,同时能够最大限度地降低单数据源服务器宕机所造成的损失。
在数据分散在多数据源的场景中,如果要进行针对全量数据或者多数据源数据的查询,必须对需查询的每一个数据源分别执行一次查询,然后合并处理结果。但是,目前的技术中,对全量数据或者多数据源数据的查询方式为,对每个数据源顺序访问然后再合并处理结果,即一次查询只能访问一个指定的数据库,导致执行时间长,处理效率低。
发明内容
有鉴于此,本发明提供了一种基于多数据源场景的并发查询方法和装置,能够实现对多数据源中子表数据进行并发查询,从而能够有效缩短查询任务的执行时间,提高处理效率。
为实现上述目的,本发明提供如下技术方案:
一种基于多数据源场景的并发查询方法,包括:
当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源;
依据所述线程数量和所述待查询的数据源,创建待执行子任务列表;所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,所述线程标号的数量等于所述线程数量;
依据所述待执行子任务列表,创建待执行子任务;
将所述待执行子任务提交至线程池以执行预先设定的子任务查询操作;
获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果;
汇总所述处理结果。
优选的,所述当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源之前,还包括:
若检测到所述联机交易调用数据库查询任务的接口时,确定所述联机交易需执行查询数据库任务。
优选的,所述当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源,包括:
当联机交易需执行查询数据库任务时,分析所述联机交易中包含的与数据源相对应的索引,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源。
优选的,所述将所述待执行子任务提交至线程池以执行预先设定的子任务查询操作,包括:
将所述待执行子任务提交至线程池,每次选取不超过预设并发量的待执行子任务执行预先设定的子任务查询操作,直至所述创建的待执行子任务全部执行完毕。
优选的,所述汇总所述处理结果,包括:
每检测到预设数目个所述待执行子任务执行完预先设定的子任务查询操作,执行汇总所述处理结果的操作,直至将所有所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果全部汇总,生成目标处理结果。
优选的,还包括:
将所述目标处理结果按照所述联机交易的需求进行筛选,得到目标需求数据,以提供给所述联机交易使用。
一种基于多数据源场景的并发查询装置,包括:
分析模块,用于当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源;
第一创建模块,用于依据所述线程数量和所述待查询的数据源,创建待执行子任务列表;所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,所述线程标号的数量等于所述线程数量;
第二创建模块,用于依据所述待执行子任务列表,创建待执行子任务;
执行模块,用于将所述待执行子任务提交至线程池以执行预先设定的子任务查询操作;
获取模块,用于获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果;
汇总模块,用于汇总所述处理结果。
优选的,还包括:
确定模块,用于若检测到所述联机交易调用数据库查询任务的接口时,确定所述联机交易需执行查询数据库任务。
优选的,所述分析模块包括:
分析单元,用于当联机交易需执行查询数据库任务时,分析所述联机交易中包含的与数据源相对应的索引,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源。
优选的,所述执行模块包括:
执行单元,用于将所述待执行子任务提交至线程池,每次选取不超过预设并发量的待执行子任务执行预先设定的子任务查询操作,直至所述创建的待执行子任务全部执行完毕。
优选的,所述汇总模块包括:
汇总单元,用于每当检测到预设数目个所述待执行子任务执行完预先设定的子任务查询操作,执行汇总所述处理结果的操作,直至将所有所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果全部汇总,生成目标处理结果。
优选的,还包括:
筛选模块,用于将所述目标处理结果按照所述联机交易的需求进行筛选,得到目标需求数据,以提供给所述联机交易使用。
经由上述的技术方案可知,与现有技术相比,本发明提供了一种基于多数据源场景的并发查询方法和装置。本发明提供的技术方案,当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源,依据所述线程数量和所述待查询的数据源,创建待执行子任务列表,其中,所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,而所述线程标号的数量等于所述线程数量,依据所述待执行子任务列表,创建待执行子任务,从而能够创建出与所述线程数量相等数量的待执行子任务,然后将这些数量的所述待执行子任务提交至线程池以执行预先设定的子任务查询操作,从而能够实现通过统一的模式(即预先设定的子任务查询操作)对多数据源(即多个数据库场景下的多个数据源)中子表数据进行并发查询,然后获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果,再汇总所述处理结果。由于本发明提供的技术方案,能够实现对多数据源中子表数据进行并发查询,因此,相对于现有技术中顺序查询的方式,能够有效缩短查询任务的执行时间,从而提高处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种基于多数据源场景的并发查询方法的流程图;
图2为本发明实施例提供的一种基于多数据源场景的并发查询方法的时序图;
图3为本发明实施例提供的一种基于多数据源场景的并发查询装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例
请参阅图1,图1为本发明实施例提供的一种基于多数据源场景的并发查询方法的流程图。如图1所示,该方法包括:
步骤S101,当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源;
具体的,所述步骤S101可以包括:
当联机交易需执行查询数据库任务时,分析所述联机交易中包含的与数据源相对应的索引,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源。
步骤S102,依据所述线程数量和所述待查询的数据源,创建待执行子任务列表;
具体的,所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,其中,所述线程标号的数量等于所述线程数量。
步骤S103,依据所述待执行子任务列表,创建待执行子任务;
具体的,根据所述线程编号的数量(即所述线程数量)、所述线程标号以及每个所述线程编号各自对应的数据源,创建与所述线程编号的数量相等数量的待执行子任务。
步骤S104,将所述待执行子任务提交至线程池以执行预先设定的子任务查询操作;
具体的,将各个所述待执行子任务提交至线程池,使各个所述待执行子任务分别执行预先设定的子任务查询操作。也就是说,各个所述待执行子任务分别执行的都是预先设定的子任务查询操作,仅是不同的待执行子任务所针对的数据源不同。
步骤S105,获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果;
步骤S106,汇总所述处理结果;
具体的,汇总各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果,便得到查询(所述联机交易执行所述查询数据库任务时需要的)各个待查询数据源后生成的处理结果。
本发明实施例提供的技术方案,当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源,依据所述线程数量和所述待查询的数据源,创建待执行子任务列表,其中,所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,而所述线程标号的数量等于所述线程数量,依据所述待执行子任务列表,创建待执行子任务,从而能够创建出与所述线程数量相等数量的待执行子任务,然后将这些数量的所述待执行子任务提交至线程池以执行预先设定的子任务查询操作,从而能够实现通过统一的模式(即预先设定的子任务查询操作)对多数据源(即多个数据库场景下的多个数据源)中子表数据进行并发查询,然后获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果,再汇总所述处理结果。由于本发明实施例提供的技术方案,能够实现对多数据源中子表数据进行并发查询,因此,相对于现有技术中顺序查询的方式,能够有效缩短查询任务的执行时间,从而提高处理效率。
可选的,本发明另外一个实施例提供的基于多数据源场景的并发查询方法,所述步骤S101之前,还包括:
若检测到所述联机交易调用数据库查询任务的接口时,确定所述联机交易需执行查询数据库任务。
可选的,本发明另外一个实施例提供的基于多数据源场景的并发查询方法,所述步骤S104包括:
将所述待执行子任务提交至线程池,每次选取不超过预设并发量的待执行子任务执行预先设定的子任务查询操作,直至所述创建的待执行子任务全部执行完毕。
具体的,本实施例提供的技术方案,设置预设并发量主要是控制每次并发查询不过多的占用线程数量和数据源链接数量,比如有8个待查询的数据源,但预设并发量为4,则本发明同步并发机制会排队获得线程资源执行,并保证同一时刻获得的线程数量不超过4个。
可选的,本发明另外一个实施例提供的基于多数据源场景的并发查询方法,所述步骤S106,包括:
每检测到预设数目个所述待执行子任务执行完预先设定的子任务查询操作,执行汇总所述处理结果的操作,直至将所有所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果全部汇总,生成目标处理结果。
具体的,每检测到预设数目个所述待执行子任务执行完预先设定的子任务查询操作,执行汇总所述处理结果的操作,这样可以在等待其他待执行子任务的间隙先行合并处理结果并尽早释放内存。
可选的,本发明另外一个实施例提供的基于多数据源场景的并发查询方法,还包括:
将所述目标处理结果按照所述联机交易的需求进行筛选,得到目标需求数据,以提供给所述联机交易使用。
下面将对实现本发明技术方案的相关逻辑进行进一步阐述。
多数据源下查询对应用组件暴露的两个接口为:
List findList(String sql,Object parameterObject,Comparatorcomparator)
List findList(String sql,Object parameterObject,Comparatorcomparator,int start,int pageSize)
其中:
sql为执行的sql语句;
parameterObject为执行语句中的参数;
comparator为比较器,用于在结果汇总时使用;
start为起始记录数;
pageSize为每页记录数;
第一个接口的目的是查询满足条件的所有内容;第二个接口的目的是查询满足条件内容中,第start条开始后pageSize条记录。
具体的,为了实现并发查询,本发明设计了一套同构并发机制,其意义为:每个线程的逻辑是相同的,但是处理的数据各不相同。实现的伪代码为:
请参阅图2,图2为本发明实施例提供的一种基于多数据源场景的并发查询方法的时序图。具体的,如图2所示,本发明实施例提供的基于多数据源场景的并发查询方法是一种同构并发查询机制,联机交易、同构执行器、数据拆分器和子任务逻辑可以在同一个服务器上运行,其中,同构执行器和数据拆分器为软件模块。并发查询对于上述同构并发机制而言,到每个数据源查询数据是一个子任务,在数据拆分器中根据当前的数据源数量(比如N),建立N个查询子任务,每个子任务分别到一个数据源上执行相应的查询。
具体的,上述伪代码中,当有获得某个子任务的返回结果时,会对当前已在处理结果列表的子任务数量进行判断,如果超过了一定的数量,就会尝试把现有的结果进行合并(这个功能在分页查询时尤其有效,如果只需要获取第11条开始的10条记录,每个子任务分别获取对于数据源上满足条件的1到20条记录,当有N个子任务(比如配置为3)完成执行时,可以先对这些结果进行合并后,取1到20条记录即可,这样可以在等待其他子任务的间隙先行合并结果并尽早释放内存)。
具体的,处理结果列表List的结构为(子任务1结果列表,子任务N结果列表…),汇总结果的逻辑可以为:
为了更加全面地阐述本发明提供的技术方案,对应于本发明实施例提供的基于多数据源场景的并发查询方法,本发明公开一种基于多数据源场景的并发查询装置。
请参阅图3,图3为本发明实施例提供的一种基于多数据源场景的并发查询装置的结构图。如图3所示,该装置包括:
分析模块301,用于当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源;
可选的,所述分析模块301包括:
分析单元,用于当联机交易需执行查询数据库任务时,分析所述联机交易中包含的与数据源相对应的索引,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源。
第一创建模块302,用于依据所述线程数量和所述待查询的数据源,创建待执行子任务列表;所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,所述线程标号的数量等于所述线程数量;
第二创建模块303,用于依据所述待执行子任务列表,创建待执行子任务;
执行模块304,用于将所述待执行子任务提交至线程池以执行预先设定的子任务查询操作;
获取模块305,用于获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果;
汇总模块306,用于汇总所述处理结果。
本发明实施例提供的基于多数据源场景的并发查询装置,能够实现对多数据源中子表数据进行并发查询,因此,相对于现有技术中顺序查询的方式,能够有效缩短查询任务的执行时间,从而提高处理效率。
可选的,本发明另外一个实施例提供的基于多数据源场景的并发查询装置,还包括:
确定模块,用于若检测到所述联机交易调用数据库查询任务的接口时,确定所述联机交易需执行查询数据库任务。
可选的,本发明另外一个实施例提供的基于多数据源场景的并发查询装置,所述执行模块包括:
执行单元,用于将所述待执行子任务提交至线程池,每次选取不超过预设并发量的待执行子任务执行预先设定的子任务查询操作,直至所述创建的待执行子任务全部执行完毕。
可选的,本发明另外一个实施例提供的基于多数据源场景的并发查询装置,所述汇总模块包括:
汇总单元,用于每当检测到预设数目个所述待执行子任务执行完预先设定的子任务查询操作,执行汇总所述处理结果的操作,直至将所有所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果全部汇总,生成目标处理结果。
可选的,本发明另外一个实施例提供的基于多数据源场景的并发查询装置,还包括:
筛选模块,用于将所述目标处理结果按照所述联机交易的需求进行筛选,得到目标需求数据,以提供给所述联机交易使用。
经由上述的技术方案可知,与现有技术相比,本发明提供了一种基于多数据源场景的并发查询方法和装置。本发明提供的技术方案,当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源,依据所述线程数量和所述待查询的数据源,创建待执行子任务列表,其中,所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,而所述线程标号的数量等于所述线程数量,依据所述待执行子任务列表,创建待执行子任务,从而能够创建出与所述线程数量相等数量的待执行子任务,然后将这些数量的所述待执行子任务提交至线程池以执行预先设定的子任务查询操作,从而能够实现通过统一的模式(即预先设定的子任务查询操作)对多数据源(即多个数据库场景下的多个数据源)中子表数据进行并发查询,然后获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果,再汇总所述处理结果。由于本发明提供的技术方案,能够实现对多数据源中子表数据进行并发查询,因此,相对于现有技术中顺序查询的方式,能够有效缩短查询任务的执行时间,从而提高处理效率。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (12)

1.一种基于多数据源场景的并发查询方法,其特征在于,包括:
当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源;
依据所述线程数量和所述待查询的数据源,创建待执行子任务列表;所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,所述线程标号的数量等于所述线程数量;
依据所述待执行子任务列表,创建待执行子任务;
将所述待执行子任务提交至线程池以执行预先设定的子任务查询操作;
获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果;
汇总所述处理结果。
2.根据权利要求1所述的方法,其特征在于,所述当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源之前,还包括:
若检测到所述联机交易调用数据库查询任务的接口时,确定所述联机交易需执行查询数据库任务。
3.根据权利要求1所述的方法,其特征在于,所述当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源,包括:
当联机交易需执行查询数据库任务时,分析所述联机交易中包含的与数据源相对应的索引,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源。
4.根据权利要求1所述的方法,其特征在于,所述将所述待执行子任务提交至线程池以执行预先设定的子任务查询操作,包括:
将所述待执行子任务提交至线程池,每次选取不超过预设并发量的待执行子任务执行预先设定的子任务查询操作,直至所述创建的待执行子任务全部执行完毕。
5.根据权利要求1所述的方法,其特征在于,所述汇总所述处理结果,包括:
每检测到预设数目个所述待执行子任务执行完预先设定的子任务查询操作,执行汇总所述处理结果的操作,直至将所有所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果全部汇总,生成目标处理结果。
6.根据权利要求1所述的方法,其特征在于,还包括:
将所述目标处理结果按照所述联机交易的需求进行筛选,得到目标需求数据,以提供给所述联机交易使用。
7.一种基于多数据源场景的并发查询装置,其特征在于,包括:
分析模块,用于当联机交易需执行查询数据库任务时,分析所述联机交易,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源;
第一创建模块,用于依据所述线程数量和所述待查询的数据源,创建待执行子任务列表;所述待执行子任务列表包括线程标号和与所述线程标号相对应的数据源,所述线程标号的数量等于所述线程数量;
第二创建模块,用于依据所述待执行子任务列表,创建待执行子任务;
执行模块,用于将所述待执行子任务提交至线程池以执行预先设定的子任务查询操作;
获取模块,用于获取各个所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果;
汇总模块,用于汇总所述处理结果。
8.根据权利要求7所述的装置,其特征在于,还包括:
确定模块,用于若检测到所述联机交易调用数据库查询任务的接口时,确定所述联机交易需执行查询数据库任务。
9.根据权利要求7所述的装置,其特征在于,所述分析模块包括:
分析单元,用于当联机交易需执行查询数据库任务时,分析所述联机交易中包含的与数据源相对应的索引,确定所述联机交易执行所述查询数据库任务时需要的线程数量和待查询的数据源。
10.根据权利要求7所述的装置,其特征在于,所述执行模块包括:
执行单元,用于将所述待执行子任务提交至线程池,每次选取不超过预设并发量的待执行子任务执行预先设定的子任务查询操作,直至所述创建的待执行子任务全部执行完毕。
11.根据权利要求7所述的装置,其特征在于,所述汇总模块包括:
汇总单元,用于每当检测到预设数目个所述待执行子任务执行完预先设定的子任务查询操作,执行汇总所述处理结果的操作,直至将所有所述待执行子任务执行预先设定的子任务查询操作后生成的处理结果全部汇总,生成目标处理结果。
12.根据权利要求7所述的装置,其特征在于,还包括:
筛选模块,用于将所述目标处理结果按照所述联机交易的需求进行筛选,得到目标需求数据,以提供给所述联机交易使用。
CN201611250310.4A 2016-12-29 2016-12-29 基于多数据源场景的并发查询方法和装置 Pending CN106599310A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611250310.4A CN106599310A (zh) 2016-12-29 2016-12-29 基于多数据源场景的并发查询方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611250310.4A CN106599310A (zh) 2016-12-29 2016-12-29 基于多数据源场景的并发查询方法和装置

Publications (1)

Publication Number Publication Date
CN106599310A true CN106599310A (zh) 2017-04-26

Family

ID=58603915

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611250310.4A Pending CN106599310A (zh) 2016-12-29 2016-12-29 基于多数据源场景的并发查询方法和装置

Country Status (1)

Country Link
CN (1) CN106599310A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107203645A (zh) * 2017-06-27 2017-09-26 浪潮软件集团有限公司 一种并发查询多个数据库的方法及Eclipse平台
CN107798135A (zh) * 2017-11-22 2018-03-13 阿里巴巴集团控股有限公司 分页查询方法及装置和电子设备
CN108564424A (zh) * 2018-01-04 2018-09-21 上海瀚之友信息技术服务有限公司 一种减少查询交易信息出错的方法及支付交易系统
CN108932284A (zh) * 2018-05-22 2018-12-04 中国银行股份有限公司 通用逻辑调度方法、电子设备及可读存储介质
CN110377654A (zh) * 2019-07-19 2019-10-25 北京字节跳动网络技术有限公司 数据请求的处理方法、装置、电子设备及计算机可读存储介质
CN110825732A (zh) * 2019-09-20 2020-02-21 广州亚美信息科技有限公司 数据查询方法、装置、计算机设备和可读存储介质
CN112379984A (zh) * 2020-11-16 2021-02-19 神州融安科技(北京)有限公司 执行任务的方法、设备、电子设备及计算机可读存储介质
CN112434060A (zh) * 2020-12-09 2021-03-02 北京有竹居网络技术有限公司 数据查询方法及系统
CN112748993A (zh) * 2019-10-31 2021-05-04 北京国双科技有限公司 任务执行方法、装置、存储介质及电子设备
CN113553197A (zh) * 2021-07-21 2021-10-26 用友汽车信息科技(上海)股份有限公司 数据处理方法、装置和可读存储介质
CN113704577A (zh) * 2021-09-09 2021-11-26 北京天融信网络安全技术有限公司 基于多线程并发处理的数据查询方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136364A (zh) * 2013-03-14 2013-06-05 曙光信息产业(北京)有限公司 集群数据库系统及其数据查询处理方法
US20140201620A1 (en) * 2013-01-15 2014-07-17 Webezo Inc. Method and system for intelligent web site information aggregation with concurrent web site access
CN105574052A (zh) * 2014-11-06 2016-05-11 中兴通讯股份有限公司 数据库查询方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140201620A1 (en) * 2013-01-15 2014-07-17 Webezo Inc. Method and system for intelligent web site information aggregation with concurrent web site access
CN103136364A (zh) * 2013-03-14 2013-06-05 曙光信息产业(北京)有限公司 集群数据库系统及其数据查询处理方法
CN105574052A (zh) * 2014-11-06 2016-05-11 中兴通讯股份有限公司 数据库查询方法及装置

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107203645A (zh) * 2017-06-27 2017-09-26 浪潮软件集团有限公司 一种并发查询多个数据库的方法及Eclipse平台
CN107798135A (zh) * 2017-11-22 2018-03-13 阿里巴巴集团控股有限公司 分页查询方法及装置和电子设备
CN108564424A (zh) * 2018-01-04 2018-09-21 上海瀚之友信息技术服务有限公司 一种减少查询交易信息出错的方法及支付交易系统
CN108564424B (zh) * 2018-01-04 2021-11-30 上海瀚之友信息技术服务有限公司 一种减少查询交易信息出错的方法及支付交易系统
CN108932284B (zh) * 2018-05-22 2020-11-24 中国银行股份有限公司 通用逻辑调度方法、电子设备及可读存储介质
CN108932284A (zh) * 2018-05-22 2018-12-04 中国银行股份有限公司 通用逻辑调度方法、电子设备及可读存储介质
CN110377654A (zh) * 2019-07-19 2019-10-25 北京字节跳动网络技术有限公司 数据请求的处理方法、装置、电子设备及计算机可读存储介质
CN110377654B (zh) * 2019-07-19 2022-05-17 北京字节跳动网络技术有限公司 数据请求的处理方法、装置、电子设备及计算机可读存储介质
CN110825732A (zh) * 2019-09-20 2020-02-21 广州亚美信息科技有限公司 数据查询方法、装置、计算机设备和可读存储介质
CN112748993A (zh) * 2019-10-31 2021-05-04 北京国双科技有限公司 任务执行方法、装置、存储介质及电子设备
CN112379984A (zh) * 2020-11-16 2021-02-19 神州融安科技(北京)有限公司 执行任务的方法、设备、电子设备及计算机可读存储介质
CN112434060A (zh) * 2020-12-09 2021-03-02 北京有竹居网络技术有限公司 数据查询方法及系统
CN113553197A (zh) * 2021-07-21 2021-10-26 用友汽车信息科技(上海)股份有限公司 数据处理方法、装置和可读存储介质
CN113553197B (zh) * 2021-07-21 2022-06-03 用友汽车信息科技(上海)股份有限公司 数据处理方法、装置和可读存储介质
CN113704577A (zh) * 2021-09-09 2021-11-26 北京天融信网络安全技术有限公司 基于多线程并发处理的数据查询方法及装置

Similar Documents

Publication Publication Date Title
CN106599310A (zh) 基于多数据源场景的并发查询方法和装置
CN108197306B (zh) Sql语句处理方法、装置、计算机设备和存储介质
CN103970851B (zh) 海量凭证数据直接出具大型企业集团总部财务报表的方法
CN103136364B (zh) 集群数据库系统及其数据查询处理方法
CN108256115B (zh) 一种面向SparkSql的HDFS小文件实时合并实现方法
CN105550274B (zh) 双副本并行数据库的查询方法和装置
CN105138621B (zh) 一种Sybase ASE数据库配置优化系统及方法
DE102016214786A1 (de) Anwendungsprofiling-Jobmanagement-System, -Programm und -Verfahren
CN104391749A (zh) 一种资源分配方法及装置
US8938443B2 (en) Runtime optimization of spatiotemporal events processing
CN107016019B (zh) 数据库索引创建方法及装置
CN105426234B (zh) 数据库死锁检测方法及装置
CN110532038A (zh) 一种基于Java智能合约的并行执行方法
CN109725013B (zh) X射线衍射数据分析系统
CN106095878A (zh) 基于分库分表的数据库操作装置及方法
CN108268546B (zh) 一种优化数据库的方法及装置
CN106503007B (zh) 数据库操作方法及装置
CN106354729A (zh) 一种图数据处理方法、装置和系统
CN109828790B (zh) 一种基于申威异构众核处理器的数据处理方法和系统
CN107480041A (zh) 一种大数据的任务自动化测试方法和系统
CN107402926A (zh) 一种查询方法以及查询设备
US9292405B2 (en) HANA based multiple scenario simulation enabling automated decision making for complex business processes
CN111858062A (zh) 评估规则优化方法、业务评估方法及相关设备
CN110084507A (zh) 云计算环境下分级感知的科学工作流调度优化方法
CN108897858A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170426