[发明专利]数据表分区方法、装置、计算机设备和存储介质在审
申请号: | 202110791910.6 | 申请日: | 2021-07-13 |
公开(公告)号: | CN113590613A | 公开(公告)日: | 2021-11-02 |
发明(设计)人: | 陈武;艾杰 | 申请(专利权)人: | 上海一谈网络科技有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/27 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 姜晓云 |
地址: | 201600 上海市松江区漕河*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据表 分区 方法 装置 计算机 设备 存储 介质 | ||
本申请涉及一种数据表分区方法、装置、计算机设备和存储介质。所述方法包括:获取待分区数据表的第一主键和分区键;根据所述第一主键和分区键生成第二主键,并根据所述第二主键创建分区表;将所述待分区数据表中的数据同步至分区表中;在同步完成后,锁定所述待分区数据表的第一主键,并通过所述第一主键替换所述第二主键后,删除所述待分区数据表。采用本方法整个过程中数据仅需要复制一次,提高了同步效率。
技术领域
本申请涉及数据技术领域,特别是涉及一种数据表分区方法、装置、计算机设备和存储介质。
背景技术
MSSQLSERVER是指微软的SQLServer数据库服务器,它是一个数据库平台,提供数据库的从服务器到终端的完整的解决方案,其中数据库服务器部分,是一个数据库管理系统,用于建立、使用和维护数据库。而在MSSQLSERVER中,表分区(PARTITION)是MSSQLserver数据库的一个组件,分区的过程是把数据按某种标准划分成区域存储在不同的文件组中,使用分区可以快速而有效地管理和访问数据子集,从而使大型表或索引更易于管理。
传统技术中,在MSSQL中将单标进行分区可以是先更换主键,例如可以通过onlineddl/开源gh-ost工具执行,添加唯一键因为原表和临时表需要有相同唯一键。然后删除唯一键,online执行,最后转为分区表,通过开源工具避免读写锁定。
然而,上述方法中需要进行多次复制操作,效率低下。
发明内容
基于此,有必要针对上述技术问题,提供一种仅需要复制一次,提高了同步效率的数据表分区方法、装置、计算机设备和存储介质。
一种数据表分区方法,所述方法包括:
获取待分区数据表的第一主键和分区键;
根据所述第一主键和分区键生成第二主键,并根据所述第二主键创建分区表;
将所述待分区数据表中的数据同步至分区表中;
在同步完成后,锁定所述待分区数据表的第一主键,并通过所述第一主键替换所述第二主键后,删除所述待分区数据表。
在其中一个实施例中,所述将所述待分区数据表中的数据同步至分区表中之后,还包括:
获取当前系统资源消耗情况;
根据所述当前系统资源消耗情况调整将所述待分区数据表中的数据同步至分区表的同步速率;或根据所述当前系统资源消耗情况暂停将所述待分区数据表中的数据同步至分区表中。
在其中一个实施例中,所述将所述待分区数据表中的数据同步至分区表中,还包括:
接收针对将所述待分区数据表中的数据同步至分区表的同步速率的第一调整指令,并根据所述第一调整指令调整将所述待分区数据表中的数据同步至分区表的同步速率;或
接收针对将所述待分区数据表中的数据同步至分区表的第二调整指令,并根据所述第二调整指令暂停将所述待分区数据表中的数据同步至分区表中。
在其中一个实施例中,所述将所述待分区数据表中的数据同步至分区表中之后,还包括:
记录将所述待分区数据表中的数据同步至分区表中当前同步位置。
在其中一个实施例中,所述在同步完成后,锁定所述待分区数据表的第一主键之前,还包括:
检验所述待分区数据表中的数据与所述分区表中的数据是否相同;
若所述待分区数据表中的数据与所述分区表中的数据相同,则继续在同步完成后,锁定所述待分区数据表的第一主键。
在其中一个实施例中,所述在同步完成后,锁定所述待分区数据表的第一主键之前,还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海一谈网络科技有限公司,未经上海一谈网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110791910.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:管棚施工方法
- 下一篇:一种车辆控制方法、装置及车辆