CN106611064B - 分布式关系数据库的数据处理方法和装置 - Google Patents
分布式关系数据库的数据处理方法和装置 Download PDFInfo
- Publication number
- CN106611064B CN106611064B CN201710001121.1A CN201710001121A CN106611064B CN 106611064 B CN106611064 B CN 106611064B CN 201710001121 A CN201710001121 A CN 201710001121A CN 106611064 B CN106611064 B CN 106611064B
- Authority
- CN
- China
- Prior art keywords
- data
- attribute field
- child nodes
- relational database
- histogram
- 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
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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
- G06F16/2456—Join operations
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
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)
- Software Systems (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种分布式关系数据库的数据处理方法和装置,其中,分布式关系数据库的数据处理方法包括:在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表;确定第一属性字段在第一表上的分布信息,根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划;根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发。通过本发明技术方案,并行地执行所有的重分布操作,提高了分布式关系数据库的数据处理效率。
Description
技术领域
本发明涉及数据库技术领域,具体而言,涉及一种分布式关系数据库的数据处理方法和一种分布式关系数据库的数据处理装置。
背景技术
企业级数据库系统为了存储海量的数据,都会使用分布式的数据库和数据仓库来存储数据,这些数据按照指定的方式拆分之后存储在数据库系统的各个节点上。比较常见的就是以article表中指定字段的键值将记录映射到某个节点,或是以ID范围的方式将记录映射到某个节点。这样进行映射的好处,就是基本上可以将数据尽可能均匀的分布到系统内的各个节点上,使得系统内各个节点可以并行地完成某些操作,并行地完成整个SQL(Structured Query Language,结构化查询语言,即数据库中查询算法的一种编码语言)的执行。
其中,在复杂SQL语句的处理过程中,不论是分布式的数据库中还是分布式的数据仓库中,表之间的连接操作占据了大量的CPU时间。
具体地,为了提高数据库的扩展性能,通常都会将数据量比较大的表进行水平的切分,然后分布到不同的子节点上。一般来说,数据切分的方法都是根据业务场景来确定的,因此符合业务场景的SQL语句中存在连接时,一般都可以直接将连接操作下推到各个子节点,因为往往切分的字段基本上都是数据切分的字段(即分布键)。
但是,企业的业务发生变更或是业务复杂之后,往往没有一个理想的办法来处理这些参与连接、数据量比较大的表的切分。目前来说,如果数据的切分字段不是SQL语句中进行连接的字段,那么就需要进行数据的迁移。
目前已知的数据迁移算法中,都需要主节点集中计算数据的统计信息之后,进行数据的重分布,这种做法至少存在两个问题:
其一,统计数据分布以及制定数据重分布的计划一般都比较耗时,在一个节点上进行,会将这个处理过程串行化,导致主节点的处理效率低下;
其二,现有的数据迁移算法一般都追求将每个表的数据重新均分到各个节点,这样会造成数据重分布的代价过大。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的一个目的在于提出了一种分布式关系数据库的数据处理方法。
本发明的另一个目的在于提出了一种分布式关系数据库的数据处理装置。
为实现上述目的,根据本发明的第一方面的实施例,提出了一种分布式关系数据库的数据处理方法,包括:在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表;确定第一属性字段在第一表上的分布信息,根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划;根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发。
根据本发明的实施例的分布式关系数据库的数据处理方法,通过在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表,以降低数据库的物理负载,并且通过确定第一属性字段在第一表上的分布信息,即并行地对第一属性字段进行统计,继续根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,全部子节点的数据重分布计划也是并行制定的,进而根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发,也即通过子节点之间的多次并行操作处理(如统计、制定数据重发布计划和重新分发等操作),最大化重分布处理过程的操作步骤的并行度,另外,降低了对源数据的重分布的均匀性的要求。
另外,上述数据处理方法尤其适用于异构的分布式关系数据库,SQL语言作为处理异构的分布式关系数据库的源数据的一种主要语言,通过提高重分布处理过程的并行度,提高了后续SQL语言的操作(如查询操作和连接操作等)的进度,作为一种企业级数据库的水平扩展方案,不需要昂贵的小型机作为硬件支撑,极大地降低了扩展成本。
根据本发明的上述实施例的分布式关系数据库的数据处理方法,还可以具有以下技术特征:
优选地,确定第一属性字段在第一表上的分布信息,根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,具体包括以下步骤:在第一属性字段在第一表上的分布信息为直方图时,对第一属性字段的直方图的任一元素的键值进行加1运算,并将运算结果确定为待接收直方图的元素的子节点的标识信息;根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个子节点之间的数据重分布计划。
根据本发明的实施例的分布式关系数据库的数据处理方法,其中,第一属性字段和子节点的映射算法并不限于对第一属性字段的直方图的任一元素的键值进行加1运算。
优选地,根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,具体包括以下步骤:在根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部子节点的个数,并记作N;在检测到第一属性字段的直方图的任一元素的键值出现的个数大于或等于N时,确定不存在第一属性字段的子节点为第一类子节点,将包括第一属性字段的分片数据发送至第一类子节点,并记作普通数据;在检测到第一属性字段的直方图的任一元素的键值出现的个数小于N时,确定不存在第一属性字段的子节点为第二类子节点,将包括第一属性字段的分片数据发送至第二类子节点,并记作特殊数据,以及生成相应的属性标识。
根据本发明的实施例的分布式关系数据库的数据处理方法,通过在根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部子节点的个数,并记作N,在检测到第一属性字段的直方图的任一元素的键值出现的个数大于或等于N时,确定不存在第一属性字段的子节点为第一类子节点,将包括第一属性字段的分片数据发送至第一类子节点,并记作普通数据,在检测到第一属性字段的直方图的任一元素的键值出现的个数小于N时,确定不存在第一属性字段的子节点为第二类子节点,将包括第一属性字段的分片数据发送至第二类子节点,并记作特殊数据,以及生成相应的属性标识,以保证后续SQL操作的逻辑正确性。
优选地,根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发,具体包括以下步骤:在全部子节点获取数据重分布计划后,创建第一表对应的待填充的第一临时表;采用查询算法将普通数据发送至对应的第一类子节点,并在第一类子节点将普通数据填充至第一临时表;以及采用查询算法将特殊数据发发送至对应的第二类子节点,并在第二类子节点将特殊数据填充至第一临时表后,保留特殊数据的属性标识;对第一临时表和第二表执行半连接操作,以确定第二表上参与原有连接操作的连接记录,并将连接记录发送至全部子节点;创建第二表模式相同的第二临时表,全部子节点根据连接记录将第二表上参与原有连接操作的分片数据填充至第二临时表。
根据本发明的实施例的分布式关系数据库的数据处理方法,通过在全部子节点获取数据重分布计划后,创建第一表对应的待填充的第一临时表,采用查询算法将普通数据发送至对应的第一类子节点,并在第一类子节点将普通数据填充至第一临时表,以及采用查询算法将特殊数据发送至对应的第二类子节点,并在第二类子节点将特殊数据填充至第一临时表后,保留特殊数据的属性标识,对第一临时表和第二表执行半连接操作,以确定第二表上参与原有连接操作的连接记录,并将连接记录发送至全部子节点,创建第二表模式相同的第二临时表,全部子节点根据连接记录将第二表上参与原有连接操作的分片数据填充至第二临时表,进而在最大程序地提高了执行数据重分布计划的同时,保证了后续SQL操作的逻辑正确性。
优选地,根据本发明的上述实施例的分布式关系数据库的数据处理方法还包括:根据属性标识删除第一临时表中的特殊数据,并对第一临时表的分片数据与第二临时表的分片数据执行原有连接操作;在完成对第一临时表的分片数据与第二临时表的分片数据之间的原有连接操作后,将执行原有连接操作的结果反馈至主节点。
根据本发明的实施例的分布式关系数据库的数据处理方法,通过根据属性标识删除第一临时表中的特殊数据,并对第一临时表的分片数据与第二临时表的分片数据执行原有连接操作,并且在完成对第一临时表的分片数据与第二临时表的分片数据之间的原有连接操作后,将执行原有连接操作的结果反馈至主节点,提高了数据库中的数据处理效率。
根据本发明的第二方面的实施例,提出了一种分布式关系数据库的数据处理装置,包括:判断单元,用于在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表;确定单元,用于确定第一属性字段在第一表上的分布信息,根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划;发送单元,用于根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据进行重新分发。
根据本发明的实施例的分布式关系数据库的数据处理装置,通过在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表,以降低数据库的物理负载,并且通过确定第一属性字段在第一表上的分布信息,即并行地对第一属性字段进行统计,继续根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,全部子节点的数据重分布计划也是并行制定的,进而根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发,也即通过子节点之间的多次并行操作处理(如统计、制定数据重发布计划和重新分发等操作),最大化重分布处理过程的操作步骤的并行度,另外,降低了对源数据的重分布的均匀性的要求。
另外,上述数据处理装置尤其适用于异构的分布式关系数据库,SQL语言作为处理异构的分布式关系数据库的源数据的一种主要语言,通过提高重分布处理过程的并行度,提高了后续SQL语言的操作(如查询操作和连接操作等)的进度,作为一种企业级数据库的水平扩展方案,不需要昂贵的小型机作为硬件支撑,极大地降低了扩展成本。
根据本发明的上述实施例的分布式关系数据库的数据处理装置,还可以具有以下技术特征:
优选地,确定单元包括:运算子单元,用于在第一属性字段在第一表上的分布信息为直方图时,对第一属性字段的直方图的任一元素的键值进行加1运算,并将运算结果确定为待接收直方图的元素的子节点的标识信息;制定子单元,用于根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个子节点之间的数据重分布计划。
根据本发明的实施例的分布式关系数据库的数据处理装置,其中,第一属性字段和子节点的映射算法并不限于对第一属性字段的直方图的任一元素的键值进行加1运算。
优选地,确定单元还包括:统计子单元,用于在根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部子节点的个数,并记作N;第一预设子单元,用于在检测到第一属性字段的直方图的任一元素的键值出现的个数大于或等于N时,确定不存在第一属性字段的子节点为第一类子节点,将包括第一属性字段的分片数据发送至第一类子节点,并记作普通数据;第二预设子单元,用于在检测到第一属性字段的直方图的任一元素的键值出现的个数小于N时,确定不存在第一属性字段的子节点为第二类子节点,将包括第一属性字段的分片数据发送至第二类子节点,并记作特殊数据,以及生成相应的属性标识。
根据本发明的实施例的分布式关系数据库的数据处理装置,通过在根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部子节点的个数,并记作N,在检测到第一属性字段的直方图的任一元素的键值出现的个数大于或等于N时,确定不存在第一属性字段的子节点为第一类子节点,将包括第一属性字段的分片数据发送至第一类子节点,并记作普通数据,在检测到第一属性字段的直方图的任一元素的键值出现的个数小于N时,确定不存在第一属性字段的子节点为第二类子节点,将包括第一属性字段的分片数据发送至第二类子节点,并记作特殊数据,以及生成相应的属性标识,以保证后续SQL操作的逻辑正确性。
优选地,确定单元还包括:第一创建子单元,用于在全部子节点获取数据重分布计划后,创建第一表对应的待填充的第一临时表;第一查询子单元,用于采用查询算法将普通数据发送至对应的第一类子节点,并在第一类子节点将普通数据填充至第一临时表;第二查询子单元,用于以及采用查询算法将特殊数据发送至对应的第二类子节点,并在第二类子节点将特殊数据填充至第一临时表后,保留特殊数据的属性标识;半连接子单元,用于对第一临时表和第二表执行半连接操作,以确定第二表上参与原有连接操作的连接记录,并将连接记录发送至全部子节点;第二创建子单元,用于创建第二表模式相同的第二临时表,全部子节点根据连接记录将第二表上参与原有连接操作的分片数据填充至第二临时表。
根据本发明的实施例的分布式关系数据库的数据处理装置,通过在全部子节点获取数据重分布计划后,创建第一表对应的待填充的第一临时表,采用查询算法将普通数据发送至对应的第一类子节点,并在第一类子节点将普通数据填充至第一临时表,以及采用查询算法将特殊数据发送至对应的第二类子节点,并在第二类子节点将特殊数据填充至第一临时表后,保留特殊数据的属性标识,对第一临时表和第二表执行半连接操作,以确定第二表上参与原有连接操作的连接记录,并将连接记录发送至全部子节点,创建第二表模式相同的第二临时表,全部子节点根据连接记录将第二表上参与原有连接操作的分片数据填充至第二临时表,进而在最大程序地提高了执行数据重分布计划的同时,保证了后续SQL操作的逻辑正确性。
优选地,根据本发明的实施例的分布式关系数据库的数据处理装置还包括:连接单元,用于根据属性标识删除第一临时表中的特殊数据,并对第一临时表的分片数据与第二临时表的分片数据执行原有连接操作;反馈单元,用于在完成对第一临时表的分片数据与第二临时表的分片数据之间的原有连接操作后,将执行原有连接操作的结果反馈至主节点。
根据本发明的实施例的分布式关系数据库的数据处理装置,通过根据属性标识删除第一临时表中的特殊数据,并对第一临时表的分片数据与第二临时表的分片数据执行原有连接操作,并且在完成对第一临时表的分片数据与第二临时表的分片数据之间的原有连接操作后,将执行原有连接操作的结果反馈至主节点,提高了数据库中的数据处理效率。
根据本发明的实施例的分布式关系数据库的数据处理方案,通过在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表,以降低数据库的物理负载,并且通过确定第一属性字段在第一表上的分布信息,即并行地对第一属性字段进行统计,继续根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,全部子节点的数据重分布计划也是并行制定的,进而根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发,也即通过子节点之间的多次并行操作处理(如统计、制定数据重发布计划和重新分发等操作),最大化重分布处理过程的操作步骤的并行度,另外,降低了对源数据的重分布的均匀性的要求。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1示出了根据本发明的分布式关系数据库的数据处理方法的实施例一的示意流程图;
图2示出了根据本发明的分布式关系数据库的数据处理方法的实施例二的示意流程图;
图3示出了根据本发明的实施例的分布式关系数据库的数据处理装置的示意框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
下面结合图1和图2对根据本发明的实施例的分布式关系数据库的数据处理方法进行具体说明。
实施例一:
分布式关系数据库中的源数据经过分布键的水平切分操作后分布于第一表的分片数据和第二表的分片数据中,第一表和第二表的连接字段分别为源数据中的第一属性字段和第二属性字段,并且第一属性字段和第二属性字段均不是分布键,分布式关系数据库包括一个主节点和多个子节点,其中,预设第一表和第二表的连接操作并作为原有连接操作。
图1示出了根据本发明的分布式关系数据库的数据处理方法的实施例一的示意流程图。
如图1所示,根据本发明的实施例的分布式关系数据库的数据处理方法包括:步骤102,在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表;步骤104,确定第一属性字段在第一表上的分布信息,根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划;步骤106,根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发。
根据本发明的实施例的分布式关系数据库的数据处理方法,通过在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表,以降低数据库的物理负载,并且通过确定第一属性字段在第一表上的分布信息,即并行地对第一属性字段进行统计,继续根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,全部子节点的数据重分布计划也是并行制定的,进而根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发,也即通过子节点之间的多次并行操作处理(如统计、制定数据重发布计划和重新分发等操作),最大化重分布处理过程的操作步骤的并行度,另外,降低了对源数据的重分布的均匀性的要求。
另外,上述数据处理方法尤其适用于异构的分布式关系数据库,SQL语言作为处理异构的分布式关系数据库的源数据的一种主要语言,通过提高重分布处理过程的并行度,提高了后续SQL语言的操作(如查询操作和连接操作等)的进度,作为一种企业级数据库的水平扩展方案,不需要昂贵的小型机作为硬件支撑,极大地降低了扩展成本。
根据本发明的上述实施例的分布式关系数据库的数据处理方法,还可以具有以下技术特征:
优选地,确定第一属性字段在第一表上的分布信息,根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,具体包括以下步骤:在第一属性字段在第一表上的分布信息为直方图时,对第一属性字段的直方图的任一元素的键值进行加1运算,并将运算结果确定为待接收直方图的子节点的标识信息;根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个子节点之间的数据重分布计划。
根据本发明的实施例的分布式关系数据库的数据处理方法,其中,第一属性字段和子节点的映射算法并不限于对第一属性字段的直方图的任一元素的键值进行加1运算。
优选地,根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,具体包括以下步骤:在根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部子节点的个数,并记作N;在检测到第一属性字段的直方图的任一元素的键值出现的个数大于或等于N时,确定不存在第一属性字段的子节点为第一类子节点,将包括第一属性字段的分片数据发送至第一类子节点,并记作普通数据;在检测到第一属性字段的直方图的任一元素的键值出现的个数小于N时,确定不存在第一属性字段的子节点为第二类子节点,将包括第一属性字段的分片数据发送至第二类子节点,并记作特殊数据,以及生成相应的属性标识。
根据本发明的实施例的分布式关系数据库的数据处理方法,通过在根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部子节点的个数,并记作N,在检测到第一属性字段的直方图的任一元素的键值出现的个数大于或等于N时,确定不存在第一属性字段的子节点为第一类子节点,将包括第一属性字段的分片数据发送至第一类子节点,并记作普通数据,在检测到第一属性字段的直方图的任一元素的键值出现的个数小于N时,确定不存在第一属性字段的子节点为第二类子节点,将包括第一属性字段的分片数据发送至第二类子节点,并记作特殊数据,以及生成相应的属性标识,以保证后续SQL操作的逻辑正确性。
优选地,根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发,具体包括以下步骤:在全部子节点获取数据重分布计划后,创建第一表对应的待填充的第一临时表;采用查询算法将普通数据发送至对应的第一类子节点,并在第一类子节点将普通数据填充至第一临时表;以及采用查询算法将特殊数据发送至对应的第二类子节点,保留特殊数据的属性标识;对第一临时表和第二表执行半连接操作,以确定第二表上参与原有连接操作的连接记录,并将连接记录发送至全部子节点;创建第二表模式相同的第二临时表,全部子节点根据连接记录将第二表上参与原有连接操作的分片数据填充至第二临时表。
根据本发明的实施例的分布式关系数据库的数据处理方法,通过在全部子节点获取数据重分布计划后,创建第一表对应的待填充的第一临时表,采用查询算法(例如SQL语句)将普通数据发送至对应的第一类子节点,并在第一类子节点将普通数据填充至第一临时表,以及采用查询算法将特殊数据发送至对应的第二类子节点,并在第二类子节点将特殊数据填充至第一临时表后,保留特殊数据的属性标识,对第一临时表和第二表执行半连接操作,以确定第二表上参与原有连接操作的连接记录,并将连接记录发送至全部子节点,创建第二表模式相同的第二临时表,全部子节点根据连接记录将第二表上参与原有连接操作的分片数据填充至第二临时表,进而在最大程序地提高了执行数据重分布计划的同时,保证了后续SQL操作的逻辑正确性。
优选地,根据本发明的上述实施例的分布式关系数据库的数据处理方法还包括:根据属性标识删除第一临时表中的特殊数据,并对第一临时表的分片数据与第二临时表的分片数据执行原有连接操作;在完成对第一临时表的分片数据与第二临时表的分片数据之间的原有连接操作后,将执行原有连接操作的结果反馈至主节点。
根据本发明的实施例的分布式关系数据库的数据处理方法,通过根据属性标识删除第一临时表中的特殊数据,并对第一临时表的分片数据与第二临时表的分片数据执行原有连接操作,在完成对第一临时表的分片数据与第二临时表的分片数据之间的原有连接操作后,将执行原有连接操作的结果反馈至主节点,提高了数据库中的数据处理效率。
实施例二:
图2示出了根据本发明的分布式关系数据库的数据处理方法的实施例二的示意流程图。
如图2所示,根据本发明的实施例的分布式关系数据库的数据处理方法包括:步骤202,主节点定义参加连接的两个表分别为S表和R表,确定需要重分布的表(例如R表);步骤204,各个子节点获得R表上x字段的直方图,并将直方图的元素分发;步骤206,各子节点接收到直方图的元素之后确定数据重分布计划并进行分发;步骤208,各子节点收到数据重分布计划之后获得第一临时表R1,并执行数据重分布计划;步骤210,各子节点执行半连接操作并获得S表上各分片数据参与原有连接操作的连接记录,向全部子节点广播该连接记录;步骤212,各子节点根据连接记录将收到的参与原有连接操作的分片数据插入第二临时表S1;步骤214,各子节点将第一临时表R1上特殊数据删除,在第一临时表R1和第二临时表S1上执行原有连接操作,将上述原有连接操作的结果返回主节点。
其中,R表即为本申请中的第一表,S表即为本申请的第二表,第二临时表R1即为第一表对应的待填充的第一临时表,第二临时表S1即为与第二表模式(schema)的第二临时表。
具体地,假设当前需要处理得是R表和S表做连接,连接的字段分别是R.x(R表中的x字段)和S.a(S表中的a字段),数据库系统中有一个主节点和N个子节点,其中,N为大于或等于2的正整数,主节点上存有源数据以及节点信息,源数据经过分布键的水平切分操作后分布于R表和S表中,N个子节点存有源数据的分片数据,但是水平切分数据的字段不是R.x和S.a,预设的R表和S表之间的连接操作记为原有连接操作,那么处理的流程分为以下几个步骤:
步骤S1,主节点从各个子节点上收集表的大小,确定数据量比较小的表为需要重分布的表。在这里我们假设是R表的数据量比较小,我们确定R表需要重分布。
步骤S2,各个子节点在本地收集R表上x字段的分布信息,计算x的直方图,例如可以使用“SQL:selct count(*),x from R group by x”获取上述直方图。
举例说明,x字段的直方图的可以如下表1所示:
表1
键值 | 键值出现的个数 |
2 | 4 |
3 | 6 |
4 | 3 |
其中,直方图的一个元素包括直方图中的任一键值以及该键值出现的个数。
在获得直方图后,通过预设映射关系将直方图的元素发送给某个对应的子节点,例如预设映射关系可以为:对x的直方图的任一元素的键值进行加1运算,并将运算结果确定为待接收该直方图的元素的子节点的标识信息,从而可根据标识信息将该直方图的元素发送至对应的子节点。举例说,将直方图中“x=2”对应的元素进行键值加1运算,即可得到的运算结果“3”,以作为待接收该直方图的元素的子节点的标识信息。假设运算结果“3”为第三个节点的标识信息,则将“x=2”的元素发送至第三个节点。
步骤S3,各个子节点在收到了关于x的直方图的元素后,例如第三个节点收到了“x=2”的元素,需要处理三种情况:
A)如果发现数据库系统内键值“x=2”出现的个数大于N,并且发现第一子节点和第三子节点上都没有“x=2”的分片数据,而在第二节点上有3个,因此制定出对于“x=2”的数据重分布计划:第二子节点向第一子节点和第三子节点各迁移一条“x=2”的分片数据,这个数据重分布计划会发给第二子节点,迁移的分片数据是普通数据,并且将该数据重分布计划发送到对应的子节点上;
B)但是如果发现在各个子节点上都有“x=2”的分片数据,那么不迁移“x=2”的分片数据;
C)如果“x=2”的出现的个数小于N,则制定出对于“x=2”的数据重分布计划:向缺少“x=2”分片数据的子节点发送一条分片数据,这个分片数据是特殊数据,需用一个特殊字段(即属性标识)来表示其特殊性,并且将该数据重分布计划发送到对应的子节点上。
步骤S4,各个子节点收到数据重分布计划后,先使用“select into”语句复制R表,得到一个第一临时表R1,然后执行收到的数据重分布计划。
其中,对于收到的数据重分布计划,如果是普通数据,一般可以用“select”语句查出满足过滤条件的分片数据之后用“delete”语句删除掉,如果是特殊数据则只执行前面的“select”查询操作,不执行“delete”删除操作。对于子节点收到的分片数据,如果是普通数据则直接插入第一临时表R1中,如果是特殊数据,则插入第一临时表R1中并保留特殊数据的属性标识。
步骤S5,在各个子节点完成数据重分布计划,等待接收到了所有迁移来的数据后,然后使用“SQL:select S.*from R1,S where a=x”执行第一临时表R1和S表的半连接,过滤出S表的各个分片数据参与原有连接操作的连接记录,然后将这些连接记录广播给所有其他的子节点。
步骤S6,各个子节点创建一个和S表模式(schema)相同的第二临时表S1,根据连接记录将收到的S表的分片数据插入第二临时表S1中。
步骤S7,各个子节点上都删除第一临时表R1中的特殊数据,然后在第一临时表R1和第二临时表S1上执行原有连接操作,并将上述原有连接操作的结果发送给主节点。
实施例三:
图3示出了根据本发明的实施例的分布式关系数据库的数据处理装置的示意框图。
分布式关系数据库中的源数据经过分布键的水平切分操作后分布于第一表的分片数据和第二表的分片数据中,第一表和第二表的连接字段分别为源数据中的第一属性字段和第二属性字段,并且第一属性字段和第二属性字段均不是分布键,分布式关系数据库包括一个主节点和多个子节点,其中,预设第一表和第二表的连接操作并作为原有连接操作。
如图3所示,根据本发明的实施例的分布式关系数据库的数据处理装置300,包括:判断单元302,用于在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表;确定单元304,用于确定第一属性字段在第一表上的分布信息,根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划;发送单元306,用于根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据进行重新分发。
根据本发明的实施例的分布式关系数据库的数据处理装置300,通过在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表,以降低数据库的物理负载,并且通过确定第一属性字段在第一表上的分布信息,即并行地对第一属性字段进行统计,继续根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,全部子节点的数据重分布计划也是并行制定的,进而根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发,也即通过子节点之间的多次并行操作处理(如统计、制定数据重发布计划和重新分发等操作),最大化重分布处理过程的操作步骤的并行度,另外,降低了对源数据的重分布的均匀性的要求。
另外,上述数据处理装置300尤其适用于异构的分布式关系数据库,SQL语言作为处理异构的分布式关系数据库的源数据的一种主要语言,通过提高重分布处理过程的并行度,提高了后续SQL语言的操作(如查询操作和连接操作等)的进度,作为一种企业级数据库的水平扩展方案,不需要昂贵的小型机作为硬件支撑,极大地降低了扩展成本。
根据本发明的上述实施例的分布式关系数据库的数据处理装置300,还可以具有以下技术特征:
优选地,确定单元304包括:运算子单元3042,用于在第一属性字段在第一表上的分布信息为直方图时,对第一属性字段的直方图的任一元素的键值进行加1运算,并将运算结果确定为待接收直方图的子节点的标识信息;制定子单元3044,用于根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个子节点之间的数据重分布计划。
根据本发明的实施例的分布式关系数据库的数据处理装置300,其中,第一属性字段和子节点的映射算法并不限于对第一属性字段的直方图的任一元素的键值进行加1运算。
优选地,确定单元304还包括:统计子单元3046,用于在根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部子节点的个数,并记作N;第一预设子单元3048,用于在检测到第一属性字段的直方图的任一元素的键值出现的个数大于或等于N时,确定不存在第一属性字段的子节点为第一类子节点,将包括第一属性字段的分片数据发送至第一类子节点,并记作普通数据;第二预设子单元30410,用于在检测到第一属性字段的直方图的任一元素的键值出现的个数小于N时,确定不存在第一属性字段的子节点为第二类子节点,将包括第一属性字段的分片数据发送至第二类子节点,并记作特殊数据,以及生成相应的属性标识。
根据本发明的实施例的分布式关系数据库的数据处理装置300,通过在根据标识信息将第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部子节点的个数,并记作N,在检测到第一属性字段的直方图的任一元素的键值出现的个数大于或等于N时,确定不存在第一属性字段的子节点为第一类子节点,将包括第一属性字段的分片数据发送至第一类子节点,并记作普通数据,在检测到第一属性字段的直方图的任一元素的键值出现的个数小于N时,确定不存在第一属性字段的子节点为第二类子节点,将包括第一属性字段的分片数据发送至第二类子节点,并记作特殊数据,以及生成相应的属性标识,以保证后续SQL操作的逻辑正确性。
优选地,确定单元304还包括:第一创建子单元30412,用于在全部子节点获取数据重分布计划后,创建第一表对应的待填充的第一临时表;第一查询子单元30414,用于采用查询算法将普通数据发送至对应的第一类子节点,并在第一类子节点将普通数据填充至第一临时表;第二查询子单元30416,用于以及采用查询算法将特殊数据发送至对应的第二类子节点,并在第二类子节点将特殊数据填充至第一临时表后,保留特殊数据的属性标识;半连接子单元30418,用于对第一临时表和第二表执行半连接操作,以确定第二表上参与原有连接操作的连接记录,并将连接记录发送至全部子节点;第二创建子单元30420,用于创建第二表模式相同的第二临时表,全部子节点根据连接记录将第二表上参与原有连接操作的分片数据填充至第二临时表。
根据本发明的实施例的分布式关系数据库的数据处理装置300,通过在全部子节点获取数据重分布计划后,创建第一表对应的待填充的第一临时表,采用查询算法将普通数据发送至对应的第一类子节点,并在第一类子节点将普通数据填充至第一临时表,以及采用查询算法将特殊数据发送至对应的第二类子节点,并在第二类子节点将特殊数据填充至第一临时表后,生成特殊数据的属性标识,对第一临时表和第二表执行半连接操作,以确定第二表上参与原有连接操作的连接记录,并将连接记录发送至全部子节点,创建第二表模式相同的第二临时表,全部子节点根据连接记录将第二表上参与原有连接操作的分片数据填充至第二临时表,进而在最大程序地提高了执行数据重分布计划的同时,保证了后续SQL操作的逻辑正确性。
优选地,根据本发明的实施例的分布式关系数据库的数据处理装置300还包括:连接单元308,用于根据属性标识删除第一临时表中的特殊数据,并对第一临时表的分片数据与第二临时表的分片数据执行原有连接操作;反馈单元310,用于在完成对第一临时表的分片数据与第二临时表的分片数据之间的原有连接操作后,将执行原有连接操作的结果反馈至主节点。
根据本发明的实施例的分布式关系数据库的数据处理装置300,通过根据属性标识删除第一临时表中的特殊数据,并对第一临时表的分片数据与第二临时表的分片数据执行原有连接操作,并且在完成对第一临时表的分片数据与第二临时表的分片数据之间的原有连接操作后,将执行原有连接操作的结果反馈至主节点,提高了数据库中的数据处理效率。
本发明实施例提供的分布式关系数据库的数据处理装置适用于上述任意实施例提供的分布式关系数据库的数据处理方法,具备相应的功能和有益效果,在此不再赘述。
根据本发明的实施例的分布式关系数据库的数据处理方案,通过在检测到第一表的数据量小于第二表的数据量时,确定第一表为待重分布的表,以降低数据库的物理负载,并且通过确定第一属性字段在第一表上的分布信息,即并行地对第一属性字段进行统计,继续根据预设映射关系将分布信息发送至对应的子节点,以制定任两个子节点之间的数据重分布计划,全部子节点的数据重分布计划也是并行制定的,进而根据数据重分布计划控制任两个子节点之间并行地对第一属性字段所属的分片数据重新分发,也即通过子节点之间的多次并行操作处理(如统计、制定数据重发布计划和重新分发等操作),最大化重分布处理过程的操作步骤的并行度,另外,降低了对源数据的重分布的均匀性的要求。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例终端中的单元可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种分布式关系数据库的数据处理方法,源数据经过分布键的水平切分操作后分布于第一表的分片数据和第二表的分片数据中,所述第一表和所述第二表的连接字段分别为所述源数据中的第一属性字段和第二属性字段,并且所述第一属性字段和所述第二属性字段均不是所述分布键,所述分布式关系数据库包括一个主节点和多个子节点,其特征在于,所述分布式关系数据库的数据处理方法包括:
在检测到所述第一表的数据量小于所述第二表的数据量时,确定所述第一表为待重分布的表;
确定所述第一属性字段在所述第一表上的分布信息,根据预设映射关系将所述分布信息发送至对应的子节点,以制定任两个所述子节点之间的数据重分布计划;
根据所述数据重分布计划控制任两个所述子节点之间并行地对所述第一属性字段所属的分片数据重新分发;
在全部所述子节点获取所述数据重分布计划后,创建所述第一表对应的待填充的第一临时表;
对所述第一临时表和所述第二表执行半连接操作,以确定所述第二表上参与原有连接操作的连接记录,并将所述连接记录发送至全部所述子节点;
创建所述第二表模式相同的第二临时表,全部所述子节点根据所述连接记录将所述第二表上参与所述原有连接操作的分片数据填充至所述第二临时表。
2.根据权利要求1所述的分布式关系数据库的数据处理方法,其特征在于,所述确定所述第一属性字段在所述第一表上的分布信息,根据预设映射关系将所述分布信息发送至对应的子节点,以制定任两个所述子节点之间的数据重分布计划的步骤包括:
在所述第一属性字段在所述第一表上的分布信息为直方图时,对所述第一属性字段的直方图的任一元素的键值进行加1运算,并将运算结果确定为待接收所述直方图的元素的子节点的标识信息;
根据所述标识信息将所述第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个所述子节点之间的数据重分布计划。
3.根据权利要求2所述的分布式关系数据库的数据处理方法,其特征在于,所述根据所述标识信息将所述第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个所述子节点之间的数据重分布计划的步骤包括:
在根据所述标识信息将所述第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部所述子节点的个数,并记作N;
在检测到所述第一属性字段的直方图的任一元素的键值出现的个数大于或等于所述N时,确定不存在所述第一属性字段的子节点为第一类子节点,将包括所述第一属性字段的分片数据发送至所述第一类子节点,并记作普通数据;
在检测到所述第一属性字段的直方图的任一元素的键值出现的个数小于所述N时,确定不存在所述第一属性字段的子节点为第二类子节点,将包括所述第一属性字段的分片数据发送至所述第二类子节点,并记作特殊数据,以及生成相应的属性标识。
4.根据权利要求3所述的分布式关系数据库的数据处理方法,其特征在于,所述根据所述数据重分布计划控制任两个所述子节点之间并行地对所述第一属性字段所属的分片数据重新分发的步骤包括:
采用查询算法将所述普通数据发送至对应的所述第一类子节点,并在所述第一类子节点将普通数据填充至所述第一临时表;
以及采用所述查询算法将所述特殊数据发送至对应的第二类子节点,并在第二类子节点将特殊数据填充至所述第一临时表后,保留所述特殊数据的属性标识。
5.根据权利要求4所述的分布式关系数据库的数据处理方法,其特征在于,所述分布式关系数据库的数据处理方法还包括:
根据所述属性标识删除所述第一临时表中的特殊数据,并对所述第一临时表的分片数据与所述第二临时表的分片数据执行原有连接操作;
在完成对所述第一临时表的分片数据与所述第二临时表的分片数据之间的原有连接操作后,将执行所述原有连接操作的结果反馈至所述主节点。
6.一种分布式关系数据库的数据处理装置,源数据经过分布键的水平切分操作后分布于第一表的分片数据和第二表的分片数据中,所述第一表和所述第二表的连接字段分别为所述源数据中的第一属性字段和第二属性字段,并且所述第一属性字段和所述第二属性字段均不是所述分布键,所述分布式关系数据库包括一个主节点和多个子节点,其特征在于,所述分布式关系数据库的数据处理装置包括:
判断单元,用于在检测到所述第一表的数据量小于所述第二表的数据量时,确定所述第一表为待重分布的表;
确定单元,用于确定所述第一属性字段在所述第一表上的分布信息,根据预设映射关系将所述分布信息发送至对应的子节点,以制定任两个所述子节点之间的数据重分布计划;
发送单元,用于根据所述数据重分布计划控制任两个所述子节点之间并行地对所述第一属性字段所属的分片数据进行重新分发;
第一创建子单元,用于在全部所述子节点获取所述数据重分布计划后,创建所述第一表对应的待填充的第一临时表;
半连接子单元,用于对所述第一临时表和所述第二表执行半连接操作,以确定所述第二表上参与原有连接操作的连接记录,并将所述连接记录发送至全部所述子节点;
第二创建子单元,用于创建所述第二表模式相同的第二临时表,全部所述子节点根据所述连接记录将所述第二表上参与所述原有连接操作的分片数据填充至所述第二临时表。
7.根据权利要求6所述的分布式关系数据库的数据处理装置,其特征在于,所述确定单元包括:
运算子单元,用于在所述第一属性字段在所述第一表上的分布信息为直方图时,对所述第一属性字段的直方图的任一元素的键值进行加1运算,并将运算结果确定为待接收所述直方图的元素的子节点的标识信息;
制定子单元,用于根据所述标识信息将所述第一属性字段对应的直方图的元素发送至对应的子节点,以制定任两个所述子节点之间的数据重分布计划。
8.根据权利要求7所述的分布式关系数据库的数据处理装置,其特征在于,所述确定单元还包括:
统计子单元,用于在根据所述标识信息将所述第一属性字段对应的直方图的元素发送至对应的子节点后,确定全部所述子节点的个数,并记作N;
第一预设子单元,用于在检测到所述第一属性字段的直方图的任一元素的键值出现的个数大于或等于所述N时,确定不存在所述第一属性字段的子节点为第一类子节点,将包括所述第一属性字段的分片数据发送至所述第一类子节点,并记作普通数据;
第二预设子单元,用于在检测到所述第一属性字段的直方图的任一元素的键值出现的个数小于所述N时,确定不存在所述第一属性字段的子节点为第二类子节点,将包括所述第一属性字段的分片数据发送至所述第二类子节点,并记作特殊数据,以及生成相应的属性标识。
9.根据权利要求8所述的分布式关系数据库的数据处理装置,其特征在于,所述确定单元还包括:
第一查询子单元,用于采用查询算法将所述普通数据发送至对应的所述第一类子节点,并在所述第一类子节点将所述普通数据填充至所述第一临时表;
第二查询子单元,用于以及采用所述查询算法将所述特殊数据发送至对应的第二类子节点,并在第二类子节点将所述特殊数据填充至所述第一临时表后,保留所述特殊数据的属性标识。
10.根据权利要求9所述的分布式关系数据库的数据处理装置,其特征在于,所述分布式关系数据库的数据处理装置还包括:
连接单元,用于根据所述属性标识删除所述第一临时表中的特殊数据,并对所述第一临时表的分片数据与所述第二临时表的分片数据执行原有连接操作;
反馈单元,用于在完成对所述第一临时表的分片数据与所述第二临时表的分片数据之间的原有连接操作后,将执行所述原有连接操作的结果反馈至所述主节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710001121.1A CN106611064B (zh) | 2017-01-03 | 2017-01-03 | 分布式关系数据库的数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710001121.1A CN106611064B (zh) | 2017-01-03 | 2017-01-03 | 分布式关系数据库的数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106611064A CN106611064A (zh) | 2017-05-03 |
CN106611064B true CN106611064B (zh) | 2020-03-06 |
Family
ID=58636892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710001121.1A Active CN106611064B (zh) | 2017-01-03 | 2017-01-03 | 分布式关系数据库的数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106611064B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562542B (zh) * | 2017-09-06 | 2020-04-07 | 腾讯科技(深圳)有限公司 | 分布式数据处理系统数据分区方法及装置 |
CN110019231B (zh) * | 2017-12-26 | 2021-06-04 | 中国移动通信集团山东有限公司 | 一种并行数据库动态关联的方法及节点 |
CN108833298B (zh) * | 2018-05-29 | 2022-07-05 | 中国建设银行股份有限公司 | 报文分组发送方法、装置以及存储介质 |
CN110968887B (zh) * | 2018-09-28 | 2022-04-05 | 第四范式(北京)技术有限公司 | 在数据隐私保护下执行机器学习的方法和系统 |
CN109408711B (zh) * | 2018-09-29 | 2019-12-06 | 北京三快在线科技有限公司 | 数据过滤方法、装置、电子设备及存储介质 |
CN113032446A (zh) * | 2019-12-24 | 2021-06-25 | 阿里巴巴集团控股有限公司 | 一种分布式查询系统的数据处理方法和装置 |
CN111274028B (zh) * | 2020-01-15 | 2023-09-05 | 新方正控股发展有限责任公司 | 基于数据库中间件的分区方法、分区装置和可读存储介质 |
CN112115123B (zh) * | 2020-09-21 | 2024-05-28 | 中国建设银行股份有限公司 | 用于分布式数据库的性能优化的方法和装置 |
CN117349321B (zh) * | 2023-12-04 | 2024-03-05 | 凯美瑞德(苏州)信息科技股份有限公司 | 一种文档数据库多表连接查询方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870542A (zh) * | 2014-02-25 | 2014-06-18 | 中国人民解放军92859部队 | 一种基于地理分片和动态建表的海洋环境数据存储方法 |
CN104615657A (zh) * | 2014-12-31 | 2015-05-13 | 天津南大通用数据技术股份有限公司 | 一种节点支持多数据分片的分布式集群的扩容和缩容方法 |
WO2016182635A1 (en) * | 2015-05-11 | 2016-11-17 | Oracle International Corporation | Direct-connect functionality in a distributed database grid |
-
2017
- 2017-01-03 CN CN201710001121.1A patent/CN106611064B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870542A (zh) * | 2014-02-25 | 2014-06-18 | 中国人民解放军92859部队 | 一种基于地理分片和动态建表的海洋环境数据存储方法 |
CN104615657A (zh) * | 2014-12-31 | 2015-05-13 | 天津南大通用数据技术股份有限公司 | 一种节点支持多数据分片的分布式集群的扩容和缩容方法 |
WO2016182635A1 (en) * | 2015-05-11 | 2016-11-17 | Oracle International Corporation | Direct-connect functionality in a distributed database grid |
Also Published As
Publication number | Publication date |
---|---|
CN106611064A (zh) | 2017-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106611064B (zh) | 分布式关系数据库的数据处理方法和装置 | |
US10558672B1 (en) | System and method for executing queries on multi-graphics processing unit systems | |
US9201738B2 (en) | Method, computer readable storage medium and computer system for obtaining snapshots of data | |
CN107145537B (zh) | 一种表格数据导入方法及系统 | |
US8271523B2 (en) | Coordination server, data allocating method, and computer program product | |
CN112765262B (zh) | 一种数据重分布方法、电子设备及存储介质 | |
CN111460023A (zh) | 基于Elasticsearch的业务数据处理方法、装置、设备及存储介质 | |
CN105517644B (zh) | 一种数据分区方法和设备 | |
CN107301214B (zh) | 在hive中数据迁移方法、装置及终端设备 | |
CN104978324B (zh) | 一种数据处理方法和装置 | |
CN106815258B (zh) | 一种数据存储方法和协调节点 | |
CN105824868A (zh) | 一种分布式数据库数据处理方法和分布式数据库系统 | |
CN104111958A (zh) | 一种数据查询方法及装置 | |
US20140181059A1 (en) | Batching content management operations to facilitate efficient database interactions | |
US11106649B2 (en) | Electronic apparatus, data chain archiving method, system and storage medium | |
CN110399368B (zh) | 一种定制数据表的方法、数据操作方法及装置 | |
CN108062314B (zh) | 动态分表数据处理方法和装置 | |
CN108073641B (zh) | 查询数据表的方法和装置 | |
CN115408384A (zh) | 数据库访问方法、设备及存储介质 | |
CN103678591A (zh) | 自动执行多业务单据统计处理的装置和方法 | |
CN107463555A (zh) | 删除中间层数据的方法、系统和装置 | |
CN102262636A (zh) | 生成数据库分区执行计划的方法及装置 | |
CN104102557A (zh) | 一种基于聚类的云计算平台数据备份方法 | |
CN105512313A (zh) | 一种增量式数据处理的方法和装置 | |
CN114564501A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220418 Address after: Room 403, 4th floor, building 23, East District, yard 10, Xibeiwang East Road, Haidian District, Beijing 100089 Patentee after: BEIJING VSETTAN DATA TECHNOLOGY CO.,LTD. Address before: 100192 South Zone 1, floor 11, block a, No. 8 Xueqing Road (Science and technology wealth center), Haidian District, Beijing Patentee before: BEIJING VSETTAN DATA TECHNOLOGY CO.,LTD. Patentee before: Huasheng Xintai Information Industry Development Co., Ltd |
|
TR01 | Transfer of patent right |