CN111427931A - 分布式查询引擎及其查询关系型数据库的方法 - Google Patents
分布式查询引擎及其查询关系型数据库的方法 Download PDFInfo
- Publication number
- CN111427931A CN111427931A CN202010242001.2A CN202010242001A CN111427931A CN 111427931 A CN111427931 A CN 111427931A CN 202010242001 A CN202010242001 A CN 202010242001A CN 111427931 A CN111427931 A CN 111427931A
- Authority
- CN
- China
- Prior art keywords
- data
- relational database
- metadata
- query engine
- distributed query
- 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
- 238000000034 method Methods 0.000 title claims abstract description 36
- 239000012634 fragment Substances 0.000 claims abstract description 27
- 238000004364 calculation method Methods 0.000 claims abstract description 24
- 238000013467 fragmentation Methods 0.000 claims description 56
- 238000006062 fragmentation reaction Methods 0.000 claims description 56
- 238000005192 partition Methods 0.000 claims description 44
- 238000001914 filtration Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000002567 autonomic effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007726 management method Methods 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
- 230000003287 optical effect Effects 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- 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/2282—Tablespace storage structures; Management thereof
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种分布式查询引擎及其查询关系型数据库的方法,包括:分布式查询引擎获取待查询数据表所属的关系型数据库的元数据;根据所述元数据确定分片方式;基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。通过本发明,在查询关系型数据库时,能让引擎中更多的节点参与计算,同时避免关系型数据库全表扫描,缩短整个查询执行时间,降低关系型数据库访问压力。
Description
技术领域
本发明涉及数据存储技术领域,尤其涉及一种分布式查询引擎及其查询关系型数据库的方法。
背景技术
分布式查询引擎是一种通过集群来对外提供数据查询服务的技术组件,主要是为了解决查询数据量过大时导致单节点处理过慢或无法处理的问题,多用于OLAP(联机分析处理),由于其最初设计时主要考虑大数据查询,对关系型数据库(如Oracle、MySQL等)仅仅停留在能查询的阶段,所以其还存在很大优化空间。
以Facebook开源的分布式查询引擎Presto为例,虽然其能支持查询关系型数据库,但是其处理过程是将要查询的关系型数据库中的数据表的所有数据一次性加载集群中一个节点中进行单独的计算处理,这意味着无法通过扩展集群节点来提升其计算能力,由于每次都从关系型数据库中加载数据表内的所有数据,使得关系型数据库会进行全表扫描,导致查询耗时长,对关系型数据库也造成较大的访问压力。
发明内容
本发明的主要目的在于提供一种分布式查询引擎及其查询关系型数据库的方法,旨在解决现有技术中存在的上述技术问题。
为实现上述目的,本发明实施例提供一种分布式查询引擎查询关系型数据库的方法,所述分布式查询引擎查询关系型数据库的方法包括:
分布式查询引擎获取待查询数据表所属的关系型数据库的元数据;
根据所述元数据确定分片方式;
基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;
将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
可选的,所述根据元数据确定分片方式包括:
检测所述元数据中是否包含所述待查询数据表的表分区字段;
若所述元数据中包含所述待查询数据表的表分区字段,则获取所述表分区字段,并确定分片方式为基于表分区字段的分片方式。
可选的,所述根据元数据确定分片方式还包括:
获取所述元数据中包含的所述待查询数据表的表主键字段的生成方式;
当所述生成方式为序列自增时,确定分片方式为基于表主键字段的分片方式。
可选的,所述将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算包括:
基于过滤条件对所述N个分片块进行数据过滤处理;
将经过数据过滤处理后的N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
可选的,在所述分布式查询引擎获取待查询数据表所属的关系型数据库的元数据之前,还包括:
分布式查询引擎获取关系型数据库的元数据,并存储至本地。
此外,为实现上述目的,本发明实施例还提供一种分布式查询引擎,所述分布式查询引擎包括:
获取模块,用于获取待查询数据表所属的关系型数据库的元数据;
确定模块,用于根据所述元数据确定分片方式;
分片模块,用于基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;
计算模块,用于将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
可选的,所述确定模块用于:
检测所述元数据中是否包含所述待查询数据表的表分区字段;
若所述元数据中包含所述待查询数据表的表分区字段,则获取所述表分区字段,并确定分片方式为基于表分区字段的分片方式。
可选的,所述确定模块还用于:
获取所述元数据中包含的所述待查询数据表的表主键字段的生成方式;
当所述生成方式为序列自增时,确定分片方式为基于表主键字段的分片方式。
可选的,所述计算模块用于:
基于过滤条件对所述N个分片块进行数据过滤处理;
将经过数据过滤处理后的N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
可选的,所述获取模块还用于:
获取关系型数据库的元数据,并存储至本地。
本发明中,分布式查询引擎获取待查询数据表所属的关系型数据库的元数据;根据所述元数据确定分片方式;基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。本发明通过对关系型数据库的表数据进行分片,分片之后分布式查询引擎以分片块为读取单位并行读取到引擎中进行计算,相对于优化前以表为读取单位的处理方式,真正具备了分布式计算的能力;且采用本实施例方法能够避免全表扫描,显著提升分布式查询引擎查询关系型数据库的查询性能,为用户查询数据带来更好的系统访问体验。
附图说明
图1为本发明分布式查询引擎查询关系型数据库的方法一实施例的流程示意图;
图2为一实施例中采用时间范围进行分区的数据表;
图3为一实施例中基于序列自增策略生成表主键的数据表;
图4为一实施例中分布式查询引擎查询关系型数据库的场景示意图;
图5为本发明分布式查询引擎一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,图1为分布式查询引擎查询关系型数据库的方法一实施例的流程示意图。在一实施例中,分布式查询引擎查询关系型数据库的方法包括:
步骤S10,分布式查询引擎获取待查询数据表所属的关系型数据库的元数据;
关系型数据库是由多张能互相联接的二维行列表格组成的数据库。当前主流的关系型数据库有Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL等。
当分布式查询引擎接收到针对关系型数据库中某数据表的查询指令时,获取该待查询数据表所属的关系型数据库的元数据。其中,元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。
步骤S20,根据所述元数据确定分片方式;
一可选实施例中,步骤S20包括:
步骤S201,检测所述元数据中是否包含所述待查询数据表的表分区字段;若所述元数据中包含所述待查询数据表的表分区字段,则获取所述表分区字段,并确定分片方式为基于表分区字段的分片方式。
本实施例中,关系型数据库的元数据,记载了关系型数据库中采用分区的数据表列表,以及这些数据表所采用的分区类型、分区数、每个分区的边界值等。参照图2,图2为一实施例中采用时间范围进行分区的数据表。图2所示的数据表是采用时间范围进行分区,则其对应的表分区字段即“2008-01-01 00:00:00”至“2009-12-01 00:00:00”共计24个表分区字段,因此若待查询数据表为图2所示的数据表,则便能检测到在元数据中包含该待查询数据表的表分区字段,并进一步获取该表分区字段,并确定分片方式为基于表分区字段的分片方式。同理,对其他待查询数据表而言,只要能在元数据中检测到该待查询数据表的表分区字段,便确定分片方式为基于表分区字段的分片方式。
其中,数据库分区是一种将数据拆分成为独立管理和存取的较小单元的做法。在实际应用中,我们一般会对关系型数据库中数据量比较大的表建立分区字段,以提升数据查询的性能,正是由于其独立的管理和存取的特性,所以使用表分区字段来进行分片,不仅可以保证数据在分片时候不会重复和遗漏,而且还会缩短分布式引擎从关系型数据库读取数据的时间。
步骤S20还包括:
步骤S202,获取所述元数据中包含的所述待查询数据表的表主键字段的生成方式;当所述生成方式为序列自增时,确定分片方式为基于表主键字段的分片方式。
另一可选实施例中,元数据中还记载有关系型数据库中数据表的主键生成策略。一般来说,关系型数据库中数据表的表主键生成策略包括序列自增和UUID。参照图3,图3为一实施例中基于序列自增策略生成表主键的数据表。如图3所示,该数据表中的表主键字段为1~6,因此,若待查询数据表为图3所示的数据表,便能根据元数据确定该待查询数据表的表主键字段的生成方式为序列自增,从而确定分片方式为基于表主键字段的分片方式。同理,对其他待查询数据表而言,只要能在元数据中检测到该待查询数据表表主键字段的生成方式为序列自增,便确定分片方式为基于表主键字段的分片方式。
其中,对于以序列自增策略生成表主键字段的数据表而言,很容易得到该数据表的表主键字段的最小值和最大值,从而容易得到数据表包含的数据量,在明确分片数后,便可迅速进行分片,并且可以保证数据在分片时候不会重复和遗漏,而且还会缩短分布式引擎从关系型数据库读取数据的时间。
上述步骤S201和步骤S202的执行顺序在此不做限制,可以是优先执行步骤S201,也可以优先执行步骤S202。当优先执行步骤S201时,若检测到元数据中包含待查询数据表的表分区字段,则确定分片方式为基于表分区字段的分片方式;若检测到元数据中不包含待查询数据表的表分区字段,则执行步骤S202。当优先执行步骤S202时,若生成方式为序列自增,则确定分片方式为基于表主键字段的分片方式;若生成方式不为序列自增,则执行步骤S201。
对于那些表主键字段不是采用序列自增并且也没有使用数据库分区的数据表,若这些数据表的数据量小于预设阈值,则无需确定分片方式,按照现有技术进行查询即可;若这些数据表的数据量大于或等于预设阈值,则先对关系型数据库进行数据库分区处理,然后确定分片方式为基于表分区字段的分片方式。对关系型数据库进行数据库分区处理不仅仅是为了分片,也是为了便于数据的管理和查询。
步骤S30,基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;
本实施例中,目标分片数N的值,可以是人为设定,也可以是由分布式查询引擎中的coordinator节点检测当前可处理运行任务的节点数量M,并根据M的值设置N的值,且M≥N,例如,设置M等于N,或设置N为M的80%。目标分片数N的设置方式,在此不做限制,具体根据实际需要进行选择。
当分片方式为基于表分区字段的分片方式,如图2所示,表分区字段包括“2008-01-01 00:00:00”至“2009-12-01 00:00:00”共计24个表分区字段,对应的,即存在24条数据。
当N=4,即要将这24条数据拆分为4个分片块,且每个分片块之间的表数据数量差要小于或等于预设阈值(该预设阈值根据实际需要进行设置,例如设置为2),则一种分片方式为:2008-01-01 00:00:00至2008-06-01 00:00:00对应的6条数据为一个分片块;2008-07-01 00:00:00至2008-12-01 00:00:00对应的6条数据为一个分片块;2009-01-01 00:00:00至2009-06-01 00:00:00对应的6条数据为一个分片块;2009-07-01 00:00:00至2009-12-01 00:00:00对应的6条数据为一个分片块。
同理,当N=5时,即要将这24条数据拆分为5个分片块,且每个分片块之间的表数据数量差要小于或等于预设阈值(该预设阈值根据实际需要进行设置,例如设置为2),则一种分片方式为:2008-01-01 00:00:00至2008-05-01 00:00:00对应的5条数据为一个分片块;2008-06-01 00:00:00至2008-10-01 00:00:00对应的5条数据为一个分片块;2008-11-01 00:00:00至2009-03-01 00:00:00对应的5条数据为一个分片块;2009-04-01 00:00:00至2009-8-01 00:00:00对应的5条数据为一个分片块,2009-09-01 00:00:00至2009-12-0100:00:00对应的4条数据为一个分片块。
当分片方式为表主键字段的分片方式时,如图3所示,表主键字段包括“1至6”共计6个表主键字段,对应的,即存在6条数据。
当N等于2时,即要将这6条数据拆分为2个分片块,且每个分片块之间的表数据数量差要小于或等于预设阈值(该预设阈值根据实际需要进行设置,例如设置为2),则一种分片方式为:第一个分片块包括前三条数据(id=1、2、3),第二个分片块包括后三条数据(id=4、5、6)。
同理,当N等于3时,即要将这6条数据拆分为3个分片块,且每个分片块之间的表数据数量差要小于或等于预设阈值(该预设阈值根据实际需要进行设置,例如设置为2),则一种分片方式为:第一个分片块包括前两条数据(id=1、2),第二个分片块包括中间两条数据(id=3、4),第三个分片块包括后两条数据(id=5、6)。
步骤S40,将所述N个分片块并行加载到所述分布式查询引擎中进行计算。
将N个分片块并行加载到分布式查询引擎中进行计算,即将N个分片块并行加载到分布式查询引擎中的N个工作节点上,之后,N个工作节点并行的对收到的分片块进行计算操作,然后将N个工作节点通过计算操作得到的N个局部计算结果汇总到另一工作节点上,该另一工作节点根据接收到的N个局部计算结果进行计算操作,得到最终的结果。
进一步地,一实施例中,步骤S40包括:
基于过滤条件对所述N个分片块进行数据过滤处理;将经过数据过滤处理后的N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
本实施例中,参照图4,图4为一实施例中分布式查询引擎查询关系型数据库的场景示意图。如图4所示,分布式查询引擎首先将user表拆分成分片块一和分片块二,第一个分片块包括前三条数据(id=1、2、3),第二个分片块包括后三条数据(id=4、5、6),在分布式查询引擎从关系型数据库加载每个分片块的数据时带上过滤条件,以图4中为例,过滤条件为state=1,则仅将id=1、3的数据加载到93.16这个节点上进行局部计算,同时仅将id=5的数据加载到93.18这个节点上进行局部计算,然后将93.16和93.18的局部计算结果发给93.20这个节点,93.20基于两个局部计算结果进行全局计算,得到最终的结果并输出。本实施例通过灵活设置过滤条件,只加载需要使用的数据而不是全部数据,耗费的内存、CPU资源也会减低,也能增大系统的吞吐量,能同时为更多的用户提供服务。
进一步地,一实施例中,步骤S10之前,还包括:分布式查询引擎获取关系型数据库的元数据,并存储至本地。
本实施例中,分布式查询引擎可以是定时获取关系型数据库的元数据,然后存储至本地。也可以是当关系型数据库的元数据更新时,触发同步机制,关系型数据库自动将更新后的元数据发送至分布式引擎,以供分布式查询引擎获取到关系型数据库的新的元数据,并存储至本地。
本实施例中,分布式查询引擎获取待查询数据表所属的关系型数据库的元数据;根据所述元数据确定分片方式;基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。本实施例通过对关系型数据库的表数据进行分片,分片之后分布式查询引擎以分片块为读取单位并行读取到引擎中进行计算,相对于优化前以表为读取单位的处理方式,真正具备了分布式计算的能力;且采用本实施例方法能够避免全表扫描,显著提升分布式查询引擎查询关系型数据库的查询性能,为用户查询数据带来更好的系统访问体验。
参照图5,图5为本发明分布式查询引擎一实施例的功能模块示意图。如图5所示,一实施例中,分布式查询引擎包括:
获取模块10,用于获取待查询数据表所属的关系型数据库的元数据;
确定模块20,用于根据所述元数据确定分片方式;
分片模块30,用于基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;
计算模块40,用于将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
进一步地,一实施例中,所述确定模块20用于:
检测所述元数据中是否包含所述待查询数据表的表分区字段;
若所述元数据中包含所述待查询数据表的表分区字段,则获取所述表分区字段,并确定分片方式为基于表分区字段的分片方式。
进一步地,一实施例中,所述确定模块20还用于:
获取所述元数据中包含的所述待查询数据表的表主键字段的生成方式;
当所述生成方式为序列自增时,确定分片方式为基于表主键字段的分片方式。
进一步地,一实施例中,所述计算模块40用于:
基于过滤条件对所述N个分片块进行数据过滤处理;
将经过数据过滤处理后的N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
进一步地,一实施例中,所述获取模块10还用于:
获取关系型数据库的元数据,并存储至本地。
本发明分布式查询引擎的具体实施例与上述分布式查询引擎查询关系型数据库的方法的各个实施例基本相同,在此不做赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种分布式查询引擎查询关系型数据库的方法,其特征在于,所述分布式查询引擎查询关系型数据库的方法包括:
分布式查询引擎获取待查询数据表所属的关系型数据库的元数据;
根据所述元数据确定分片方式;
基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;
将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
2.如权利要求1所述的分布式查询引擎查询关系型数据库的方法,其特征在于,所述根据元数据确定分片方式包括:
检测所述元数据中是否包含所述待查询数据表的表分区字段;
若所述元数据中包含所述待查询数据表的表分区字段,则获取所述表分区字段,并确定分片方式为基于表分区字段的分片方式。
3.如权利要求1所述的分布式查询引擎查询关系型数据库的方法,其特征在于,所述根据元数据确定分片方式还包括:
获取所述元数据中包含的所述待查询数据表的表主键字段的生成方式;
当所述生成方式为序列自增时,确定分片方式为基于表主键字段的分片方式。
4.如权利要求1所述的分布式查询引擎查询关系型数据库的方法,其特征在于,所述将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算包括:
基于过滤条件对所述N个分片块进行数据过滤处理;
将经过数据过滤处理后的N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
5.如权利要求1至4中任一项所述的分布式查询引擎查询关系型数据库的方法,其特征在于,在所述分布式查询引擎获取待查询数据表所属的关系型数据库的元数据之前,还包括:
分布式查询引擎获取关系型数据库的元数据,并存储至本地。
6.一种分布式查询引擎,其特征在于,所述分布式查询引擎包括:
获取模块,用于获取待查询数据表所属的关系型数据库的元数据;
确定模块,用于根据所述元数据确定分片方式;
分片模块,用于基于所述分片方式以及目标分片数N,将所述待查询数据表中的表数据拆分为N个分片块,其中,N为正整数,每个分片块之间的表数据数量差小于或等于预设阈值;
计算模块,用于将所述N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
7.如权利要求6所述的分布式查询引擎,其特征在于,所述确定模块用于:
检测所述元数据中是否包含所述待查询数据表的表分区字段;
若所述元数据中包含所述待查询数据表的表分区字段,则获取所述表分区字段,并确定分片方式为基于表分区字段的分片方式。
8.如权利要求6所述的分布式查询引擎,其特征在于,所述确定模块还用于:
获取所述元数据中包含的所述待查询数据表的表主键字段的生成方式;
当所述生成方式为序列自增时,确定分片方式为基于表主键字段的分片方式。
9.如权利要求6所述的分布式查询引擎,其特征在于,所述计算模块用于:
基于过滤条件对所述N个分片块进行数据过滤处理;
将经过数据过滤处理后的N个分片块从所述关系型数据库中并行加载到所述分布式查询引擎中进行计算。
10.如权利要求6至9中任一项所述的分布式查询引擎,其特征在于,所述获取模块还用于:
获取关系型数据库的元数据,并存储至本地。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010242001.2A CN111427931A (zh) | 2020-03-30 | 2020-03-30 | 分布式查询引擎及其查询关系型数据库的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010242001.2A CN111427931A (zh) | 2020-03-30 | 2020-03-30 | 分布式查询引擎及其查询关系型数据库的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111427931A true CN111427931A (zh) | 2020-07-17 |
Family
ID=71549993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010242001.2A Pending CN111427931A (zh) | 2020-03-30 | 2020-03-30 | 分布式查询引擎及其查询关系型数据库的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111427931A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131286A (zh) * | 2020-11-26 | 2020-12-25 | 畅捷通信息技术股份有限公司 | 一种基于时间序列的数据处理方法、装置及存储介质 |
CN112380276A (zh) * | 2021-01-15 | 2021-02-19 | 四川新网银行股份有限公司 | 一种分布式系统分库分表后非分片键字段查询数据的方法 |
CN112380205A (zh) * | 2020-11-17 | 2021-02-19 | 北京融七牛信息技术有限公司 | 一种分布式架构的特征自动生成方法和系统 |
CN113609131A (zh) * | 2021-07-30 | 2021-11-05 | 上海飞机制造有限公司 | 一种数据存储方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170075965A1 (en) * | 2015-09-16 | 2017-03-16 | Turn Inc. | Table level distributed database system for big data storage and query |
CN106599052A (zh) * | 2016-11-15 | 2017-04-26 | 上海跬智信息技术有限公司 | 一种基于ApacheKylin的数据查询系统及其方法 |
CN106802891A (zh) * | 2015-11-26 | 2017-06-06 | 中国电信股份有限公司 | 分布式数据库非分片字段的查询方法、系统和设备 |
-
2020
- 2020-03-30 CN CN202010242001.2A patent/CN111427931A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170075965A1 (en) * | 2015-09-16 | 2017-03-16 | Turn Inc. | Table level distributed database system for big data storage and query |
CN106802891A (zh) * | 2015-11-26 | 2017-06-06 | 中国电信股份有限公司 | 分布式数据库非分片字段的查询方法、系统和设备 |
CN106599052A (zh) * | 2016-11-15 | 2017-04-26 | 上海跬智信息技术有限公司 | 一种基于ApacheKylin的数据查询系统及其方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112380205A (zh) * | 2020-11-17 | 2021-02-19 | 北京融七牛信息技术有限公司 | 一种分布式架构的特征自动生成方法和系统 |
CN112380205B (zh) * | 2020-11-17 | 2024-04-02 | 北京融七牛信息技术有限公司 | 一种分布式架构的特征自动生成方法和系统 |
CN112131286A (zh) * | 2020-11-26 | 2020-12-25 | 畅捷通信息技术股份有限公司 | 一种基于时间序列的数据处理方法、装置及存储介质 |
CN112131286B (zh) * | 2020-11-26 | 2021-03-02 | 畅捷通信息技术股份有限公司 | 一种基于时间序列的数据处理方法、装置及存储介质 |
CN112380276A (zh) * | 2021-01-15 | 2021-02-19 | 四川新网银行股份有限公司 | 一种分布式系统分库分表后非分片键字段查询数据的方法 |
CN113609131A (zh) * | 2021-07-30 | 2021-11-05 | 上海飞机制造有限公司 | 一种数据存储方法、装置、设备及存储介质 |
CN113609131B (zh) * | 2021-07-30 | 2024-05-31 | 商飞智能技术有限公司 | 一种数据存储方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111427931A (zh) | 分布式查询引擎及其查询关系型数据库的方法 | |
CN109800222B (zh) | 一种HBase二级索引自适应优化方法和系统 | |
US10467245B2 (en) | System and methods for mapping and searching objects in multidimensional space | |
CN101354726B (zh) | 一种机群文件系统的内存元数据管理方法 | |
KR101365464B1 (ko) | 데이터베이스 미들웨어를 이용한 데이터 관리 시스템 및 방법 | |
CN110147407B (zh) | 一种数据处理方法、装置及数据库管理服务器 | |
US7721288B2 (en) | Organizing transmission of repository data | |
CN107015985B (zh) | 一种数据存储与获取方法及装置 | |
CN108197296B (zh) | 基于Elasticsearch索引的数据存储方法 | |
US7512597B2 (en) | Relational database architecture with dynamic load capability | |
US8271523B2 (en) | Coordination server, data allocating method, and computer program product | |
EP3373158B1 (en) | Data storage method and coordinator node | |
CN103823807B (zh) | 一种去除重复数据的方法、装置及系统 | |
CN112148680B (zh) | 一种基于分布式图数据库的文件系统元数据管理方法 | |
CN112100152B (zh) | 业务数据处理方法、系统、服务器和可读存储介质 | |
CN108694188B (zh) | 一种索引数据更新的方法以及相关装置 | |
CN114398371B (zh) | 数据库集群系统多副本分片方法、装置、设备及存储介质 | |
CN110597852A (zh) | 数据处理方法、装置、终端及存储介质 | |
CN110716924B (zh) | 删除过期数据的方法和装置 | |
CN109033295B (zh) | 超大数据集的合并方法及装置 | |
EP2778921B1 (en) | A method and a system for distributed processing of a dataset | |
CN111026709A (zh) | 基于集群访问的数据处理方法及装置 | |
CN101526959B (zh) | 一种数据存储方法和装置 | |
CN109101621A (zh) | 一种数据的批量处理方法及系统 | |
CN116361287A (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: 20200717 |