CN106682215B - 一种数据处理方法和管理节点 - Google Patents
一种数据处理方法和管理节点 Download PDFInfo
- Publication number
- CN106682215B CN106682215B CN201611265398.7A CN201611265398A CN106682215B CN 106682215 B CN106682215 B CN 106682215B CN 201611265398 A CN201611265398 A CN 201611265398A CN 106682215 B CN106682215 B CN 106682215B
- Authority
- CN
- China
- Prior art keywords
- data
- partition
- partition strategy
- storage node
- strategy
- 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/21—Design, administration or maintenance of databases
Abstract
本申请公开了一种数据处理方法和管理节点,数据记录需要进入数据库系统的情况下,根据数据库系统设置的多个分区策略进行分区处理,在根据基准分区策略进行分区处理时存储节点的原始数据表中存放真实的数据记录,在根据非基准分区策略进行分区处理时,如果存储节点中已存在相同的数据记录的情况下,存储节点的索引表中只存放数据记录的索引信息,通过上述的分区处理过程,一个存储节点内只会保存一份数据记录,以减少数据的冗余和提高数据操作效率。
Description
技术领域
本发明涉及数据库领域,尤其涉及一种数据处理方法和管理节点。
背景技术
分区是数据库系统的重要功能,分区将大的数据表分而治之,设计人员可根据不同的分区策略将数据表进行分区,分区策略规定了数据表的一个数据记录应该映射到哪个存储节点,合理的分区能使数据库系统性能提高,可减少系统对数据的读写次数,减小数据库服务器处理数据的规模,便于对数据库的管理。
在现有的分区方案中,会根据业务需求预先指定一个或多个分区策略对数据记录进行分区,分区策略固定设置,无法实时的根据不同的业务需求进行扩展。同时,在使用多个分区策略对数据表进行分区时,存储节点上存在大量的数据冗余。
发明内容
本申请所要解决的技术问题在于,提供一种数据处理方法和管理节点。可解决现有技术中设置分区策略灵活性差和占用存储空间大的问题。
为了解决上述技术问题,本申请提供了一种数据处理方法,数据处理方法适用于数据库系统,数据库系统包括管理节点和多个存储节点,管理节点可以为一个计算设备,每个存储节点可以为一个非易失性存储器,例如HDD(Hard Disk Drive,硬盘驱动器,简称HDD)或SSD(Solid State Drives,固态硬盘),多个存储节点可组成磁盘阵列。存储节点的数量一般大于1且为2的整数次幂,多个存储节点可以位于同一个物理节点,也可以位于不同的物理节点,本申请不作限制。数据库系统配置有分区策略集合,分区策略集合包括多个分区策略,分区策略表示数据记录分布在存储节点中的规则,分区策略包括但不限于范围分区、散列分区和列表分区。多个分区策略包括一个基准分区策略和至少一个非基准分区策略,每个存储节点中建立有基准分区策略关联的原始数据表,以及非基准分区策略关联的索引表,原始数据表和索引表的区别在于:原始数据表中存放的数据全部为真实的数据记录,而索引表中不仅可以存放真实的数据记录,还可以存储数据记录的索引,索引可以为存储地址。在数据记录进入数据库系统时,管理节点对数据记录的处理过程包括:管理节点接收待存入数据库系统的数据记录,其中,待存入数据库系统的数据记录可以是数据库系统外部产生的数据,也可以是数据库系统内部产生的数据。首先,管理节点确定预设的分区策略集合中的基准分区策略,根据基准分区策略的字段确定数据记录的基准分区策略对应的存储节点,将数据记录存放至基准分区策略对应的存储节点的原始数据表中;然后,管理节点确定分区策略集合中的至少一个非基准分区策略,根据预设的顺序每次从至少一个非基准分区策略中选择一个非基准分区策略对数据记录进行分区处理,直到完成对所有的非基准分区策略的选择操作,对于任意一个非基准分区策略,分区处理的方法包括:根据非基准分区策略的字段确定数据记录的非基准分区策略对应的存储节点,判断非基准分区策略对应的存储节点中是否已存在数据记录,若为是,获取非基准分区策略对应的存储节点中已存在数据记录的存储位置信息,在非基准分区策略对应存储节点中确定非基准分区策略关联的索引表,将存储位置信息存放到非基准分区策略关联的索引表中;若非基准分区策略对应的存储节点中未存有待入所述数据库系统的数据记录,将待入所述数据库系统的数据记录保存至非基准分区策略对应的存储节点的对应非基准分区策略的索引表中。需要说明的是,在本发明实施例中,可根据需要对数据记录进行复制生成内容完全相同的副本,数据记录和数据记录的副本可以进行互换,本实施例并不作区分。
需要说明的是,判断非基准分区策略对应的存储节点中是否存在待进入数据库系统的数据记录的方法可以是:识别非基准分区策略对应的存储节点和基准分区策略对应的存储节点是否为同一个节点,若为是,确定非基准分区策略对应的存储节点中存在待进入数据库系统的数据记录;或者,在根据非基准分区策略的字段确定数据记录的非基准分区策略对应的存储节点中,在非基准分区策略对应的存储节点中遍历是否存在待进入数据库系统的数据记录,若为是,确定非基准分区策略对应的存储节点中存在待进入数据库系统的数据记录。
上述实施例,数据记录需要进入数据库系统的情况下,根据数据库系统设置的多个分区策略进行分区处理,在根据基准分区策略进行分区处理时存储节点的原始数据表中存放真实的数据记录,在根据非基准分区策略进行分区处理时,如果存储节点中已存在相同的数据记录的情况下,存储节点的索引表中只存放数据记录的索引信息,通过上述的分区处理过程,一个存储节点内只会保存一份数据记录,以减少数据的冗余。同一个存储节点上原始数据表和索引表在逻辑上为一张表,在针对存储节点的数据操作请求时,避免跨表操作,提高操作效率。
在本方面的一种可能的实施方式中,多个存储节点预先以0开始进行编号,例如数据库系统包括存储节点0、存储节点1、存储节点2…,根据分区策略确定数据记录的存储节点的方法包括:确定分区策略的字段,获取数据记录中分区策略的字段对应的值;根据预设的哈希算法对值进行哈希运算得到一个哈希值,将哈希值与存储节点的数量进行求模得到模值,该模值为存储节点的序号,由此得到数据记录的存储节点。实施上述实施例,通过散列的方式将数据记录均匀的分布在多个存储节点,实现了数据库的分布式存储。
在本方面的一种可能的实施方式中,管理节点接收多个数据查询请求,其中,多个数据查询请求中每个查询请求具有相同的查询条件,每个查询条件包括至少两个字段和至少两个字段各自对应的值,至少两个字段属于所述分区策略集合关联的字段;根据至少两个字段中每个字段的值确定至少两个存储节点;根据预设的比例将多个数据查询请求发送到至少两个存储节点上。上述实施例,根据存储节点之间存在数据冗余的特性,将接收到的多个数据查询请求分流到多个存储节点上进行并行处理,提高数据操作的效率。
在本方面的一种可能的实施方式中,在分区策略集合中增加新的非基准分区策略,在各个存储节点中建立与新的非基准分区策略关联的索引表。在需要对数据库系统中的历史数据重新进行分区处理的情况下,暂停数据记录的入库,确定多个存储节点上的原始数据表中的数据记录,根据所有的原始数据表得到数据库系统的历史数据,根据新的非基准分区策略对历史数据进行分区处理,对于历史数据中的任意一个数据记录,分区处理的过程为:根据新的非基准分区策略确定数据记录的存储节点,判断存储节点中是否已存在该数据记录,若存在,获取已存在的数据记录的存储位置信息,将存储位置信息保存至存储节点中新的非基准分区策略关联的索引表中;若不存在该数据记录,将数据记录存放在新的非基准分区策略关联的索引表中。上述实施例,在分区策略集合中增加新的非基准分区策略的情况下,根据新的非基准分区策略对所有原始数据表中的历史数据重新进行分区处理,这样能根据需要增加新的非基准分区策略,具有很好的灵活性。同时在数据库系统内部就能实现历史数据的重分区,分区效率高。需要说明的是,在分区策略集合中增加新的非基准分区策略,且不需要对历史数据重新进行分区处理的情况下,在新的非基准分区策略生效时,后续待存入数据库系统的数据记录的处理过程可参照第一方面的过程,此处不再赘述。
在本方面的一种可能的实施方式中,修改分区策略集合中基准分区策略,暂停数据记录的入库,依次对每个存储节点中的原始数据表进行处理:根据修改后的基准分区策略确定原始数据表中每个数据记录待的待迁移存储节点,判断数据当前所在的存储节点和待迁移存储节点是否一致,若不一致,将数据记录迁移到待迁移存储节点的原始数据表中,若一致,不迁移数据记录。在所有的存储节点包括的原始数据表中的数据记录迁移完成的情况下,此时每个存储节点上的原始数据表中的数据记录得到更新,根据更新后的所有原始数据表得到数据库系统的历史数据,根据分区策略集合中的至少一个非基准分区策略对得到的历史数据进行分区处理,针对历史数据中的任意一个数据记录,根据至少一个非基准分区策略的排列顺序依次对数据记录进行分区处理,分区处理的过程可参照第一方面的描述,此处不再赘述。上述实施例,在更新分区策略集合中的基准分区策略的情况下,根据修改后的基准分区策略对所有原始数据表中的数据记录进行迁移,以及根据分区策略集合中的至少一个非基准分区策略对历史数据重新进行分区处理,这样能根据需要更新基准分区策略,具有很好的灵活性。
在本方面的一种可能的实施方式中,修改分区策略集合中的非基准分区策略,修改操作实际包括删除操作和增加操作,在需要对数据库系统中的历史数据重新进行分区的情况下,暂停数据记录的入库,在每个存储节点上述修改前的非基准分区策略关联的索引表中的数据。根据多个存储节点包括的原始数据表得到数据库系统的历史数据,根据修改后的非基准分区策略对历史数据进行分区处理,分区处理过程可参照第一方面的描述,此处不再赘述。上述实施例,在分区策略集合中修改非基准分区策略的情况下,根据修改后的非基准分区策略对所有原始数据表中的历史数据重新进行分区处理,这样能根据需要修改新的非基准分区策略,具有很好的灵活性。
第二方面,提供一种本发明提供了一种管理节点,包括处理器、存储器、通信接口、总线,所述处理器、存储器和通信接口之间通过总线连接并完成相互间的通信,所述存储器中用于存储计算机执行指令,所述管理节点运行时,所述处理器执行所述存储器中的计算机执行指令以利用所述管理节点中的硬件资源执行第一方面或第一方面任一种可能实现方式中所执行的操作。
本申请第三方面提供了一种存储介质,该存储介质中存储了程序,该程序被管理节点运行时,该管理节点执行前述第一方面或第一方面的任一实现方式提供的数据处理方法。该存储介质包括但不限于只读存储器,随机访问存储器,快闪存储器、HDD或SSD。
本申请第四方面提供了一种计算机程序产品,该计算机程序产品包括程序指令,当该计算机程序产品被管理节点执行时,该管理节点执行前述第一方面或第一方面的任一实现方式提供的数据处理方法。该计算机程序产品可以为一个软件安装包,在需要使用前述第一方面或第一方面的任一实现方式提供的数据处理方法的情况下,可以下载该计算机程序产品并在管理节点上执行该计算机程序产品。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据库系统的结构示意图;
图2A是本发明实施例提供的一种数据处理方法的流程示意图;
图2B是本发明实施例提供的另一种数据库系统的结构示意图;
图3A是本发明实施例提供的一种历史数据分区处理方法的流程示意图;
图3B是本发明实施例提供的另一种数据库系统的流程示意图;
图4A是本发明实施例提供的另一种历史数据分区处理方法的流程示意图;
图4B是本发明实施例提供的另一种数据库系统的结构示意图;
图5A是本发明实施例提供的另一种历史数据分区处理方法的流程示意图;
图5B是本发明实施例提供的另一种数据库系统的结构示意图;
图6是本发明实施例提供的一种管理节点的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
参见图1,为本发明实施例提供的一种数据库系统的结构示意图,数据库系统包括管理节点和n个存储节点,n个存储节点可以为位于同一物理节点上的逻辑节点,也可以为不同的物理节点,n为大于1的整数,n一般为2的整数幂,即n=2k,k为大于0的整数。管理节点可以为一个计算设备或物理服务器,每个存储节点可以为一个非易失性存储器,例如HDD或SSD,多个存储节点可组成磁盘阵列。
管理节点存储有分区策略集合,在一种可能的实施方式中,分区策略集合也可以存放在数据库系统的其他节点上,本实施例不作限制。分区策略集合的数据结构包括但不限于数据表、队列、堆栈、数组或其他形式;分区策略集合包括m个分区策略,m为大于1的整数,分区策略表示数据记录存放的存储节点的规则,每个分区策略关联1个字段,分区策略1关联字段1、分组策略2关联字段2、…分区策略m关联字段m,分区策略的类型包括但不限于范围分区、散列分区和列表分区。m个分区策略根据排列顺序依为分区策略1、分区策略2、分区策略3、、分区策略m,m个分区策略包含1个基准分区策略和m-1个非基准分区策略,在图1中,分区策略1为基准分区策略,分区策略2~m为非基准分区策略。每个存储节点中设置有m个数据表,m个数据表包含1个原始数据表和m-1个索引表,原始数据表与基准分区策略关联,m-1个索引表与m-1个非基准分区策略关联,1个索引表关联1个非基准分区策略;例如:在存储节点0中,存储节点0包括原始数据表1、索引表2、索引表3、…、索引表m,分区策略1与原始数据表1关联,分区策略2与索引表2关联、…、分区策略m与索引表m关联。需要说明的是,每个存储节点中包括的原始数据表和索引表在逻辑上为一张表。
在数据记录需要进入数据库系统的情况下,管理节点根据分区策略集合中分区策略的排列顺序依次对待存入数据库系统的数据记录进行分区处理,分区处理过程包括:接收待存入数据库系统的数据记录,数据记录可来自外部的应用程序,管理节点确定分区策略集合中的基准分区策略,假设基准分区策略为分区策略1,根据分区策略1关联的字段1确定数据记录的分区策略1对应存储节点,假设分区策略1对应的存储节点为存储节点0,将数据记录存储在存储节点0的原始数据表1中。确定分区策略集合中的下一条分区策略为分区策略2,基准分区策略后面为非基准分区策略,即分区策略2为非基准分区策略,根据分区策略2的字段1确定数据记录的分区策略2对应的存储节点,假设确定的存储节点为存储节点0,判断存储节点0是否已存在数据记录,在一种可能的实现方式中,根据上述的处理过程,分区策略1对应的存储节点和分区策略2对应的存储节点相同,因此可以确定存储节点0中已存在数据记录;在另一种可能的实现方式中,管理节点可以在确定的存储节点0中遍历是否存在待存入数据库系统的数据记录,若为是,确定存储节点0中已存在该数据记录。然后管理节点获取存储节点0中的数据记录的存储位置信息,存储位置信息可以包括存储地址、数据表的ID以及数据表中的位置信息,管理节点将存储节点0中的存储位置信息存放在存储节点0中的索引表2中。根据分区策略2~m对数据记录的处理过程和分区策略的处理过程相同,此处不再赘述,在数据记录经过分区策略表中所有的分区策略的分区处理后,等待下一条数据记录。
上述实施例,数据记录需要进入数据库系统的情况下,根据数据库系统设置的多个分区策略进行分区处理,在根据基准分区策略进行分区处理时存储节点的原始数据表中存放真实的数据记录,在根据非基准分区策略进行分区处理时,如果存储节点中已存在相同的数据记录的情况下,存储节点的索引表中只存放数据记录的索引信息,通过上述的分区处理过程,一个存储节点内只会保存一份数据记录,以减少数据的冗余。另外,同一个存储节点上原始数据表和索引表在逻辑上为一张表,在针对存储节点的数据操作请求时,避免跨表操作,提高操作效率。
参见图2A,为本发明实施例提供的一种数据处理方法的流程示意图,在本发明实施例中,所述方法包括:
S201、接收待存入数据库系统的数据记录。
具体的,待存入数据库系统的数据记录可以由数据库系统外部的应用程序产生,可以通过其他方式产生,以下将待存入数据库系统的数据库系统简称为数据记录,一个数据记录包括多个字段,每个字段对应一个值。例如:一个数据记录的形式为:
姓名 | 学号 | 语文 | 数学 | 英语 | 政治 | 物理 | 化学 |
张三 | 090302 | 100 | 120 | 98 | 80 | 80 | 90 |
表1
表1中的数据记录包括8个字段,8个字段分别为姓名、学号、语文、数学、英语、政治、物理、化学,在表1的数据记录中姓名的值为张三,学号的值为090302,语文的值为100,数学的值为120,英语的值为98,政治的值为80,物理的值为80,化学的值为90。
S202、确定分区策略集合中的基准分区策略,根据基准分区策略关联的字段确定基准分区策略对应的存储节点,将待存入所述数据库系统的数据记录保存至基准分区策略对应的存储节点的原始数据表中。
具体的,分区策略集合中包括一个基准分区策略和至少一个非基准分区策略,分区策略集合中每个分区策略关联数据记录的1个字段,管理节点确定分区策略集合中的基准分区策略,根据基准分区策略确定数据记录的基准分区策略对应的存储节点,以及在基准分区策略对应的存储节点中确定与基准分区策略关联的原始数据表,将数据记录存放在原始数据表中。
在一种可能的实施方式中,数据库系统根据基准分区策略关联的字段确定数据记录的基准分区策略对应的存储节点包括:确定基准分区策略关联的字段,以及确定数据记录中基准分区策略的字段对应的值,对得到的值根据预设的哈希算法得到一个哈希值,根据哈希值对存储节点的数量进行求模得到序号,该序号为数据记录的存储节点的序号。
示例性的,基准分区策略关联的字段为“姓名”,管理节点接收到的数据记录如表1所示,数据库系统在数据记录中确定字段“姓名”的值为“张三”,数据库系统将字符串“张三”根据预设的哈希算法得到一个哈希值,假设哈希值为100,存储节点的数量为4,将100与存储节点的数量4进行求模得到0,0表示4个存储节点中的首个存储节点,数据库系统将表1的数据记录存放在存储节点0的原始数据表中。
S203、根据分区策略集合中的每一个非基准分区策略依次对待存入数据库系统的数据记录进行分区处理。
具体的,根据至少一个非基准分区策略的排列顺序,根据每一个非基准分区策略依次对数据记录进行分区处理,分区处理包括:根据至少一个非基准分区策略中的一个非基准分区策略关联的字段确定数据记录的非基准分区策略对应的存储节点,判断非基准分区策略对应的存储节点中是否存在数据记录,若为是,获取非基准分区策略对应的存储节点中存储的数据记录的存储位置信息,将存储位置信息保存至非基准分区策略对应的存储节点的所述非基准分区策略的索引表中。若根据非基准分区策略对应的存储节点中未存有待存入数据库系统的数据记录,将该数据记录保存至非基准分区策略对应的存储节点的非基准分区策略的索引表中。
姓名 | 学号 | 语文 | 数学 | 英语 | 政治 | 物理 | 化学 |
张三 | 090302 | 100 | 120 | 98 | 80 | 80 | 90 |
李四 | 090303 | 120 | 140 | 125 | 85 | 90 | 80 |
王五 | 090312 | 102 | 100 | 115 | 75 | 85 | 75 |
赵六 | 090321 | 134 | 120 | 112 | 65 | 87 | 85 |
陈七 | 090325 | 112 | 105 | 123 | 67 | 88 | 86 |
钱八 | 090314 | 98 | 99 | 99 | 85 | 80 | 78 |
小明 | 090304 | 95 | 124 | 92 | 90 | 75 | 68 |
小红 | 090333 | 102 | 136 | 135 | 86 | 77 | 92 |
表2
示例性的,参见图2B所示,管理节点存储有分区策略集合,分区策略集合中根据排列顺序依次为:分区策略1、分区策略2、分区策略3、分区策略4,分区策略1为基准分区策略,分区策略2~4为非基准分区策略,假设分区策略1的字段为“姓名”,分区策略2的字段为“语文”,分区策略3的字段为“数学”,分区策略4的字段为“英语”。每个待存入数据库系统的数据记录根据分区策略集合中分区策略的排列顺序依次进行分区处理。数据库系统包括4个存储节点,4个存储节点存储节点0、存储节点1、存储节点2和存储节点3,其中,0~3为存储节点的序号。4个存储节点中每个存储节点包括4个数据表,4个数据表与上述的4个分区策略一一对应,基准分区策略关联原始数据表,非基准分区策略关联索引表。例如:在存储节点0中,存储节点0包括原始数据表1、索引表2、索引表3和索引表4,分区策略1与原始数据表1关联,分区策略2与索引表2关联,分区策略3与索引表3关联,分区策略4与索引表4关联。
以表2中的8个数据记录的处理过程为例对本实施例的数据处理过程进行说明,为了便于说明,本实施例将表2中的8个数据记录从上到下依次记为数据记录1、数据记录2、数据记录3、数据记录4、数据记录5、数据记录6、数据记录7、数据记录8。数据记录1首先进入数据库系统,管理节点确定分区策略集合中的基准分区策略为分区策略1,分区策略1的字段为“姓名”,在数据记录1中查询字段“姓名”的值为“张三”,根据值“张三”确定数据记录1的存储节点,假设确定的存储节点为存储节点1,将数据记录1存放在存储节点1的原始数据表1中。然后,确定分区策略集合中分区策略1的下一个分区策略为分区策略2,分区策略2为非基准分区策略,分区策略2的字段为“语文”,在数据记录1中查询字段“语文”对应的值为“100”,根据值“100”确定数据记录1的存储节点,假设确定的存储节点为存储节点1,数据库系统判断存储节点1中已存在数据记录1,若为是,获取存储节点1中已存在的数据记录1的存储位置信息,将存储位置信息存储至存储节点1的索引表2中,若为否,直接将数据记录1存放在存储节点1的索引表2中;然后,确定分区策略集合中分区策略2的下一个分区策略为分区策略3,分区策略3的字段为“数学”,在数据记录1中查询字段“数学”对应的值为“120”,根据值“120”确定数据记录1的存储节点,假设为存储节点2,判断存储节点2中是否存在数据记录1,若为是,获取存储节点2中数据记录1的存储位置信息,将存储位置信息存放在存储节点2中索引表3中,若为否,直接将数据记录1存放在存储节点2的索引表3中。然后,确定分区策略4的字段为“英语”,在数据记录1中查询字段“英语”的值为“98”,根据值“98”确定数据记录1的存储节点,假设确定的存储节点为存储节点3,判断存储节点3中是否存在数据记录1,若为是,获取存储节点3中数据记录1的存储位置信息,将存储位置信息存放到存储节点3的索引表4中,若不存在,直接将数据记录1存放到存储节点3的索引表4中,由此完成对数据记录1的分区处理过程。可以理解的是,表2中数据记录2~数据记录8的处理过程和数据记录1的处理过程相同,此处不再赘述。
假设表2中的8个数据记录经过本实施例的处理过程中后在存储节点中的分布情况如图2B所示,为了便于理解,用序号表示数据记录本身,用“&+序号”表示数据记录的存储位置信息,例如:原始数据表1(1,2),表示原始数据表1中存储的是数据记录1和数据记录2本身,索引表2(&1,8)表示索引表2中存储的是数据记录1的存储位置信息和数据记录8本身。
在一种可能的实施方式中,以分区策略1和数据记录2为例子,确定数据记录的存储节点的过程为:确定分区策略的字段为姓名,在数据记录2中确定字段“姓名”的值为“李四”,根据预设的哈希算法对字符串“李四”进行哈希计算得到一个哈希值,预设的哈希算法包括但不限于MD5(Message Digest algorithm 5,消息摘要算法第5版)或SHA(SecureHash Algorithm,安全哈希算法)。根据得到的哈希值对存储节点的数量4就行求模得到一个模值,模值的范围为0~3,存储节点的序号的范围也为0~3,将得到的模值作为存储节点的序号,由此确定数据记录2的存储节点。需要说明的是,根据基准分区策略和非基准分区策略确定数据记录的存储节点的方法均可采用上述方法。
在一种可能的实施方式中,数据处理过程还包括:
接收多个数据查询请求,其中,所述多个数据查询请求的每个查询请求具有相同的查询条件,所述多个数据查询请求的每个查询条件包括至少两个字段和所述至少两个字段各自对应的值;
根据所述至少两个字段中的每个字段对应的分区策略和所述至少两个字段各自对应的值,确定存储有符合所述多个数据查询请求的数据记录的至少两个存储节点;
根据预设的比例将所述多个数据查询请求分流到所述至少两个存储节点上。
具体的,数据查询请求的数量为多个,每个数据查询请求携带相同的查询条件,查询条件中包括至少两个字段和每个字段的值,至少两个字段属于数据库系统配置的分区策略集合关联的字段,管理节点根据每个字段的值确定存储节点,确定存储节点的方法可参照上述实施例的哈希方式,至少两个字段的值确定出至少两个存储节点,管理节点根据预设的比例将多个数据查询请求分流到确定的至少两个存储节点,在一种可能的实施方式中,采用等比例将多个数据查询请求分流到确定的至少两个存储节点上。
示例性的,数据库系统需要处理1000条数据查询请求,每个数据查询请求的查询条件为:字段“语文”=100and字段“数学”=120,管理节点确定字段“语文”与分区策略2匹配,管理节点根据字段“语文”的值100确定所需的数据记录存放在存储节点0中,然后管理节点确定字段“数学”的值120确定所需的数据记录存放在存储节点3中,管理节点根据预设的比例将1000条件数据查询请求分流到存储节点0和存储节点3上进行处理,预设的比例可以是根据确定的存储节点的数量等比例的将多个数据查询请求进行分配,上述确定的存储节点为2个,则每个节点上分配500条数据查询请求。上述实施例,根据存储节点之间存在数据冗余的特性,将接收到的多个数据查询请求分流到多个存储节点上进行并行处理,提高数据操作的效率。
参见图3A,为本发明实施例提供的一种历史数据分区处理方法的流程示意图,所述方法包括:
S301、在分区策略集合中增加新的非基准分区策略。
具体的,分区策略集合的数据结构包括但不限于数据表、队列、数组、堆栈或其他数据结构,本实施例不作限制。分区策略集合中的分区策略具有特定的排列顺序,首个分区策略为基准分区策略,后续的分区策略为非基准分区策略,数据库系统可以在分区策略集合中最后一个非基准分区策略的后面增加新的非基准分区策略。
示例性的,数据库系统原来的分区策略集合如图2B所示,数据库系统在分区策略4的后面增加新的分区策略:分区策略5,分区策略5的字段为“政治”,分区策略5为非基准分区策略,更新后的分区策略集合如图3B所示。
S302、在每个存储节点中建立与新的非基准分区策略关联的索引表。
示例性的,参见图3B,数据库系统在存储节点0~存储节点3中分别建立1个索引表5,索引表5与分区策略5关联。
S303、暂停数据记录的入库。
具体的,本实施例需要对数据库系统中的历史数据重新进行分区处理,外部的数据记录对历史数据造成影响,在对历史数据重新进行分区处理的过程中暂停数据记录的入库。
需要说明的是,在分区策略集合中新增非基准分区策略后,不需要对数据库的历史数据进行分区处理的情况下,在新增的非基准分区策略生效后,参见S201~S203的方法对待存入数据库系统的数据记录进行分区处理。其中,可以为分区策略集合中的每个分区策略设置状态标志位,根据不同的值来表示分区策略的部署状态和启动状态,部署状态表示需要对数据库的历史数据进行分区处理,启动状态表示不需要对历史数据进行分区处理,只需要对后续入库的数据记录进行分区处理。
S304、根据多个存储节点包括的原始数据表得到数据库系统的历史数据。
具体的,历史数据表示数据库系统中已存储的数据记录,原始数据表中存储的数据记录是根据基准分区策略进行分区处理得到的,数据库系统中所有存储节点上原始数据表中的数据记录进行合并后为完整的历史数据。
示例性的,数据库系统中历史数据如图2B所示,数据库系统中包括存储节点0~3,存储节点0~3上的原始数据表1中存放的数据记录进行合并后即为数据库系统的历史数据。
S305、根据新的非基准分区策略对历史数据进行分区处理。
具体的,将历史数据中每个数据记录根据新的非基准分区策略进行分区处理,对于任意一个数据记录,分区处理的过程为:根据新的非基准分区策略确定数据记录的存储节点,判断存储节点中是否已存在该数据记录,若为是,获取已存在的数据记录的存储位置信息,将存储位置信息存放到确定的存储节点的与新的非基准分区策略关联的索引表中。若存储节点中不存在该数据记录,将数据记录存放在确定的存储节点的与新的非基准分区策略关联的索引表中。需要说明的是,各个存储节点之间可以并行的根据非基准分区策略对原始数据表中的数据记录进行分区处理,以提高分区处理的效率。
以存储节点0为例进行说明,数据库系统获取存储节点0中原始数据表1中的数据记录,根据分区策略5对原始数据表1中的每个数据记录进行分区处理,对于任意一个数据记录,分区处理的过程包括:根据分区策略5确定数据记录的存储节点,假设确定的存储节点为存储节点2,判断存储节点2中是否已存在该数据记录,若为是,获取存储节点2中已存在的数据记录的存储位置信息,将存储位置信息存放至存储节点2的索引表5中;若存储节点2中不存在该数据记录,将该数据记录存放至存储节点2的索引表5中。存储节点1~存储节点3包括的原始数据表1的分区处理过程参照上述的描述,此处不再赘述。示例性的,新增分区策略5后存储节点0~3中数据的分区情况如图3B所示,为了便于理解,用序号表示数据记录本身,用“&+序号”表示数据记录的存储位置信息,例如:原始数据表1(1,2),表示原始数据表1中存储的是数据记录1和数据记录2,索引表2(&1,8)表示索引表2中存储的是数据记录1的存储位置信息和数据记录8。
需要说明的是,在数据库系统中历史数据根据新的非基准分区策略完成分区处理的情况下,开启数据记录的入库,后续入库的数据记录根据更新的分区策略集合进行分区处理,具体过程可参照S201~S203的描述,此处不再赘述。
实施上述实施例,在分区策略集合中增加新的非基准分区策略的情况下,根据新的非基准分区策略对所有原始数据表中的历史数据重新进行分区处理,这样能根据需要增加新的非基准分区策略,具有很好的灵活性。
参见图4A,为本发明实施例的一种分区策略集合的更新方法的流程示意图,在本发明实施例中,所述方法包括:
S401、修改分区策略集合中的基准分区策略。
具体的,分区策略集合的数据结构包括但不限于数据表、队列、数组、堆栈或其他数据结构。分区策略集合中分区策略具有特定的排列顺序,排在首个的分区策略可以为基准分区策略,数据库系统修改当前的分区策略集合中的基准分区策略。
示例性的,数据库系统配置的原来的分区策略集合如图2B所示,原来的分区策略依次为:分区策略1、分区策略2、分区策略3、分区策略4,分区策略1为基准分区策略,分区策略2~4为非基准分区策略,数据库系统将分区策略1更改为分区策略1`,如图4B所示,将基准分区策略的字段修改为“化学”。分区策略集合中其他分区策略保持不变。
S402、暂停数据记录的入库。
具体的,本实施例需要对数据库系统中的历史数据重新进行分区处理,为了避免后续入库的数据记录对历史数据造成影响,暂停外部的数据记录的入库,在完成对历史数据的分区处理后,再开启数据记录的入库。
需要说明的是,在分区策略集合中新增非基准分区策略,且不需要对数据库的历史数据进行分区处理的情况下,在新增的非基准分区策略生效后,参见S201~S203的方法对待存入数据库系统的数据记录进行分区处理。其中,可以为分区策略集合中的每个分区策略设置状态标志位,根据不同的值来表示分区策略的部署状态和启动状态,部署状态表示需要对数据库的历史数据进行分区处理,启动状态表示不需要对历史数据进行分区处理,只需要对后续入库的数据记录进行分区处理。
S403、根据修改后的基准分区策略确定原始数据表中每个数据记录的待迁移存储节点,在数据记录当前所在的存储节点和待迁移存储节点不一致的情况下,将数据记录迁移到待迁移存储节点的原始数据表中。
具体的,原始数据表中存储的数据记录时根据基准分区策略进行分区处理得到的,数据库系统中所有存储节点上原始数据表中数据记录为完整的历史数据。数据库系统可以并行的对各个存储节点中的原始数据表进行迁移处理。数据库系统根据修改后的基准分区策略确定原始数据表中每个数据记录的待迁移存储节点,当数据记录当前所在的存储节点和待迁移的存储节点不一致的情况下,将数据记录迁移到确定的待迁移存储节点;数据记录当前所在的存储节点和待迁移的存储节点一致的情况下,数据记录不执行迁移操作。
示例性的,以存储节点0进行说明,存储节点0的原始数据表1中存放的数据记录为:数据记录11、数据记录12、数据记录13、数据记录14,数据库系统根据基准分区策略1`确定原始数据表1中每个数据记录的待迁移存储节点,假设确定的结果为:数据记录11的待迁移存储节点为存储节点0,数据记录12的待迁移存储节点为存储节点1,数据记录13的待迁移存储节点为存储节点2,数据记录14的待迁移数据节点为数据节点0,从上述结果可以看出,原始数据表1中数据记录11和数据记录14当前所在的存储节点和待迁移存储节点一致,因此不需要执行迁移操作;数据记录12和数据记录13当前所在的存储节点和待迁移存储节点不一致,需要执行迁移操作。数据库系统中其他存储节点上原始数据表1的迁移操作可参照存储节点0的描述,此处不再赘述。
S404、在完成针对所有原始数据表中数据记录的迁移操作时,根据多个存储节点包括的原始数据表得到所述数据库系统的历史数据。
具体,迁移操作完成后,每个存储节点上原始数据表中存放的数据记录发生更新,根据多个存储节点上包括的原始数据表得到数据库系统的历史数据。例如,参见图2B所示,存储节点0~3中的原始数据表1中存储的数据记录进行合并得到数据库系统的历史数据。
S407、根据至少一个非基准分区策略依次对历史数据进行分区处理。
具体的,根据至少一个非基准分区策略的排列顺序依次对历史数据中的每个数据记录进行分区处理,具体过程可参照S203的描述,此处不再赘述。需要说明的是,数据库系统可采用并行的方式对每个存储节点进行分区处理。示例性的,修改基准分区策略1后数据库系统中数据记录的分区情况如图4B中的存储节点0~3所示,为了便于理解,用序号表示数据记录本身,用“&+序号”表示数据记录的存储位置信息,例如:原始数据表1(1,2),表示原始数据表1中存储的是数据记录1和数据记录2,索引表2(&1,8)表示索引表2中存储的是数据记录1的存储位置信息和数据记录8。
实施上述实施例,在更新分区策略集合中的基准分区策略的情况下,根据修改后的基准分区策略对所有原始数据表中的数据记录进行迁移,以及根据分区策略集合中的至少一个非基准分区策略对历史数据重新进行分区处理,这样能根据需要更新基准分区策略,具有很好的灵活性。
参见图5A,为本发明实施例提供一种分区策略集合的更新方法的流程示意图,在本发明实施例中,所述方法包括:
S501、修改分区策略集合中的非基准分区策略。
具体的,分区策略集合中分区策略具有特定的排列顺序,排在首个的分区策略为基准分区策略,后续的分区策略为非基准分区策略,数据库系统可以修改分区策略集合中最后一个非基准分区策略,其他分区策略保持不变。分区策略的修改操作实际包含分区策略的删除和分区策略的新增。
示例性的,数据库系统原来的分区策略集合如图2B所示,数据库系统将原来的分区策略集合中的分区策略4修改为分区策略4`,例如分区策略4`的字段为“学号”,更新后的分区策略如图5B所示。
S502、在每个存储节点中删除该非基准分区策略关联的索引表中的数据。
示例性的,数据库系统在每个存储节点中删除分区策略4关联的索引表中的数据。
S503、暂停数据记录的入库。
S504、根据所述多个存储节点包括的原始数据表得到所述数据库系统的历史数据。
具体过程参照S304的描述,此处不再赘述。
S505、根据修改后的非基准分区策略对所述历史数据进行所述分区处理。
具体过程参照S305的描述,此处不再赘述。
示例性的,修改非基准分区策略4后数据库系统中数据记录的分区情况如图5B中的存储节点0~3所示,为了便于理解,用序号表示数据记录本身,用“&+序号”表示数据记录的存储位置信息,例如:原始数据表1(1,2),表示原始数据表1中存储的是数据记录1和数据记录2本身,索引表2(&1,8)表示索引表2中存储的是数据记录1的存储位置信息和数据记录8本身。
实施上述实施例,在分区策略集合中修改非基准分区策略的情况下,根据修改后的非基准分区策略对所有原始数据表中的历史数据重新进行分区处理,这样能根据需要修改新的非基准分区策略,具有很好的灵活性。
参见图6,为本发明实施例提供的一种管理节点的结构示意图,在本发明实施例中,管理节点6应用于数据库系统,数据库系统包括管理节点6和多个存储节点,管理节点存储有有分区策略集合,分区策略集合中每个分区策略关联数据记录的一个字段,分区策略集合包括一个基准分区策略和至少一个非基准分区策略,每个存储节点包括一个原始数据表和至少一个索引表,每个存储节点包括的原始数据表与基准分区策略关联,每个存储节点包括的至少一个索引表的数量等于至少一个非基准分区策略的数量,每个索引表关联一个非基准分区策略。
管理节点6包括处理器601、存储器602和收发器603。收发器603用于与外部设备之间收发数据。管理节点6中的处理器601的数量可以是一个或多个。本发明的一些实施例中,处理器601、存储器602和收发器603可通过总线或其他方式连接。管理节点6可以用于执行图2所示的方法。关于本实施例涉及的术语的含义以及举例,可以参考图2A、图3A、图4A和图5A对应的实施例。此处不再赘述。
其中,处理器204可以为中央处理器(英文:central processing unit,缩写:CPU)。存储器208可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random access memory,缩写:RAM)。存储器208还可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器,HDD或SSD。
其中,存储器602中存储程序代码。处理器601用于调用存储器602中存储的程序代码,用于执行图2A、图3A、图4A和图5A对应的数据处理方法。
实施上述实施例,数据记录需要进入数据库系统的情况下,根据数据库系统设置的多个分区策略进行分区处理,在根据基准分区策略进行分区处理时存储节点的原始数据表中存放真实的数据记录,在根据非基准分区策略进行分区处理时,如果存储节点中已存在相同的数据记录的情况下,存储节点的索引表中只存放数据记录的索引信息,通过上述的分区处理过程,一个存储节点内只会保存一份数据记录,以减少数据的冗余。另外,一个存储节点包括的原始数据表和至少一个索引表在逻辑上为一张表,在对存储节点进行数据操作时,不需要进行跨表操作,有效提升数据操作效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (13)
1.一种数据处理方法,其特征在于,所述数据处理方法应用于数据库系统,所述数据库系统包括管理节点和多个存储节点,所述管理节点存储有分区策略集合,所述分区策略集合中每个分区策略关联数据记录的一个字段;所述分区策略集合包括一个基准分区策略和至少一个非基准分区策略,每个存储节点包括一个原始数据表和至少一个索引表;
所述数据处理方法包括:
所述管理节点接收待存入所述数据库系统的数据记录;
所述管理节点确定所述分区策略集合中的基准分区策略,根据所述基准分区策略关联的字段确定所述待存入所述数据库系统的数据记录的基准分区策略对应的存储节点,将所述待存入所述数据库系统的数据记录保存至所述基准分区策略对应的存储节点的原始数据表中;
所述管理节点根据所述分区策略集合中的每一个非基准分区策略依次对所述待存入所述数据库系统的数据记录进行分区处理,所述分区处理包括:根据所述至少一个非基准分区策略中的一个非基准分区策略关联的字段确定所述待存入所述数据库系统的数据记录的非基准分区策略对应的存储节点,若所述非基准分区策略对应的存储节点存有所述待存入所述数据库系统的数据记录,获取所述非基准分区策略对应的存储节点中所述待存入所述数据库系统的数据记录的存储位置信息,将所述存储位置信息保存至所述非基准分区策略对应的存储节点的对应所述非基准分区策略的索引表中;若所述非基准分区策略对应的存储节点中未存有所述待存入所述数据库系统的数据记录,将所述待存入所述数据库系统的数据记录保存至所述非基准分区策略对应的存储节点的对应所述非基准分区策略的索引表中。
2.如权利要求1所述的方法,其特征在于,所述根据所述基准分区策略关联的字段确定所述基准分区策略对应的存储节点包括:
获取所述基准分区策略关联的字段;
在所述数据记录查询所述基准分区策略关联的字段对应的值;
根据预设的哈希算法对查询到的值进行哈希运算;
根据所述哈希运算的结果确定所述基准分区策略对应的存储节点。
3.如权利要求1或2所述的方法,其特征在于,还包括:
所述管理节点接收多个数据查询请求,其中,所述多个数据查询请求的每个查询请求具有相同的查询条件,所述多个数据查询请求的每个查询条件包括至少两个字段和所述至少两个字段各自对应的值;
所述管理节点根据所述至少两个字段中的每个字段对应的分区策略和所述至少两个字段各自对应的值,确定存储有符合所述多个数据查询请求的数据记录的至少两个存储节点;
所述管理节点根据预设的比例将所述多个数据查询请求分流到所述至少两个存储节点上。
4.如权利要求1或2所述的方法,其特征在于,还包括:
所述管理节点在所述分区策略集合中增加新的非基准分区策略;
在每个存储节点中建立与所述新的非基准分区策略关联的索引表;
暂停数据记录的入库;
根据所述多个存储节点包括的原始数据表得到所述数据库系统的历史数据;
根据所述新的非基准分区策略对所述历史数据进行所述分区处理。
5.如权利要求1或2所述的方法,其特征在于,还包括:
所述管理节点修改所述分区策略集合中的基准分区策略;
暂停数据记录的入库;
根据修改后的基准分区策略确定原始数据表中每个数据记录的待迁移存储节点,在数据记录当前所在的存储节点和待迁移存储节点不一致的情况下,将数据记录迁移到待迁移存储节点的原始数据表中;
在完成针对所有原始数据表中数据记录的迁移操作时,根据所述多个存储节点包括的原始数据表得到所述数据库系统的历史数据;
根据所述至少一个非基准分区策略依次对所述历史数据进行所述分区处理。
6.如权利要求1或2所述的方法,其特征在于,还包括:
所述管理节点修改所述分区策略集合中非基准分区策略;
在每个存储节点删除该非基准分区策略关联的索引表中的数据;
暂停数据记录的入库;
根据所述多个存储节点包括的原始数据表得到所述数据库系统的历史数据;
根据修改后的非基准分区策略对所述历史数据进行所述分区处理。
7.一种管理节点,其特征在于,所述管理节点应用于数据库系统,所述数据库系统包括还包括多个存储节点,所述管理节点存储有分区策略集合,所述分区策略集合中每个分区策略关联数据记录的一个字段,所述分区策略集合包括一个基准分区策略和至少一个非基准分区策略,每个存储节点包括一个原始数据表和至少一个索引表,每个存储节点包括的至少一个索引表的数量等于所述至少一个非基准分区策略的数量;所述管理节点包括处理器和存储器,所述存储器中存储有程序代码,所述处理器调用所述程序代码用于执行以下操作:
所述管理节点接收待存入所述数据库系统的数据记录;
所述管理节点确定所述分区策略集合中的基准分区策略,根据所述基准分区策略关联的字段确定所述基准分区策略对应的存储节点,将所述待存入所述数据库系统的数据记录保存至所述基准分区策略对应的存储节点的原始数据表中;
所述管理节点根据所述分区策略集合中的每一个非基准分区策略依次对所述待存入所述数据库系统的数据记录进行分区处理,所述分区处理包括:根据所述至少一个非基准分区策略中的一个非基准分区策略关联的字段确定所述待存入所述数据库系统的数据记录的非基准分区策略对应的存储节点,若所述非基准分区策略对应的存储节点存有所述待存入所述数据库系统的数据记录,获取所述待存入所述数据库系统的数据记录在所述非基准分区策略对应的存储节点中的存储位置信息,将所述存储位置信息保存至所述非基准分区策略对应的存储节点的所述非基准分区策略的索引表中;若所述非基准分区策略对应的存储节点中未存有所述待存入所述数据库系统的数据记录,将所述待存入所述数据库系统的数据记录保存至所述非基准分区策略对应的存储节点的对应所述非基准分区策略的索引表中。
8.如权利要求7所述的管理节点,其特征在于,所述处理器执行所述根据所述基准分区策略关联的字段确定所述基准分区策略对应的存储节点包括:
获取所述基准分区策略关联的字段;
在所述数据记录查询所述基准分区策略关联的字段对应的值;
根据预设的哈希算法对查询到的值进行哈希运算;
根据所述哈希运算的结果确定所述基准分区策略对应的存储节点。
9.如权利要求7或8所述的管理节点,其特征在于,所述处理器还用于执行:
接收多个数据查询请求,其中,所述多个数据查询请求的每个查询请求具有相同的查询条件,所述多个数据查询请求的每个查询条件包括至少两个字段和所述至少两个字段各自对应的值;
根据所述至少两个字段中的每个字段对应的分区策略和所述至少两个字段各自对应的值,确定存储有符合所述多个数据查询请求的数据记录的至少两个存储节点;
根据预设的比例将所述多个数据查询请求分流到所述至少两个存储节点上。
10.如权利要求7或8所述的管理节点,其特征在于,所述处理器还用于执行:
在所述分区策略集合中增加新的非基准分区策略;
在每个存储节点中建立与所述新的非基准分区策略关联的索引表;
暂停数据记录的入库;
根据所述多个存储节点包括的原始数据表得到所述数据库系统的历史数据;
根据所述新的非基准分区策略对所述历史数据进行所述分区处理。
11.如权利要求7或8所述的管理节点,其特征在于,所述处理器还用于执行:
修改所述分区策略集合中的基准分区策略;
暂停数据记录的入库;
根据修改后的基准分区策略确定原始数据表中每个数据记录的待迁移存储节点,在数据记录当前所在的存储节点和待迁移存储节点不一致的情况下,将数据记录迁移到待迁移存储节点的原始数据表中;
在完成针对所有原始数据表中数据记录的迁移操作时,根据所述多个存储节点包括的原始数据表得到所述数据库系统的历史数据;
根据所述至少一个非基准分区策略依次对所述历史数据进行所述分区处理。
12.如权利要求7或8所述的管理节点,其特征在于,所述处理器还用于执行:
修改所述分区策略集合中非基准分区策略;
在每个存储节点删除该非基准分区策略关联的索引表中的数据;
暂停数据记录的入库;
根据所述多个存储节点包括的原始数据表得到所述数据库系统的历史数据;
根据修改后的非基准分区策略对所述历史数据进行所述分区处理。
13.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质存储有计算机程序,所述计算机程序被硬件执行时,能够实现权利要求1至6任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611265398.7A CN106682215B (zh) | 2016-12-30 | 2016-12-30 | 一种数据处理方法和管理节点 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611265398.7A CN106682215B (zh) | 2016-12-30 | 2016-12-30 | 一种数据处理方法和管理节点 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106682215A CN106682215A (zh) | 2017-05-17 |
CN106682215B true CN106682215B (zh) | 2020-04-28 |
Family
ID=58849793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611265398.7A Active CN106682215B (zh) | 2016-12-30 | 2016-12-30 | 一种数据处理方法和管理节点 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106682215B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107491360B (zh) * | 2017-07-21 | 2019-07-30 | 山东九州信泰信息科技股份有限公司 | 对数据表中记录进行分级别冗余存储的方法 |
CN107491361B (zh) * | 2017-07-21 | 2019-04-02 | 山东九州信泰信息科技股份有限公司 | 对数据表中列进行分级别冗余存储的方法 |
CN107562533B (zh) * | 2017-07-28 | 2021-08-06 | 创新先进技术有限公司 | 一种数据加载处理方法及装置 |
CN109918369B (zh) * | 2017-12-13 | 2024-01-23 | 金篆信科有限责任公司 | 数据存储方法及装置 |
CN110401681B (zh) * | 2018-04-20 | 2022-06-24 | 伊姆西Ip控股有限责任公司 | 用于数据传输、数据接收的方法以及电子设备 |
CN109634932B (zh) * | 2018-11-30 | 2021-03-23 | 北京瑞卓喜投科技发展有限公司 | 一种智能合约存储方法及存储系统 |
CN110032563B (zh) * | 2019-02-19 | 2023-08-22 | 北京奥星贝斯科技有限公司 | 一种失配值的处理方法、系统以及电子设备 |
CN112925792B (zh) * | 2021-03-26 | 2024-01-05 | 北京中经惠众科技有限公司 | 数据存储控制方法、装置、计算设备及介质 |
CN113362007A (zh) * | 2021-06-24 | 2021-09-07 | 北京天健源达科技股份有限公司 | 零库存记录的处理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101639835A (zh) * | 2008-07-30 | 2010-02-03 | 国际商业机器公司 | 多租户场景中应用数据库分区的方法和装置 |
CN101876983A (zh) * | 2009-04-30 | 2010-11-03 | 国际商业机器公司 | 数据库分区方法与系统 |
CN102968498A (zh) * | 2012-12-05 | 2013-03-13 | 华为技术有限公司 | 数据处理方法及装置 |
CN104871153A (zh) * | 2012-10-29 | 2015-08-26 | 华为技术有限公司 | 用于灵活的分布式大规模并行处理(mpp)数据库的系统和方法 |
US9842135B2 (en) * | 2014-03-10 | 2017-12-12 | Here Global B.V. | Methods, apparatuses and computer program products for performing index search optimization |
-
2016
- 2016-12-30 CN CN201611265398.7A patent/CN106682215B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101639835A (zh) * | 2008-07-30 | 2010-02-03 | 国际商业机器公司 | 多租户场景中应用数据库分区的方法和装置 |
CN101876983A (zh) * | 2009-04-30 | 2010-11-03 | 国际商业机器公司 | 数据库分区方法与系统 |
CN104871153A (zh) * | 2012-10-29 | 2015-08-26 | 华为技术有限公司 | 用于灵活的分布式大规模并行处理(mpp)数据库的系统和方法 |
CN102968498A (zh) * | 2012-12-05 | 2013-03-13 | 华为技术有限公司 | 数据处理方法及装置 |
US9842135B2 (en) * | 2014-03-10 | 2017-12-12 | Here Global B.V. | Methods, apparatuses and computer program products for performing index search optimization |
Also Published As
Publication number | Publication date |
---|---|
CN106682215A (zh) | 2017-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106682215B (zh) | 一种数据处理方法和管理节点 | |
US9575976B2 (en) | Methods and apparatuses to optimize updates in a file system based on birth time | |
JP6542909B2 (ja) | ファイル操作方法及び装置 | |
CN112287182B (zh) | 图数据存储、处理方法、装置及计算机存储介质 | |
WO2019062574A1 (zh) | 一种元数据查询方法及装置 | |
US11226905B2 (en) | System and method for mapping objects to regions | |
CN110147407B (zh) | 一种数据处理方法、装置及数据库管理服务器 | |
US9977804B2 (en) | Index updates using parallel and hybrid execution | |
US11809382B2 (en) | System and method for supporting versioned objects | |
CN111459885B (zh) | 一种数据的处理方法、装置、计算机设备和存储介质 | |
US11288274B1 (en) | System and method for storing data for, and providing, rapid database join functions and aggregation statistics | |
CN110427386B (zh) | 数据处理方法、装置及计算机存储介质 | |
CN110134335B (zh) | 一种基于键值对的rdf数据管理方法、装置及存储介质 | |
CN111857539B (zh) | 用于管理存储系统的方法、设备和计算机可读介质 | |
US20240061712A1 (en) | Method, apparatus, and system for creating training task on ai training platform, and medium | |
CN111984729A (zh) | 异构数据库数据同步方法、装置、介质和电子设备 | |
JP6951846B2 (ja) | 計算機システム及びタスクの割当方法 | |
CN104598652B (zh) | 一种数据库查询方法及装置 | |
CN110162395B (zh) | 一种内存分配的方法及装置 | |
CN110806942A (zh) | 数据处理的方法和装置 | |
WO2024041376A1 (zh) | 分布式图数据处理系统、方法、装置、设备及存储介质 | |
JP6189266B2 (ja) | データ処理装置、データ処理方法及びデータ処理プログラム | |
US10614055B2 (en) | Method and system for tree management of trees under multi-version concurrency control | |
CN113934361B (zh) | 用于管理存储系统的方法、设备和计算机程序产品 | |
CN111209304A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220207 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Patentee after: Huawei Cloud Computing Technology Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |