数据模型升级方法、装置、设备及可读存储介质制造方法及图纸

技术编号:20796676 阅读:35 留言:0更新日期:2019-04-06 10:19
本公开实施例提供数据模型升级方法、装置、设备及可读存储介质。数据模型升级方法包括:在执行业务操作的同时,检测服务器的当前数据模型状态,所述当前数据模型状态为未进行升级的老数据模型状态、处于升级过程的过程状态和完成升级过程的新数据模型状态之一;当检测到第一预设条件时,将当前数据模型状态处于老数据模型状态的服务器推送到过程状态;根据所述服务器的当前数据模型状态,利用与所述当前数据模型状态对应的数据模型针对所述业务操作进行数据处理,其中,当所述服务器的当前数据模型状态为过程状态时,按账号维度对账号的业务操作分别应用新数据模型和老数据模型之一,可以降低升级复杂度,以账号维度进行数据模型升级。

Data model upgrade methods, devices, devices and readable storage media

The present disclosure embodiment provides a data model upgrade method, device, device and readable storage medium. The data model upgrade method includes: detecting the current data model state of the server while performing business operations, the current data model state being one of the old data model state that has not been upgraded, the process state that is in the upgrade process and the new data model state that completes the upgrade process; when the first presupposition condition is detected, the current data model state is in the old number. According to the current data model state of the server, the data model corresponding to the current data model state is used to process the business operation. When the current data model state of the server is the process state, the new data model is applied to the business operation of the account according to the account dimension. One of the old data models can reduce the upgrade complexity and upgrade the data model with account dimension.

【技术实现步骤摘要】
数据模型升级方法、装置、设备及可读存储介质
本公开实施例涉及计算机
,尤其涉及数据模型升级方法、装置、设备及可读存储介质。
技术介绍
相关技术中,对于一套完整的分布式计算机应用系统,特别是类似金融安全、户账管理等以状态型数据为主的高可用系统,对底层数据模型进行变更都是一个存在极高风险的难题。以账务系统为例,用户的账户余额、状态实时变化,从DB层面来讲,该数据模型变更仅涉及一层关系映射表,变更非常简单。但是对于高可用性要求极高的分布式应用来讲,如何在用户无感知、业务无损的前提下进行记账数据模型的升级,则充满风险与挑战。如果应用服务器对新数据模型的理解不一致,导致用户前一笔操作使用老数据模型,后一笔操作使用新数据模型,则极有可能造成账务丢失等严重故障。面对此类问题,最普遍的解决方案是根据应用底层数据库的水平拆分维度,分批次对用户进行禁写。例如,根据应用路由禁止1%的用户在一段过程中的一切操作,之后进行数据模型升级。但是,禁写过程中对批次内用户业务有损,并且需要低峰期操作,人力成本投入大。而且,升级完成后,需要应用或sql核对来保证数据模型升级的完整性和正确性,这导致禁写时间较长,进本文档来自技高网...

【技术保护点】
1.一种数据模型升级方法,其特征在于,包括:在执行业务操作的同时,检测服务器的当前数据模型状态,所述当前数据模型状态为未进行升级的老数据模型状态、处于升级过程的过程状态和完成升级过程的新数据模型状态之一;当检测到第一预设条件时,将当前数据模型状态处于老数据模型状态的服务器推送到过程状态;根据所述服务器的当前数据模型状态,利用与所述当前数据模型状态对应的数据模型针对所述业务操作进行数据处理,其中,当所述服务器的当前数据模型状态为过程状态时,按账号维度对账号的业务操作分别应用新数据模型和老数据模型之一。

【技术特征摘要】
1.一种数据模型升级方法,其特征在于,包括:在执行业务操作的同时,检测服务器的当前数据模型状态,所述当前数据模型状态为未进行升级的老数据模型状态、处于升级过程的过程状态和完成升级过程的新数据模型状态之一;当检测到第一预设条件时,将当前数据模型状态处于老数据模型状态的服务器推送到过程状态;根据所述服务器的当前数据模型状态,利用与所述当前数据模型状态对应的数据模型针对所述业务操作进行数据处理,其中,当所述服务器的当前数据模型状态为过程状态时,按账号维度对账号的业务操作分别应用新数据模型和老数据模型之一。2.根据权利要求1所述的方法,其特征在于,所述根据所述服务器的当前数据模型状态,利用与所述当前数据模型状态对应的数据模型针对所述业务操作进行数据处理,其中,当所述服务器的当前数据模型状态为过程状态时,按账号维度对账号的业务操作分别应用新数据模型和老数据模型之一,包括:根据所述服务器的所述过程状态,针对账号是否已经完成升级、账号的业务操作涉及的数据类型以及账号的业务操作的操作类型中的至少之一,对所述账号的业务操作分别应用所述新数据模型和所述老数据模型之一。3.根据权利要求1或2所述的方法,其特征在于,所述根据所述服务器的当前数据模型状态,利用与所述当前数据模型状态对应的数据模型针对所述业务操作进行数据处理,其中,当所述服务器的当前数据模型状态为过程状态时,按账号维度对账号的业务操作分别应用新数据模型和老数据模型之一,还包括:根据所述服务器的所述过程状态,按照预设时间周期获取处于所述老数据模型的账号;对所述处于老数据模型的账号逐个锁定,依次使处于所述老数据模型的账号进入所述过程状态以升级到所述新数据模型。4.根据权利要求1所述的方法,其特征在于,还包括:当处于所述过程状态的服务器中的全部账号均为处于新数据模型的账号时,将处于所述过程状态的服务器推送到新数据模型状态。5.根据权利要求4所述的方法,其特征在于,还包括:建立记录有账号的账号表,其中,所述账号表包括区分账号的升级状态的升级标记字段,其中,升级标记字段将每一账号的升级状态标记为老数据模型状态、过程状态和新数据模型状态之一。6.根据权利要求5所述的方法,其特征在于,还包括:在将处于所述过程状态的服务器推送到新数据模型状态之前,当检测到第二预设条件时,根据升级标记字段对处于所述过程状态的服务器进行业务逻辑回滚。7.一种数据模型升级装置,其特征在于,...

【专利技术属性】
技术研发人员:马聪
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1