一种数据处理方法、装置、设备、介质及程序产品制造方法及图纸

技术编号:39280397 阅读:7 留言:0更新日期:2023-11-07 10:54
本申请实施例提供了一种数据处理方法、装置、设备、介质及程序产品,其中的方法包括:获取数据库系统中的第一原始表;获取第一原始表对应的镜像表,并将第一原始表中的数据移动至镜像表;按照重分配规则对镜像表中的数据重分配至数据库系统中的第二节点组;基于重分配后的镜像表生成第二原始表。采用本申请实施例能够实现在线重分配,确保数据库系统的可用性。确保数据库系统的可用性。确保数据库系统的可用性。

【技术实现步骤摘要】
一种数据处理方法、装置、设备、介质及程序产品


[0001]本申请涉及计算机
,具体涉及一种数据处理方法、一种数据处理装置、一种数据分析设备、一种计算机可读存储介质及一种计算机程序产品。

技术介绍

[0002]分布式数据存储是指将数据分散存储在数据库系统中的多个物理存储节点上的技术。
[0003]目前,数据库系统中的物理存储节点往往会发生变化;例如,为数据库系统增加新的物理存储节点,以扩展数据库系统的存储能力和计算能力,此时数据库系统中的物理存储节点的数量发生变化;再如,对数据库系统中的物理存储节点进行替换,以淘汰数据库系统中存在硬件问题(或其他问题)的物理存储节点;等等。
[0004]因此,如何将数据库系统中的数据重分配至发生变化后的物理存储节点,成为数据存储领域的研究热点。

技术实现思路

