CN110858194A - 一种数据库扩容的方法和装置 - Google Patents
一种数据库扩容的方法和装置 Download PDFInfo
- Publication number
- CN110858194A CN110858194A CN201810936192.5A CN201810936192A CN110858194A CN 110858194 A CN110858194 A CN 110858194A CN 201810936192 A CN201810936192 A CN 201810936192A CN 110858194 A CN110858194 A CN 110858194A
- Authority
- CN
- China
- Prior art keywords
- database
- data
- rule
- expanded
- capacity
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据库扩容的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容;若需要对所述数据库进行扩容,则根据当前数据库分片规则建立至少一个新库表;根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中;其中,所述库表包括所述新库表。该方法在判定数据库需要扩容后,根据当前数据库分片规则增加新库表,并基于路由读写规则将数据写入到对应库表中,无需停机部署即可实现自动分库分表和数据迁移。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种数据库扩容的方法和装置。
背景技术
在开发企业级应用过程中,关系型数据库在大于一定数据量的情况下检索性能会急剧下降。当需要对海量数据进行操作时,如果将所有数据保存在一张数据表中,往往会超出数据表可以存储的阈值,另外,过多的并发请求访问同一个数据库时,数据库的响应也会变慢。现有技术中通过分库分表策略,将并发请求分发到不同的数据库以及数据表中,从而解决了大数据量和高并发所导致的数据库检索性能差和数据库响应慢的问题。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
(1)在实现分库分表过程中,每次增库增表均需要修改数据库文件,且需要停止服务器的运行并在服务器上重新部署应用,增加了线上业务系统的风险;
(2)增库增表后,原始库表的数据量较大,新库表的数据量较少,导致数据存储不均衡;
(3)在实现分库分表过程中,需人工进行数据迁移,耗费大量的人力成本,而且在数据迁移过程中还会影响数据的正确性。
发明内容
有鉴于此,本发明实施例提供一种数据库扩容的方法和装置,在判定数据库需要扩容后,根据当前数据库分片规则增加新库表,并基于路由读写规则将数据写入到对应库表中,无需停机部署即可实现自动分库分表和数据迁移。
为实现上述目的,根据本发明实施例的一个方面,提供了一种数据库扩容的方法。
本发明实施例的一种数据库扩容的方法,包括:获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容;若需要对所述数据库进行扩容,则根据当前数据库分片规则建立至少一个新库表;根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中;其中,所述库表包括所述新库表。
可选地,所述数据库监控信息包括下列至少一项:数据存储容量、连接利用率和单表数据量;所述扩容规则包括下列至少一项:当所述数据存储容量大于第一阈值时,需要对所述数据库进行扩容;当所述连接利用率大于第二阈值时,需要对所述数据库进行扩容;以及当所述单表数据量大于第三阈值时,需要对所述数据库进行扩容。
可选地,数据库分片规则中设置有扩容后的数据库和数据表的数量;所述根据当前数据库分片规则建立至少一个新库表,包括:根据所述数据库的数量、所述数据库中数据表的数量,以及当前数据库分片规则中设置的扩容后的数据库和数据表的数量,新建对应数量的数据库和数据表。
可选地,所述根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中,包括:根据预设的路由读写规则,确定所述数据库的每条数据所归属的库表;对原始库表中的原始数据进行过滤,将过滤得到的数据写入归属的所述新库表中,记录当前过滤开始时间;判断所述原始数据是否过滤完成,如果未过滤完成,则根据所述当前过滤开始时间和过滤间隔确定下一次过滤开始时间,以继续进行下一次过滤,直至所述原始数据全部过滤完成;将所述新增数据写入到归属的所述库表中。
可选地,所述路由读写规则基于下述任意一种算法得到:环状哈希算法、散列算法和取模算法。
可选地,所述方法还包括:判断是否扩容成功,如果扩容成功,则更新所述扩容规则。
为实现上述目的,根据本发明实施例的另一方面,提供了一种数据库扩容的装置。
本发明实施例的一种数据库扩容的装置,包括:判定模块,用于获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容;建立模块,用于若需要对所述数据库进行扩容,则根据当前数据库分片规则建立至少一个新库表;写入模块,用于根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中;其中,所述库表包括所述新库表。
可选地,所述数据库监控信息包括下列至少一项:数据存储容量、连接利用率和单表数据量;所述扩容规则包括下列至少一项:当所述数据存储容量大于第一阈值时,需要对所述数据库进行扩容;当所述连接利用率大于第二阈值时,需要对所述数据库进行扩容;以及当所述单表数据量大于第三阈值时,需要对所述数据库进行扩容。
可选地,数据库分片规则中设置有扩容后的数据库和数据表的数量;所述建立模块,还用于:根据所述数据库的数量、所述数据库中数据表的数量,以及当前数据库分片规则中设置的扩容后的数据库和数据表的数量,新建对应数量的数据库和数据表。
可选地,所述写入模块,还用于:根据预设的路由读写规则,确定所述数据库的每条数据所归属的库表;对原始库表中的原始数据进行过滤,将过滤得到的数据写入归属的所述新库表中,记录当前过滤开始时间;判断所述原始数据是否过滤完成,如果未过滤完成,则根据所述当前过滤开始时间和过滤间隔确定下一次过滤开始时间,以继续进行下一次过滤,直至所述原始数据全部过滤完成;以及将所述新增数据写入到归属的所述库表中。
可选地,所述路由读写规则基于下述任意一种算法得到:环状哈希算法、散列算法和取模算法。
可选地,所述装置还包括:更新模块,用于判断是否扩容成功,如果扩容成功,则更新所述扩容规则。
为实现上述目的,根据本发明实施例的再一方面,提供了一种电子设备。
本发明实施例的一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的一种数据库扩容的方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读介质。
本发明实施例的一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的一种数据库扩容的方法。
上述发明中的一个实施例具有如下优点或有益效果:在判定数据库需要扩容后,根据当前数据库分片规则增加新库表,并基于路由读写规则将数据写入到对应库表中,无需停机部署即可实现自动分库分表和数据迁移;根据业务需求预先配置扩容规则所包含的内容,在数据库监控信息满足所述扩容规则后触发扩容处理过程,以实现自动扩容;根据当前数据库分片规则中设置的数据库和数据表的数量、以及当前业务系统对应的数据库数量和数据表数量新建数据库和数据表,实现了自动增库增表;基于路由读写规则,确定所述数据库的每条数据所归属的库表,根据确定的库表进行过滤复制实现自动数据迁移;通过环状哈希算法实现路由读写规则,能够保证数据均衡分配到每个库表中;通过更新扩容规则,以正确、方地便判定扩容后的数据库是否需要再次进行扩容处理。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的数据库扩容的方法的主要步骤的示意图;
图2是根据本发明实施例的数据库扩容的方法的主要流程示意图;
图3是本发明实施例的由四库四表裂变为四库八表的裂变前结果示意图;
图4是本发明实施例的由四库四表裂变为四库八表的裂变后结果示意图;
图5为本发明实施例的由四库四表裂变为八库八表的裂变后结果示意图;
图6是本发明实施例的将数据库的原始数据和新增数据写入到对应的库表的主要步骤示意图;
图7为本发明实施例的将从数据表中的数据写入新库表的实现原理示意图;
图8是本发明实施例的数据库扩容的装置的主要模块的示意图;
图9是本发明实施例的数据库扩容系统的主要模块的示意图;
图10本发明实施例可以应用于其中的示例性系统架构图;
图11是适用于来实现本发明实施例的电子设备的计算机装置的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的数据库扩容的方法的主要步骤的示意图。如图1所示,本发明实施例的数据库扩容的方法,主要包括如下步骤:
步骤S101:获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容。其中,所述数据库监控信息包括下列至少一项:数据存储容量、连接利用率和单表数据量;所述扩容规则包括下列至少一项:当所述数据存储容量大于第一阈值时,需要对所述数据库进行扩容;当所述连接利用率大于第二阈值时,需要对所述数据库进行扩容;以及当所述单表数据量大于第三阈值时,需要对所述数据库进行扩容。当数据库监控信息满足上述任一项扩容规则后触发步骤S102的扩容处理过程。
步骤S102:若需要对所述数据库进行扩容,则根据当前数据库分片规则建立至少一个新库表。所述当前数据库分片规则设置有扩容后的数据库的数量和数据表的数量。根据所述数据库的数量、所述数据库中数据表的数量,以及当前数据库分片规则中设置的扩容后的数据库的数量和数据表的数量,新建对应数量的数据库和数据表。比如,假设原来是两库两表,当前数据库分片规则中需要扩容为两库四表,则新建两个数据表;假设原来是两库两表,当前数据库分片规则中需要扩容为四库四表,则新建两个数据库和两个数据表。
步骤S103:根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中;其中,所述库表包括所述新库表。所述路由读写规则基于下述任意一种算法得到:环状哈希算法、散列算法和取模算法。具体写入过程为:根据预设的路由读写规则,确定所述数据库的每条数据所归属的库表;对原始库表中的原始数据进行过滤,将过滤得到的数据写入归属的所述新库表中,记录当前过滤开始时间;判断所述原始数据是否过滤完成,如果未过滤完成,则根据所述当前过滤开始时间和过滤间隔确定下一次过滤开始时间,以继续进行下一次过滤,直至所述原始数据全部过滤完成;将所述新增数据写入到归属的所述库表中。记录当前过滤开始时间能够保证数据迁移过程中的正确性。
图2是根据本发明实施例的数据库扩容的方法的主要流程示意图。如图2所示,本发明实施例的数据库扩容的方法,主要包括如下步骤:
步骤S201:将数据库信息和业务系统信息存储到管理控制平台,并在所述管理控制平台配置扩容规则和数据库分片规则。其中,数据库信息包括域名、端口号、用户名和密码。所述业务系统信息包括业务系统基础信息和配置信息,所述业务系统基础信息包括业务系统标识(比如全局唯一的英文名)、中文名、隶属部门、研发负责人、联系电话、邮箱和项目组成员列表;所述配置信息用于配置数据库和数据表,包括业务系统标识(比如全局唯一的英文名)、域名、用户名和密码。所述数据库分片规则中设置有扩容后的数据库的数量和数据表的数量。
所述扩容规则包括下列至少一项:当所述数据存储容量大于第一阈值时,需要对所述数据库进行扩容;当所述连接利用率大于第二阈值时,需要对所述数据库进行扩容;以及当所述单表数据量大于第三阈值时,需要对所述数据库进行扩容。其中,所述第一阈值可以是数据最大存储容量乘以预设第一比例,比如数据最大存储容量为10G,第一比例为80%,则第一阈值为8G;所述第二阈值可以是最大连接数或者当前连接数乘以预设第二比例,比如最大连接数为100,第二比例为80%,则第二阈值为80;所述第三阈值可以是单表最大数据量乘以预设第三比例,比如单表最大数据量为500W条数据,第三比例为80%,则第三阈值为400W条数据。其中,第一比例、第二比例和第三比例根据实际需求确定,三者可以相同,可以不同。
步骤S202:所述管理控制平台将所述数据库信息和所述数据库分片规则同步至数据注册中心,将所述数据库信息和所述扩容规则同步至数据监控中心。实施例中,业务系统从配置节点中获取配置信息,以将所述配置信息存储至数据注册中心。业务系统监听所述配置信息,如果所述配置信息发生修改,则将修改后的配置信息存储至数据注册中心。其中,所述配置节点可使用Zookeeper(是一种分布式的,开放源码的分布式应用程序协调服务)、Etcd(是一个分布式的键值存储系统)等实现,所述配置信息包括数据库信息和数据库分片规则。
配置信息修改后,配置节点会将最新的配置信息同步到配置中心。每次业务系统的应用会监听配置中心的通知,当监听发生变化后,会将修改后的配置信息同步到本地缓存,达到不重启就可以刷新配置信息的目的,进而可以动态增减数据库和修改数据库分片规则。
步骤S203:启动业务系统的应用,以从所述数据注册中心获取所述业务系统对应的数据库信息和数据库分片规则。应用启动后,需判断获取的数据库信息和数据库分片规则是否正确,即判断应用启动是否有异常,是否能够正常访问数据库,如果应用启动正常且能够正常访问数据库,则说明获取的数据正确。在一优选的实施例中,在应用刚部署到业务系统时,业务系统需从数据注册中心拉取配置信息。
步骤S204:所述管理控制平台通过所述数据监控中心监控数据库。数据监控中心按照管理控制平台中设置的第一至第三阈值,分别监控数据库的数据存储容量、连接利用率和单表数据量,将监控得到的数据库监控信息反馈至管理控制平台。数据监控中心监控的内容不限于上述三种,具体监控内容由用户确定,比如还可以监控数据库性能、服务器性能等。
步骤S205:所述管理控制平台根据监控得到的数据库监控信息和所述扩容规则,判定是否需要对所述数据库进行扩容,如果不需要,则执行步骤S204;如果需要,则执行步骤S206。当数据库的数据存储容量大于第一阈值,或者连接利用率大于第二阈值,或者单表数据量大于第三阈值时,说明需要对所述数据库进行扩容。
步骤S206:所述管理控制平台暂停对所述数据库的监控,根据新数据库分片规则建立至少一个新库表。其中,所述新数据库分片规则即当前数据库分片规则,需从配置信息中获取。所述根据当前数据库分片规则建立至少一个新库表,包括:根据所述数据库的数量、所述数据库中数据表的数量,以及当前数据库分片规则中设置的扩容后的数据库的数量和数据表的数量,新建对应数量的数据库和数据表。比如,假设原来是两库两表,扩容后为两库四表,则需要新建两个数据表;假设原来是两库两表,扩容后为四库四表,则需要新建两个数据库和两个数据表。
所述新数据库分片规则中涉及三种裂变方式:数据表的裂变、数据库库的裂变以及库表均发生裂变。其中,裂变是指数据从一个源头分流至多个源头。所述数据表的裂变适用于数据量大,且数据并发量能够满足当前业务场景的情况;所述数据库库的裂变适用于数据并发量不能够满足当前业务场景的情况;所述库表均发生裂变适用于数据量大,且数据并发量不能够满足当前业务场景的情况。具体采用哪种方式进行裂变需根据数据量和数据并发量来确定,裂变产生的数据库和数据表的数量可以根据业务需求自行定义。
所述数据量大是指当前数据量大于预设第三阈值,比如第三阈值为500W条数据,如果当前数据量大于500W条数据,则进行数据表的裂变。图3和图4分别为本发明实施例的由四库四表裂变为四库八表的裂变前后结果。如图3所示,裂变前的四个数据库分别为DB1-DB4,每个数据库有四个数据表分别为Tb0-Tb3。数据表的裂变后,如图4所示,数据库不变,每个数据库有八个数据表分别为Tb0-Tb7。
所述数据并发量能够满足当前业务场景是指当前数据并发量(对应于连接利用率)大于第二阈值,比如第二阈值为500,如果当前数据并发量大于500,则进行数据库的裂变。图5为本发明实施例的由四库四表裂变为八库八表的裂变后结果。裂变前的四库四表仍旧如图3所示,包括DB1-DB4共四个数据库、每个数据库有Tb0-Tb3共四个数据表。数据库的裂变后,如图5所示,数据库增加四个,即共八个数据库分别为DB1-DB8,每个数据库有Tb0-Tb3共四个数据表。
步骤S207:所述管理控制平台根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中。其中,所述库表包括原始库表和所述新库表。下面以路由读写规则基于环状哈希算法得到为例进行说明。所述环状哈希算法的实现原理为:通过哈希函数计算原始数据、新增数据和数据库的键值(Key),将原始数据和新增数据的Key以及数据库的Key分别映射到一个2^32的环上;之后从原始数据和新增数据的Key在环上的位置顺时针查找,把该Key存储到第一个数据库上。上述算法将数据库按顺时针方向均匀的分布在这个环上,原始数据和新增数据的Key将会归属于该环上的某个数据库。该算法的核心代码如下:
步骤S208:所述管理控制平台判断是否扩容成功,如果否,则执行步骤S209;如果是,则执行步骤S211。管理控制平台在扩容过程中会记录可回滚时间点,如果扩容未成功,可通过回滚机制,将所述数据库的原始数据恢复到可回滚时间点,以重新进行扩容。
步骤S209:所述管理控制平台通过回滚机制,将所述数据库的原始数据恢复到可回滚时间点,执行步骤S210。
步骤S210:所述管理控制平台将所述回滚时间点对应的原始数据重新写入到对应的新库表中,执行步骤S208。
步骤S211:所述管理控制平台更新所述扩容规则得到新扩容规则,将所述新数据库分片规则同步至所述数据注册中心,将所述新扩容规则同步至所述数据监控中心。经过扩容处理后,数据库的数据存储容量和/或最大连接值会增加,因此需更新扩容规则中的第一阈值和/或第二阈值。
步骤S212:所述业务系统从所述数据注册中心中拉取所述新数据分片规则,以根据所述新数据分片规则向扩容后的所述数据库发起访问。通过上述处理完成了数据的自动监控、自动扩容、自动数据迁移、无需重新部署应用,降低了维护成本,提升了研发效率和业务处理能力。
图6是本发明实施例的将数据库的原始数据和新增数据写入到对应的库表的主要步骤示意图。如图6所示,步骤S207包括:
步骤S601:根据预设的路由读写规则,确定所述数据库的每条数据所归属的库表。以一个主数据表、两个从数据表的MySQL(是一种开放源代码的关系型数据库管理系统)数据库为例,将主数据表的其中一个从数据表进行下线处理,对所述下线后的从数据表按照路由读写规则,确定该从数据表中每条数据所归属的库表。
步骤S602:对原始库表中的原始数据进行过滤,将过滤得到的数据写入归属的所述新库表中,记录当前过滤开始时间。根据确定好的库表,从从数据表中过滤出相应的数据并复制到新库表中,并删除从数据表中原来的数据,以保持数据的一致性。
图7为本发明实施例的将从数据表中的数据写入新库表的实现原理示意图。如图7所示,假设有两个数据库DB0和DB1,DB0中有主数据表Tb00和Tb01,主数据表Tb00有两个从数据表Tb0,主数据表Tb01有两个从数据表Tb1;DB1中有主数据表Tb00和Tb01,主数据表Tb00有两个从数据表Tb0,主数据表Tb01有两个从数据表Tb1。根据业务需求需要将两库两表扩充为两库四表,即将DB0扩充为四个数据表Tb0、Tb1、Tb2、Tb3;将DB1扩充为四个数据表Tb0、Tb1、Tb2、Tb3。将每个主数据表的其中一个从数据表进行下线处理后,将该从数据表的数据过滤复制到DB0和DB1的数据表中。
步骤S603:判断所述原始数据是否全部过滤完成,如果是,则结束本流程;如果不是,则根据所述当前过滤开始时间和过滤间隔确定下一次过滤开始时间,以继续进行下一次过滤,直至所述原始数据全部过滤完成。过滤完成时,所述库表中的数据与所述原始数据和新增数据相一致。实施例中,过滤完成后,将下线的从数据库表重新上线,并从对应的主数据表中同步数据。
步骤S604:将所述新增数据写入到归属的所述库表中。本实施例中步骤S604用于把新增数据写入到对应的库表,步骤S602至步骤S603用于把原始数据迁移到对应的新库表中,实施例中并不限定步骤S604的执行顺序,其可以在步骤S601与步骤S602之间执行。
假设业务系统的应用根据订单标识(orderId)将订单数据初始化到两库两表中,因业务发展的需要,需将库表扩展为两库四表。下面以环状哈希算法为例,对上例中如何将数据库的原始数据和新增数据写入到对应的库表的原理进行说明。
假设有16条订单数据,每条订单数据的末尾两位数编号分别为00、01、……、15,经环状哈希算法,将订单数据初始化到两库两表中所得到的分配结果如表1所示,将订单数据写入到两库四表中所得到的分配结果如表2所示(下述分配结果中每个订单数据平均分布,只是为了方便说明,实际分配结果经环状哈希算法即可得出)。
表1为两库两表的订单数据分配结果
库名 | 表名 | orderId |
DB0 | Table_00 | 00、04、08、12 |
DB0 | Table_01 | 01、05、09、13 |
DB1 | Table_00 | 02、06、10、14 |
DB1 | Table_01 | 03、07、11、15 |
表2为两库四表的订单数据分配结果
库名 | 表名 | orderId |
DB0 | Table_00 | 00、08 |
DB0 | Table_01 | 01、09 |
DB0 | Table_02 | 02、10 |
DB0 | Table_03 | 03、11 |
DB1 | Table_00 | 04、12 |
DB1 | Table_01 | 05、13 |
DB1 | Table_02 | 06、14 |
DB1 | Table_03 | 07、15 |
但是在将原始库表的原始数据全部迁移完成之前,会存在插入新数据的情况,此时插入的新数据会按照新数据库分片规则写入库表中。由于原始数据没有完全迁移至新库新表,读取的时候会从原始库表和新库表中读取。例如,订单标识为15的订单数据,按照两库两表的处理逻辑,该订单数据会被写入数据库1(DB1)的01表(Table_01)中,但分库分表后会被写入数据库1(DB1)的03表(Table_03)中。数据迁移过程中,插入新数据的订单数据分配结果如表3所示。
表3为插入新数据的订单数据分配结果
库名 | 表名 | orderId |
DB0 | Table_00 | 00、04、08、12 |
DB0 | Table_01 | 01、05、09、13 |
DB0 | Table_02 | |
DB0 | Table_03 | |
DB1 | Table_00 | 02、06、10、14 |
DB1 | Table_01 | 03、07、11、15 |
DB1 | Table_02 | |
DB1 | Table_03 | 15 |
在数据迁移过程中(即数据迁移尚未完成时),如果需要在数据库中查询数据,则查询原始数据库分片规则和新数据库分片规则对应的生成的库表。仍旧以订单标识为15的订单数据为例,在数据迁移过程中,需要查询DB1的Table_01和DB1的Table_03。
在数据迁移完成后,如果需要在数据库中查询数据,则查询新数据库分片规则对应的生成的库表即可。仍旧以订单标识为15的订单数据为例,在数据迁移完成后,仅需要查询DB1的Table_03。
通过本发明实施例的数据库扩容的方法可以看出,在判定数据库需要扩容后,根据当前数据库分片规则增加新库表,并基于路由读写规则将数据写入到对应库表中,无需停机部署即可实现自动分库分表和数据迁移;根据业务需求预先配置扩容规则所包含的内容,在数据库监控信息满足所述扩容规则后触发扩容处理过程,以实现自动扩容;根据当前数据库分片规则中设置的数据库和数据表的数量、以及当前业务系统对应的数据库数量和数据表数量新建数据库和数据表,实现了自动增库增表;基于路由读写规则,确定所述数据库的每条数据所归属的库表,根据确定的库表进行过滤复制实现自动数据迁移;通过环状哈希算法实现路由读写规则,能够保证数据均衡分配到每个库表中;通过更新扩容规则,以正确、方地便判定扩容后的数据库是否需要再次进行扩容处理。
图8是根据本发明实施例的数据库扩容的装置的主要模块的示意图。如图8所示,本发明实施例的数据库扩容的装置800,主要包括:
判定模块801,用于获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容。其中,所述数据库监控信息包括下列至少一项:数据存储容量、连接利用率和单表数据量;所述扩容规则包括下列至少一项:当所述数据存储容量大于第一阈值时,需要对所述数据库进行扩容;当所述连接利用率大于第二阈值时,需要对所述数据库进行扩容;以及当所述单表数据量大于第三阈值时,需要对所述数据库进行扩容。当数据库监控信息满足上述任一项扩容规则后触发建立模块802的扩容处理过程。
建立模块802,用于若需要对所述数据库进行扩容,则根据当前数据库分片规则建立至少一个新库表。所述当前数据库分片规则设置有当前扩容后的数据库的数量和数据表的数量。根据所述数据库的数量、所述数据库中数据表的数量,以及当前数据库分片规则中设置的扩容后的数据库的数量和数据表的数量,新建对应数量的数据库和数据表。比如,假设原来是两库两表,当前数据库分片规则中需要扩容为两库四表,则新建两个数据表;假设原来是两库两表,当前数据库分片规则中需要扩容为四库四表,则新建两个数据库和两个数据表。
写入模块803,用于根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中;其中,所述库表包括所述新库表。所述路由读写规则基于下述任意一种算法得到:环状哈希算法、散列算法和取模算法。具体写入过程为:根据预设的路由读写规则,确定所述数据库的每条数据所归属的库表;对原始库表中的原始数据进行过滤,将过滤得到的数据写入归属的所述新库表中,记录当前过滤开始时间;判断所述原始数据是否过滤完成,如果未过滤完成,则根据所述当前过滤开始时间和过滤间隔确定下一次过滤开始时间,以继续进行下一次过滤,直至所述原始数据全部过滤完成;将所述新增数据写入到归属的所述库表中。记录当前过滤开始时间能够保证数据迁移过程中的正确性。
另外,本发明实施例的数据库扩容的装置800还可以包括:更新模块(图8中未示出),该模块用于判断是否扩容成功,如果扩容成功,则更新所述扩容规则。
图9是本发明实施例的数据库扩容系统的主要模块的示意图。如图9所示,本发明实施例的数据库扩容系统900主要包括业务系统集群901、数据库集群902、数据注册中心903、管理控制平台904(即数据库扩容的装置800,具体实现功能如前所述)和数据监控中心905。
业务系统集群901包括至少一个业务系统,每个业务系统包括至少一个业务实例,每个业务实例分别接收配置节点的配置信息、路由读写规则,业务实例通过笛卡尔乘积算法进行内部SQL(Structured Query Language,结构化查询语言)流转,并通过数据引擎与数据库集群相连接。业务系统从配置节点中获取配置信息,将所述配置信息存储至数据注册中心。所述笛卡尔乘积算法是一种数学模型,用于将任意两个不相关的数据表连接起来。假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。
数据库集群902包括至少一个数据库,每个数据库中包括至少一个数据表。业务系统集群901和数据库集群902之间可以通过DDL(Data Definition Language,数据定义语言)和DML(Data Manipulation Language,数据操作语言)语言实现数据交互。
数据注册中心903用于接收来自管理控制平台904的数据库信息和数据库分片规则,以及用于将来自业务系统集群901的配置信息进行存储。所述数据库信息中包括业务系统标识。数据注册中心903和业务系统集群901之间通过订阅(Subscribe)和通知(Notify)的方式进行数据交互。
数据监控中心905用于监控数据库集群,并将获取的监控数据库信息反馈至管理控制平台904。监控的内容可以是数据库的数据存储容量、连接利用率、单表数据量、数据库性能、服务器性能等。数据监控中心905和数据库集群902之间通过监控(Monitor)和通知(Notify)的方式进行数据交互。
从以上描述可以看出,在判定数据库需要扩容后,根据当前数据库分片规则增加新库表,并基于路由读写规则将数据写入到对应库表中,无需停机部署即可实现自动分库分表和数据迁移;根据业务需求预先配置扩容规则所包含的内容,在数据库监控信息满足所述扩容规则后触发扩容处理过程,以实现自动扩容;根据当前数据库分片规则中设置的数据库和数据表的数量、以及当前业务系统对应的数据库数量和数据表数量新建数据库和数据表,实现了自动增库增表;基于路由读写规则,确定所述数据库的每条数据所归属的库表,根据确定的库表进行过滤复制实现自动数据迁移;通过环状哈希算法实现路由读写规则,能够保证数据均衡分配到每个库表中;通过更新扩容规则,以正确、方地便判定扩容后的数据库是否需要再次进行扩容处理。
图10示出了可以应用本发明实施例的数据库扩容的方法或数据库扩容的装置的示例性系统架构1000。
如图10所示,系统架构1000可以包括终端设备1001、1002、1003,网络1004和服务器1005。网络1004用以在终端设备1001、1002、1003和服务器1005之间提供通信链路的介质。网络1004可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备1001、1002、1003通过网络1004与服务器1005交互,以接收或发送消息等。终端设备1001、1002、1003上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备1001、1002、1003可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器1005可以是提供各种服务的服务器,例如对用户利用终端设备1001、1002、1003所浏览的购物类网站提供支持的后台管理服务器。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息)反馈给终端设备。
需要说明的是,本申请实施例所提供的数据库扩容的方法一般由服务器1005执行,相应地,数据库扩容的装置一般设置于服务器1005中。
应该理解,图10中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
根据本发明的实施例,本发明还提供了一种电子设备和一种计算机可读介质。
本发明的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的一种数据库扩容的方法。
本发明的计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的一种数据库扩容的方法。
下面参考图11,其示出了适用于来实现本发明实施例的电子设备的计算机系统1100的结构示意图。图11示出的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图11所示,计算机系统1100包括中央处理单元(CPU)1101,其可以根据存储在只读存储器(ROM)1102中的程序或者从存储部分1108加载到随机访问存储器(RAM)1103中的程序而执行各种适当的动作和处理。在RAM 1103中,还存储有计算机系统1100操作所需的各种程序和数据。CPU 1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
以下部件连接至I/O接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。
特别地,根据本发明公开的实施例,上文主要步骤图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行主要步骤图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被中央处理单元(CPU)1101执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括判定模块、建立模块和写入模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,判定模块还可以被描述为“获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容;若需要对所述数据库进行扩容,则根据当前数据库分片规则建立至少一个新库表;根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中;其中,所述库表包括所述新库表。
从以上描述可以看出,在判定数据库需要扩容后,根据当前数据库分片规则增加新库表,并基于路由读写规则将数据写入到对应库表中,无需停机部署即可实现自动分库分表和数据迁移;根据业务需求预先配置扩容规则所包含的内容,在数据库监控信息满足所述扩容规则后触发扩容处理过程,以实现自动扩容;根据当前数据库分片规则中设置的数据库和数据表的数量、以及当前业务系统对应的数据库数量和数据表数量新建数据库和数据表,实现了自动增库增表;基于路由读写规则,确定所述数据库的每条数据所归属的库表,根据确定的库表进行过滤复制实现自动数据迁移;通过环状哈希算法实现路由读写规则,能够保证数据均衡分配到每个库表中;通过更新扩容规则,以正确、方地便判定扩容后的数据库是否需要再次进行扩容处理。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (12)
1.一种数据库扩容的方法,其特征在于,包括:
获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容;
若需要对所述数据库进行扩容,则根据当前数据库分片规则建立至少一个新库表;
根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中;其中,所述库表包括所述新库表。
2.根据权利要求1所述的方法,其特征在于,所述数据库监控信息包括下列至少一项:数据存储容量、连接利用率和单表数据量;
所述扩容规则包括下列至少一项:当所述数据存储容量大于第一阈值时,需要对所述数据库进行扩容;当所述连接利用率大于第二阈值时,需要对所述数据库进行扩容;以及当所述单表数据量大于第三阈值时,需要对所述数据库进行扩容。
3.根据权利要求1所述的方法,其特征在于,数据库分片规则中设置有扩容后的数据库和数据表的数量;
所述根据当前数据库分片规则建立至少一个新库表,包括:根据所述数据库的数量、所述数据库中数据表的数量,以及当前数据库分片规则中设置的扩容后的数据库和数据表的数量,新建对应数量的数据库和数据表。
4.根据权利要求1所述的方法,其特征在于,所述根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中,包括:
根据预设的路由读写规则,确定所述数据库的每条数据所归属的库表;
对原始库表中的原始数据进行过滤,将过滤得到的数据写入归属的所述新库表中,记录当前过滤开始时间;
判断所述原始数据是否过滤完成,如果未过滤完成,则根据所述当前过滤开始时间和过滤间隔确定下一次过滤开始时间,以继续进行下一次过滤,直至所述原始数据全部过滤完成;
将所述新增数据写入到归属的所述库表中。
5.根据权利要求1至4的任一项所述的方法,其特征在于,所述方法还包括:判断是否扩容成功,如果扩容成功,则更新所述扩容规则。
6.一种数据库扩容的装置,其特征在于,包括:
判定模块,用于获取数据库监控信息,根据预先配置的扩容规则和所述数据库监控信息判定是否需要对所述数据库进行扩容;
建立模块,用于若需要对所述数据库进行扩容,则根据当前数据库分片规则建立至少一个新库表;
写入模块,用于根据预设的路由读写规则,将所述数据库的原始数据和新增数据分别写入到对应的库表中;其中,所述库表包括所述新库表。
7.根据权利要求6所述的装置,其特征在于,所述数据库监控信息包括下列至少一项:数据存储容量、连接利用率和单表数据量;
所述扩容规则包括下列至少一项:当所述数据存储容量大于第一阈值时,需要对所述数据库进行扩容;当所述连接利用率大于第二阈值时,需要对所述数据库进行扩容;以及当所述单表数据量大于第三阈值时,需要对所述数据库进行扩容。
8.根据权利要求6所述的装置,其特征在于,数据库分片规则中设置有扩容后的数据库和数据表的数量;
所述建立模块,还用于:根据所述数据库的数量、所述数据库中数据表的数量,以及当前数据库分片规则中设置的扩容后的数据库和数据表的数量,新建对应数量的数据库和数据表。
9.根据权利要求6所述的装置,其特征在于,所述写入模块,还用于:
根据预设的路由读写规则,确定所述数据库的每条数据所归属的库表;
对原始库表中的原始数据进行过滤,将过滤得到的数据写入归属的所述新库表中,记录当前过滤开始时间;
判断所述原始数据是否过滤完成,如果未过滤完成,则根据所述当前过滤开始时间和过滤间隔确定下一次过滤开始时间,以继续进行下一次过滤,直至所述原始数据全部过滤完成;以及
将所述新增数据写入到归属的所述库表中。
10.根据权利要求6至9的任一项所述的装置,其特征在于,所述装置还包括:更新模块,用于判断是否扩容成功,如果扩容成功,则更新所述扩容规则。
11.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。
12.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-5中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810936192.5A CN110858194A (zh) | 2018-08-16 | 2018-08-16 | 一种数据库扩容的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810936192.5A CN110858194A (zh) | 2018-08-16 | 2018-08-16 | 一种数据库扩容的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110858194A true CN110858194A (zh) | 2020-03-03 |
Family
ID=69634833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810936192.5A Pending CN110858194A (zh) | 2018-08-16 | 2018-08-16 | 一种数据库扩容的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110858194A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111797102A (zh) * | 2020-07-06 | 2020-10-20 | 亿度慧达教育科技(北京)有限公司 | 数据写入方法、装置和电子设备 |
CN111858765A (zh) * | 2020-07-24 | 2020-10-30 | 中国工商银行股份有限公司 | 应用于数据库扩容场景的数据处理方法、装置及系统 |
CN112784120A (zh) * | 2021-01-25 | 2021-05-11 | 浪潮云信息技术股份公司 | 一种基于范围分片方式的kv内存数据库存储管理方法 |
CN112965956A (zh) * | 2021-03-18 | 2021-06-15 | 上海东普信息科技有限公司 | 数据库水平扩容方法、装置、设备和存储介质 |
CN113239011A (zh) * | 2021-05-11 | 2021-08-10 | 京东数字科技控股股份有限公司 | 数据库的扩容方法、装置及系统 |
CN113407112A (zh) * | 2021-05-11 | 2021-09-17 | 浙江大华技术股份有限公司 | 扩容方法、电子设备及计算机可读存储介质 |
CN113448940A (zh) * | 2020-03-24 | 2021-09-28 | 北京京东振世信息技术有限公司 | 数据库扩容的方法和装置 |
CN115129687A (zh) * | 2022-03-16 | 2022-09-30 | 希望知舟技术(深圳)有限公司 | 基于异常工况数据库管理的方法、相关装置及介质和程序 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105955662A (zh) * | 2016-04-22 | 2016-09-21 | 浪潮(北京)电子信息产业有限公司 | 一种k-db数据表空间的扩容方法与系统 |
CN106294421A (zh) * | 2015-05-25 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 一种数据写入、读取方法及装置 |
CN106843745A (zh) * | 2015-12-03 | 2017-06-13 | 南京中兴新软件有限责任公司 | 容量扩展方法及装置 |
CN107357896A (zh) * | 2017-07-13 | 2017-11-17 | 北京小度信息科技有限公司 | 数据库集群的扩容方法、装置、系统和数据库集群系统 |
CN108132949A (zh) * | 2016-12-01 | 2018-06-08 | 腾讯科技(深圳)有限公司 | 数据库集群中数据迁移的方法及装置 |
-
2018
- 2018-08-16 CN CN201810936192.5A patent/CN110858194A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294421A (zh) * | 2015-05-25 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 一种数据写入、读取方法及装置 |
CN106843745A (zh) * | 2015-12-03 | 2017-06-13 | 南京中兴新软件有限责任公司 | 容量扩展方法及装置 |
CN105955662A (zh) * | 2016-04-22 | 2016-09-21 | 浪潮(北京)电子信息产业有限公司 | 一种k-db数据表空间的扩容方法与系统 |
CN108132949A (zh) * | 2016-12-01 | 2018-06-08 | 腾讯科技(深圳)有限公司 | 数据库集群中数据迁移的方法及装置 |
CN107357896A (zh) * | 2017-07-13 | 2017-11-17 | 北京小度信息科技有限公司 | 数据库集群的扩容方法、装置、系统和数据库集群系统 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113448940A (zh) * | 2020-03-24 | 2021-09-28 | 北京京东振世信息技术有限公司 | 数据库扩容的方法和装置 |
CN113448940B (zh) * | 2020-03-24 | 2023-09-22 | 北京京东振世信息技术有限公司 | 数据库扩容的方法和装置 |
CN111797102A (zh) * | 2020-07-06 | 2020-10-20 | 亿度慧达教育科技(北京)有限公司 | 数据写入方法、装置和电子设备 |
CN111858765A (zh) * | 2020-07-24 | 2020-10-30 | 中国工商银行股份有限公司 | 应用于数据库扩容场景的数据处理方法、装置及系统 |
CN112784120A (zh) * | 2021-01-25 | 2021-05-11 | 浪潮云信息技术股份公司 | 一种基于范围分片方式的kv内存数据库存储管理方法 |
CN112784120B (zh) * | 2021-01-25 | 2023-02-21 | 浪潮云信息技术股份公司 | 一种基于范围分片方式的kv内存数据库存储管理方法 |
CN112965956A (zh) * | 2021-03-18 | 2021-06-15 | 上海东普信息科技有限公司 | 数据库水平扩容方法、装置、设备和存储介质 |
CN113239011A (zh) * | 2021-05-11 | 2021-08-10 | 京东数字科技控股股份有限公司 | 数据库的扩容方法、装置及系统 |
CN113407112A (zh) * | 2021-05-11 | 2021-09-17 | 浙江大华技术股份有限公司 | 扩容方法、电子设备及计算机可读存储介质 |
CN115129687A (zh) * | 2022-03-16 | 2022-09-30 | 希望知舟技术(深圳)有限公司 | 基于异常工况数据库管理的方法、相关装置及介质和程序 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110858194A (zh) | 一种数据库扩容的方法和装置 | |
CN109189835B (zh) | 实时生成数据宽表的方法和装置 | |
CN109413127B (zh) | 一种数据同步方法和装置 | |
CN109947668B (zh) | 存储数据的方法和装置 | |
WO2019001017A1 (zh) | 集群间数据迁移方法、系统、服务器及计算机存储介质 | |
CN107977396B (zh) | 一种KeyValue数据库的数据表的更新方法与表数据更新装置 | |
CN107480205B (zh) | 一种进行数据分区的方法和装置 | |
CN112199427A (zh) | 一种数据处理方法和系统 | |
CN112925859A (zh) | 数据存储方法和装置 | |
CN111782235A (zh) | 一种数据升级、查询方法和装置 | |
CN112597126A (zh) | 一种数据迁移方法和装置 | |
CN112948498A (zh) | 一种分布式系统全局标识的生成方法和装置 | |
CN111753019A (zh) | 一种应用于数据仓库的数据分区方法和装置 | |
CN109299225A (zh) | 日志检索方法、系统、终端及计算机可读存储介质 | |
JP2021529379A (ja) | 検索サーバの集中型ストレージ | |
CN116775712A (zh) | 联表查询方法、装置、电子设备、分布式系统和存储介质 | |
CN112115206A (zh) | 一种处理对象存储元数据的方法和装置 | |
CN109144991B (zh) | 动态分表的方法、装置、电子设备和计算机可存储介质 | |
CN115630122A (zh) | 一种数据同步方法、装置、存储介质和计算机设备 | |
CN112100168A (zh) | 一种确定数据关联关系的方法和装置 | |
CN115185966A (zh) | 一种分布式集群中数据一致性的处理方法及装置 | |
US20180375788A1 (en) | Cloud Extensibility Framework | |
CN112073395B (zh) | 一种文件分发方法和装置 | |
CN111984686A (zh) | 一种数据处理的方法和装置 | |
CN107665241B (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 |