[0005]本申请实施例提供一种数据处理方法、装置、设备、介质及程序产品,能够实现在线重分配,确保数据库系统的可用性。
[0006]一方面,本申请实施例提供了一种数据处理方法,该方法包括:
[0007]获取数据库系统中的第一原始表;第一原始表用于存储数据库系统中的第一节点组中的数据;
[0008]获取第一原始表对应的镜像表,并将第一原始表中的数据移动至镜像表;
[0009]按照重分配规则对镜像表中的数据重分配至数据库系统中的第二节点组;其中,在重分配的过程中允许对第一原始表执行数据操作;
[0010]基于重分配后的镜像表生成第二原始表,第二原始表用于存储第二节点组中的数据。
[0011]另一方面,本申请实施例提供了一种数据处理装置,该装置包括:
[0012]获取单元,用于获取数据库系统中的第一原始表;第一原始表用于存储数据库系统中的第一节点组中的数据;
[0013]处理单元,用于获取第一原始表对应的镜像表,并将第一原始表中的数据移动至镜像表;
[0014]处理单元,还用于按照重分配规则对镜像表中的数据重分配至数据库系统中的第二节点组;其中,在重分配的过程中允许对第一原始表执行数据操作;
[0015]处理单元,还用于基于重分配后的镜像表生成第二原始表,第二原始表用于存储第二节点组中的数据。
[0016]在一种实现方式中,第一节点组和第二节点组之间的关系包括以下至少一种:第二节点组是对数据库系统中的第一节点组进行扩容得到的;或者,第二节点组是对数据库
系统中的第一节点组进行缩容得到的;或者,第二节点组是对数据库系统中的第一节点组进行节点变更得到的;
[0017]第一节点组和第二节点组不同,不同包括以下至少一种:第一节点组所包含节点数量和第二节点组所包含节点数量不同;或者,第一节点组所包含的物理存储节点与第二节点组所包含的物理存储节点全部或部分不同。
[0018]在一种实现方式中,处理单元,还用于:
[0019]对所述第一原始表进行重分配预置处理;
[0020]其中,重分配预置处理包括:将第一原始表设置为追加模式;追加模式指示在重分配的过程中,只允许采用追加数据的方式针对第一原始表执行数据操作;数据操作包括以下至少一种:删除操作、更新操作和新增操作;以及,
[0021]将第一原始表设置为在重分配的过程中不允许释放表空间;以及,
[0022]为第一原始表创建临时删除表;临时删除表用于记录重分配的过程中第一原始表中被执行数据操作的记录的元组键;记录是用于描述数据库系统中的事务的一行数据;元组键用于唯一标识记录。
[0023]在一种实现方式中,处理单元,还用于:
[0024]检测第一原始表中数据的数据量是否小于数据量阈值;
[0025]若数据量小于所述数据量阈值,则将第一原始表设置为锁定状态,并触发执行将第一原始表中的数据移动至镜像表的步骤;
[0026]其中,处于锁定状态的第一原始表不允许被执行数据操作。
[0027]在一种实现方式中,处理单元,还用于:
[0028]若数据量大于等于数据量阈值,则触发执行将第一原始表中的数据移动至镜像表,按照重分配规则对镜像表中的数据重分配至数据库系统中的第二节点组的步骤;
[0029]从第一原始表中删除被重分配至第二节点组中的数据;
[0030]检测被删除后的第一原始表中剩余数据的数据量是否小于数据量阈值;剩余数据是第一原始表在重分配的过程中被写入的数据;
[0031]若剩余数据的数据量大于等于数据量阈值,则将被删除后的第一原始表中剩余数据移动至镜像表;
[0032]从被删除后的第一原始表中删除被重分配至第二节点组中的数据;
[0033]迭代上述步骤,直至被删除后的第一原始表中剩余数据的数据量小于数据量阈值,并触发执行将所述第一原始表设置为锁定状态的步骤。
[0034]在一种实现方式中,处理单元,用于将第一原始表中的数据移动至镜像表;按照重分配规则对镜像表中的数据重分配至数据库系统中的第二节点组时,具体用于:
[0035]获取第一原始表对应的快照表;快照表用于备份第一原始表被执行快照操作时所包含的数据;
[0036]将快照表中的数据移动至镜像表,并按照重分配规则对镜像表中的数据重分配至数据库系统中的第二节点组。
[0037]在一种实现方式中,快照表被划分为多个分段,每个分段中包含至少一个记录,记录是用于描述数据库系统中的事务的一行数据;处理单元,用于将快照表中的数据移动至镜像表,并按照重分配规则对镜像表中的数据重分配至数据库系统中的第二节点组时,具
体用于:
[0038]对快照表进行扫描,将扫描到的快照表中的第i分段所包含的记录移动至镜像表;第i分段为多个分段中的任一分段;
[0039]按照重分配规则将第i分段中的记录重分配至第二节点组;重分配规则包括:平均分配规则或者事务类型规则;
[0040]重新扫描快照表中的第i+1分段,重复执行上述步骤,直至快照表中的每个分段均被扫描。
[0041]在一种实现方式中,处理单元,还用于:
[0042]获取第一原始表对应的临时删除表;临时删除表用于记录重分配的过程中第一原始表中被执行数据操作的记录的元组键;元组键用于唯一标识记录;
[0043]将镜像表和临时删除表进行融合处理,得到更新后的镜像表;更新后的镜像表中不包含临时删除表中的元组键所标识的记录;
[0044]处理单元,用于按照重分配规则将第i分段中的记录重分配至第二节点组时,具体用于:
[0045]按照重分配规则将更新后的镜像表中,第i分段中的记录重分配至第二节点组。
[0046]在一种实现方式中,处理单元,还用于:
[0047]清空第一原始表对应的临时删除表。
[0048]在一种实现方式中,数据处理方法应用于数据分析设备,数据分析设备与数据库系统对接;数据分析设备用于访问数据库系统中的数据;
[0049]数据分析设备通过控制数据库系统中第一节本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:获取数据库系统中的第一原始表;所述第一原始表用于存储所述数据库系统中的第一节点组中的数据;获取所述第一原始表对应的镜像表,并将所述第一原始表中的数据移动至所述镜像表;按照重分配规则对所述镜像表中的数据重分配至所述数据库系统中的第二节点组;其中,在重分配的过程中允许对所述第一原始表执行数据操作;基于重分配后的镜像表生成第二原始表,所述第二原始表用于存储所述第二节点组中的数据。2.如权利要求1所述的方法,其特征在于,所述第一节点组和所述第二节点组之间的关系包括以下至少一种:所述第二节点组是对所述数据库系统中的第一节点组进行扩容得到的;或者,所述第二节点组是对所述数据库系统中的第一节点组进行缩容得到的;或者,所述第二节点组是对所述数据库系统中的第一节点组进行节点变更得到的;所述第一节点组和所述第二节点组不同,所述不同包括以下至少一种:所述第一节点组所包含节点数量和所述第二节点组所包含节点数量不同;或者,所述第一节点组所包含的物理存储节点与所述第二节点组所包含的物理存储节点全部或部分不同。3.如权利要求1所述的方法,其特征在于,所述获取数据库系统中的第一原始表之后,还包括:对所述第一原始表进行重分配预置处理;其中,所述重分配预置处理包括:将所述第一原始表设置为追加模式;所述追加模式指示在重分配的过程中,只允许采用追加数据的方式针对所述第一原始表执行数据操作;所述数据操作包括以下至少一种:删除操作、更新操作和新增操作;以及,将所述第一原始表设置为在重分配的过程中不允许释放表空间;以及,为所述第一原始表创建临时删除表;所述临时删除表用于记录重分配的过程中所述第一原始表中被执行数据操作的记录的元组键;所述记录是用于描述所述数据库系统中的事务的一行数据;所述元组键用于唯一标识所述记录。4.如权利要求1所述的方法,其特征在于,所述将所述第一原始表中的数据移动至所述镜像表之前,还包括:检测所述第一原始表中数据的数据量是否小于数据量阈值;若所述数据量小于所述数据量阈值,则将所述第一原始表设置为锁定状态,并触发执行所述将所述第一原始表中的数据移动至所述镜像表的步骤;其中,处于锁定状态的所述第一原始表不允许被执行数据操作。5.如权利要求4所述的方法,其特征在于,所述方法还包括:若所述数据量大于等于所述数据量阈值,则触发执行所述将所述第一原始表中的数据移动至所述镜像表,按照重分配规则对所述镜像表中的数据重分配至所述数据库系统中的第二节点组的步骤;从所述第一原始表中删除被重分配至所述第二节点组中的数据;检测被删除后的所述第一原始表中剩余数据的数据量是否小于所述数据量阈值;所述剩余数据是所述第一原始表在重分配的过程中被写入的数据;
若所述剩余数据的数据量大于等于所述数据量阈值,则将被删除后的所述第一原始表中剩余数据移动至所述镜像表;从被删除后的所述第一原始表中删除被重分配至所述第二节点组中的数据;迭代上述步骤,直至被删除后的所述第一原始表中剩余数据的数据量小于所述数据量阈值,并触发执行所述将所述第一原始表设置为锁定状态的步骤。6.如权利要求1所述的方法,其特征在于,所述将所述第一原始表中的数据移动至所述镜像表;按照重分配规则对所述镜像表中的数据重分配至所述数据库系统中的第二节点组,包括:获取所述第一原始表对应的快照表;所述快照表用于备份所述第一原始表被执行快照操作时所包含的数据;将所述快照表中的数据移动至所述镜像表,并按照重分配规则对所述镜像表中的数据重分配至所述数据库系统中的第二节点组。7.如权利要求6所述的方法,其特征在于,所述快照表被划分为多个分段,每个分段中包含至少一个记录,所述记录是用于描述所述数据库系统中的事务的一行数据;所述将所述快照表中的数据移动至所述镜像表,并按照重分配规则对所述镜像表中的数据重分配至所述数据库系统中的第二节点组,包括:对所述快照表进行扫描,将扫描到的所述快照表中的第i分段所包含的记录移动至所述镜像表;所述第i分段为所述多个分段中的任一分段;按照重分配规则将所述第i分段中的记录重分配至所述第二节点组;所述重分配规则包括:平均分配规则或者事务类型规则;重新扫描所述快照表中的第i+1分段,重复执行上述步骤,直至所述快照表中的每个分段均被扫描。8.如权利要求7所述的方法,其特征在于,所述按照重分配规则将所述第i分段中的记录重分配至所述第二节点组之前,还包括:获取所述第一原始表对应的临时删除表;所述临时删除表用于记录重分配的过程中所述第一原始表中被执行数据操作的记录的元组键;所述元组键用于唯一标识所述记录;将所述镜像表和所述临时删除表进行融合处理,得到更新后的镜像表;更新后的所述镜像表中不包含所述临时删除表中的元组键所标识的记录;所述按照重分配规则将所述第i分段中的记录重分配至所述第二节点组,包括:按照重分配规则将更新后的所述镜像表中,所述第i分段中的记录重分配至所述第二节点组。9.如权利要求8所述的方法,其特征在于,所述方法还包括...

【专利技术属性】
技术研发人员:石志林
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1