WO2016078529A1 - 业务处理方法、装置及系统 - Google Patents

业务处理方法、装置及系统 Download PDF

Info

Publication number
WO2016078529A1
WO2016078529A1 PCT/CN2015/094314 CN2015094314W WO2016078529A1 WO 2016078529 A1 WO2016078529 A1 WO 2016078529A1 CN 2015094314 W CN2015094314 W CN 2015094314W WO 2016078529 A1 WO2016078529 A1 WO 2016078529A1
Authority
WO
WIPO (PCT)
Prior art keywords
database
data
service
time
service processing
Prior art date
Application number
PCT/CN2015/094314
Other languages
English (en)
French (fr)
Inventor
左正彬
Original Assignee
阿里巴巴集团控股有限公司
左正彬
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 阿里巴巴集团控股有限公司, 左正彬 filed Critical 阿里巴巴集团控股有限公司
Publication of WO2016078529A1 publication Critical patent/WO2016078529A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Definitions

  • the present application relates to the field of Internet technologies, and in particular, to a service processing method, apparatus, and system.
  • the prior art generally adopts a database backup scheme.
  • the system switches to the backup database, and the backup database takes over the primary database to continue to provide service data to the service system.
  • the solution has the following problem: It takes a certain time to switch from the primary database to the backup database, usually in about 5 minutes. During this period, the service system needs to stop processing the service, resulting in low service processing efficiency.
  • aspects of the present application provide a service processing method, apparatus, and system for solving the problem that a service system cannot perform normal service processing and improving service processing efficiency.
  • An aspect of the present application provides a service processing method, including:
  • the service data is read from the backup database in a readable state and/or the snapshot database in a readable state according to the service processing request, and the service processing is performed according to the service data;
  • the snapshot database is used to store the industry generated between the first time and the current time. Data, the first time is earlier than or equal to the second time, and the second time refers to a time of generation of the latest service data backed up from the primary database to the backup database.
  • Another aspect of the present application provides a service data storage method, including:
  • the snapshot database is configured to store service data generated between a first time and a current time, the first time is earlier than or equal to a second time, and the second time is backed up from the primary database to The moment when the latest business data of the backup database in a readable state is generated.
  • a service processing apparatus includes:
  • a receiving module configured to receive a service processing request
  • a reading module configured to read service data from a backup database in a readable state and/or a snapshot database in a readable state according to the service processing request when the primary database fails;
  • the snapshot database is configured to store service data generated between a first time and a current time, the first time is earlier than or equal to a second time, and the second time is backed up from the primary database to a time at which the latest business data of the backup database is generated;
  • the service processing module is configured to perform service processing according to the service data.
  • a service data storage device including:
  • a receiving module configured to receive a data storage instruction
  • a storage module configured to store, according to the data storage instruction, the current service data to be stored into a primary database and a snapshot database in a readable state;
  • the snapshot database is configured to store service data generated between the first time and the current time, the first time is earlier than or equal to the second time, and the second time is backed up from the primary database. The moment when the latest business data of the backup database in the readable state is generated.
  • a service processing system includes: a service processing device, a primary database, a backup database, and a snapshot database; wherein the backup database and the snapshot database are both configured to be in a readable state;
  • a service processing device configured to receive a service processing request, and, when the primary database fails, read service data from the backup database and/or the snapshot database according to the service processing request, according to the service data Conduct business processing;
  • the primary database is configured to store the service data
  • the backup database is configured to store business data backed up from the primary database
  • the snapshot database is configured to store business data generated between a first time instant and a current time, the first time being earlier than or equal to a second time, the second time being a backup from the primary database to the The time at which the latest business data of the backup database is generated.
  • the primary database is combined with the backup database and the snapshot database in a readable state, the business data in the primary database is backed up by the backup database, and the backup database is stored in the backup database from the primary database to the backup database.
  • the business data generated between the first time and the current time of the latest business data generation time, the part of the business data includes the business data in the primary database that has not been backed up to the backup database, so that when a service processing request arrives, If the primary database fails, you can wait for the backup database and the snapshot database to start. Instead, you can obtain all the data stored in the primary database directly from the backup database and the snapshot database to complete the complete replacement of the primary database and ensure that the service processing can be normal.
  • the problem is solved in the prior art that the service processing cannot be performed normally due to the startup delay of the backup database, and the service processing efficiency is improved.
  • FIG. 1 is a schematic flowchart of a service processing method according to an embodiment of the present application
  • FIG. 2 is a schematic flowchart of a service data storage method according to an embodiment of the present application.
  • FIG. 3 is a schematic structural diagram of a service processing apparatus according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic structural diagram of a service data storage apparatus according to an embodiment of the present disclosure.
  • FIG. 5 is a schematic structural diagram of a service processing system according to an embodiment of the present disclosure.
  • FIG. 6 is a schematic structural diagram of a service processing system according to another embodiment of the present disclosure.
  • FIG. 1 is a schematic flowchart diagram of a service processing method according to an embodiment of the present application. As shown in Figure 1, the method includes:
  • the service data is read from the backup database in a readable state and/or the snapshot database in a readable state, and the service processing is performed according to the service data; wherein the snapshot database is used for The service data generated between the first time and the current time is stored, the first time is earlier than the second time, and the second time is the time of generation of the latest service data from the primary database backup to the backup database.
  • This embodiment provides a service processing method, which can be executed by a service processing device.
  • the service processing device may be various business systems that need to use the business data stored in the database to conduct business, such as Taobao system, Alipay system, Tencent business system, and the like.
  • steps 1-3 generally take about 5 minutes. During this time, the business system needs to stop processing the business, resulting in low efficiency of business processing.
  • the embodiment provides an improved backup database, that is, a backup database in a readable state, that is, The backup database in this embodiment can be used not only for backing up business data in the primary database, but also in a readable state.
  • the backup database in the readable state provided by this embodiment, when the primary database fails and needs to be switched to the backup database, there is no need to wait for the startup of the backup database, and the backup database can be directly used (the use here mainly refers to directly from the backup database)
  • the service data is read in the middle, that is, the primary database can be directly switched to the backup database. There is no time delay. Therefore, the service processing can be continued in the process of switching between the active and standby databases without stopping the service processing.
  • the backup database in the readable state provided by the embodiment may be a read library in a read-write separation application, where the read library refers to only allowing data to be written during database synchronization, in other Only the database that reads data out is allowed in the application scenario.
  • the service data stored in the primary database and the backup database are not completely the same, but there are certain differences, for example, the service data stored in the backup database is larger than the main data.
  • the business data stored in the database may be less than 1 minute of data. It is worth noting that the difference between the business data stored in the primary database and the backup database will vary depending on the application scenario.
  • the embodiment further provides a new snapshot database, the snapshot database is in a readable state to overcome the startup delay problem, and is configured to store the service data generated between the first time and the current time.
  • the first moment here is earlier than or equal to the second moment, and the second moment is from The time at which the primary database is backed up to the latest business data in the backup database.
  • business data in the primary database that has not been backed up to the backup database can be obtained at the snapshot database.
  • snapshot database is actually a database, but the stored business data is relatively small.
  • the business data needs to be stored in the primary database and the snapshot database according to the data storage request.
  • the execution body that stores the business data in the primary database and the snapshot database may be a business processing device or another device different from the business processing device.
  • the execution subject storing the service data in the primary database and the snapshot database is an example of the service processing device.
  • the service processing device receives the data storage request according to the data.
  • the storage request stores the current service data to be stored in the primary database, and stores the service data to be stored in the snapshot database.
  • the snapshot database only needs to store the business data generated from the first moment to the current moment.
  • the primary database will also send the business data in the primary database to the backup database for backup according to the preset backup mechanism.
  • the data storage request can directly carry the service data to be stored, and the service processing device acquires the service data to be stored from the data storage request, and stores it in the primary database and the snapshot database.
  • the data storage request may carry path information of the service data to be stored, so that the service processing device may obtain the service data to be stored from the file indicated by the path information, and store the data in the primary database and the snapshot database.
  • the primary database will continue to back up the business data to the backup database without failure, which means that the second moment is constantly changing.
  • the first moment will also be based on the second moment. The change has changed.
  • the snapshot database to successfully store the business data generated from the first moment to the current time, the first moment needs to be determined.
  • the backup delay between the primary database and the backup database may be obtained in advance by using statistics or the like, and the backup delay refers to generating the service data in the primary database that has not been backed up to the backup database. Maximum time.
  • a length of time (referred to as a preset duration) may be preset, and the preset duration is greater than the backup delay, that is, greater than the backup in the primary database.
  • the maximum duration required for the business data in the database and then determining that the first moment is the moment from the current time by the preset duration. For example, in a service scenario, if the service data of the primary database and the backup database differs by up to about 1 minute, the backup delay can be set to 1 minute, and the preset duration is set to 5 minutes, that is, The snapshot database needs to store the current time and the business data generated within 5 minutes before the current time. This part of the business data includes the service data in the primary database that has not been backed up to the backup database for about 1 minute.
  • the service data in the snapshot database that has a time interval greater than the preset time (for example, 5 minutes) may be deleted in order to store the newly generated service data.
  • the snapshot database may be configured with a storage capacity corresponding to the service data generated within the preset duration, and a storage manner similar to “first in, first out” is adopted, so that when new service data arrives, the old service is used. The data is squeezed out so that the snapshot database always stores the business data whose generation time is less than or equal to the preset time.
  • the business data in the primary database is backed up by the backup database, and the snapshot database is stored in the primary database that has not been backed up to the backup database.
  • Part of the business data which is the business data generated at the moment from the first moment of the moment when the latest service data is backed up from the primary database to the backup database.
  • the service processing device may determine whether there is data in the snapshot database; if there is no data in the snapshot database, meaning that no new service data is generated from the first time to the current time, that is, meaning The business data in the backup database is consistent with the business data in the primary database, so the backup database can be used to take over the primary database, so the business data required for the business processing is read from the backup database according to the above business processing request; Medium With data, it means that new business data is generated from the first moment to the current time, which means that the business data in the backup database and the snapshot database are combined with the business data in the primary database. However, since the business data required for business processing may have various situations, the business data may be read from the snapshot database and/or the backup database according to the business processing request.
  • an implementation manner for determining whether there is data in the snapshot database includes: the service processing device may directly perform a read operation on the snapshot database, and if the service data is read, determine that there is data in the snapshot database; if the data is not read , to determine that there is no data in the snapshot database.
  • the snapshot database may also set a data tag to identify whether there is data. For example, when there is data, the data tag may be set to 1, and when there is no data, the data tag may be set to 0.
  • another implementation manner of determining whether there is data in the snapshot database includes: the service processing device can read the data tag in the snapshot database, and determine whether there is data in the snapshot database by using the value of the data tag. For example, if the data is marked as 1, it means that there is data in the snapshot database; if the data is marked as 0, there is no data in the snapshot database.
  • the service processing device may perform a read operation on the snapshot database according to the service processing request; if the service data corresponding to the service processing request is read from the snapshot database, the read operation is ended. Directly processing the service according to the read service data; if the service data corresponding to the service processing request is not read from the snapshot database, the service data is read from the backup database according to the service processing request, and according to the read service data If the part of the service data is read from the snapshot database, the rest of the service data is read from the backup database according to the service processing request, and then the service processing is performed according to all the read service data.
  • the service processing request may include a data identifier, where the data identifier is used to identify service data required for performing service processing, for example, information such as a timestamp or an ID.
  • the service processing device may store the service processing request in a failover database, and when the service data is acquired, may store the service data to the failover.
  • the role of the failover database is to ensure that the service processing device performs normal service processing.
  • the business processing device from The failover database reads the business processing request and the business data; then performs business processing according to the business processing request and the business data, and stores the new business data generated by the business processing into the snapshot database. It is worth noting that new business data can be backed up from the snapshot database to the backup database in time to prevent the loss of new business data.
  • the service processing request may further include how to perform service processing in addition to the data identifier, for example, may indicate a processing operation on the service data.
  • the embodiment combines the primary database with the backup database and the snapshot database in a readable state, backs up the business data in the primary database through the backup database, and stores the data in the primary database through the snapshot database.
  • the business data generated from the first moment to the current moment when the latest service data of the backup database is generated, and the part of the service data includes the service data in the primary database that has not been backed up to the backup database, so that when a service processing request arrives, If the primary database fails, you can wait for the backup database and the snapshot database to start. Instead, you can obtain all the data stored in the primary database directly from the backup database and the snapshot database to complete the complete replacement of the primary database and ensure that the service processing can be performed.
  • the problem is normal, which solves the problem that the service processing cannot be performed normally due to the startup delay of the backup database in the prior art, improves the service processing efficiency, and improves the system performance and user experience.
  • the method provided by the embodiment is compared with the prior art from the following aspects:
  • FIG. 2 is a schematic flowchart of a method for storing service data according to an embodiment of the present application. As shown in Figure 2, the method includes:
  • the service data to be stored to the primary database and the snapshot database in a readable state where the snapshot database is configured to store the service data generated between the first time and the current time.
  • the first time is earlier than or equal to the second time, and the second time refers to the time of generation of the latest service data from the primary database backup to the backup database in the readable state.
  • the service data storage method provided in this embodiment may be performed by a service data storage device, which may be any device that needs to store data to a database, such as a Taobao service system, an Alipay system, or a server in a Tencent system.
  • a service data storage device which may be any device that needs to store data to a database, such as a Taobao service system, an Alipay system, or a server in a Tencent system.
  • the service data storage method provided in this embodiment can be used in conjunction with the foregoing service processing method.
  • the method provided in this embodiment combines the primary database with the backup database and the snapshot database in a readable state, and backs up the business data in the primary database through the backup database. And storing, by the snapshot database, the service data generated between the first moment and the current moment of the generation time of the latest service data from the backup of the primary database to the backup database, where the part of the service data includes the backup database that has not been backed up in the primary database.
  • the business data if there is a business processing request, if the primary database fails, you can wait for the backup database and the snapshot database to start, but directly from the backup database and the snapshot database to the entire database.
  • the data is used to complete the complete replacement of the primary database, and the service processing can be performed normally.
  • the problem that the service processing cannot be performed normally due to the startup delay of the backup database is solved in the prior art, and the service processing efficiency is improved.
  • FIG. 3 is a schematic structural diagram of a service processing apparatus according to an embodiment of the present disclosure. As shown in FIG. 3, the apparatus includes: a receiving module 31, a reading module 32, and a service processing module 33.
  • the receiving module 31 is configured to receive a service processing request.
  • the reading module 32 is connected to the receiving module 31 for reading the service from the backup database in the readable state and/or the snapshot database in the readable state according to the service processing request received by the receiving module 31 when the primary database is faulty. data;
  • the snapshot database is configured to store service data generated between the first time and the current time, the first time is earlier than the second time, and the second time is the time of generating the latest service data from the primary database backup to the backup database. .
  • the service processing module 33 is connected to the reading module 32 for performing business processing according to the service data read by the reading module 32.
  • the reading module 32 is specifically configured to:
  • the service data is read from the snapshot database and/or the backup database according to the service processing request;
  • the business data is read from the backup database according to the business processing request.
  • the reading module 32 is configured to read the service data from the snapshot database and the backup database according to the service processing request, and specifically includes:
  • the service data is read from the backup database according to the service processing request
  • the rest of the business data is read from the backup database according to the business processing request.
  • the receiving module 31 is further configured to: store the service processing request into the failover database corresponding to the primary database; the reading module 32 is further configured to store the service data to the failover database corresponding to the primary database.
  • the service processing module 33 is specifically configured to: read the service processing request and the service data from the failover database; perform the service processing according to the service processing request and the service data, and store the new service data generated by the service processing into the snapshot database. .
  • the receiving module 31 is further configured to: before receiving the service processing request, receive the data storage request, and store the current service data to be stored into the primary database and the snapshot database according to the data storage request.
  • the first time is a time that is different from the current time by a preset time length, and the preset time length is greater than a maximum time required to generate service data in the primary database that has not been backed up to the backup database.
  • the service processing apparatus combines the primary database with the backup database and the snapshot database in a readable state, backs up the business data in the primary database through the backup database, and stores the data in the primary database through the snapshot database.
  • the business data generated between the first time and the current time when the latest business data of the backup database is backed up, this part of the business
  • the database obtains all the data stored in the primary database, and completes the complete replacement of the primary database to ensure that the service processing can be performed normally. This solves the problem that the business processing cannot be performed normally due to the startup delay of the backup database in the prior art, and the problem is improved. Business processing efficiency.
  • FIG. 4 is a schematic structural diagram of a service data storage apparatus according to an embodiment of the present application. As shown in FIG. 4, the device includes a receiving module 41 and a storage module 42.
  • the receiving module 41 is configured to receive a data storage instruction.
  • the storage module 42 is connected to the receiving module 41 for storing the current service data to be stored in the main database and the snapshot database in a readable state according to the data storage instruction received by the receiving module 41.
  • the snapshot database is configured to store the service data generated between the first time and the current time, the first time is earlier than or equal to the second time, and the second time is the backup from the primary database to the backup database in the readable state. The moment when the latest business data is generated.
  • the first time is a time that is different from the current time by a preset time length, and the preset time length is greater than a maximum time required to generate service data in the primary database that has not been backed up to the backup database.
  • the service data storage device combines the primary database with the backup database and the snapshot database in a readable state, backs up the business data in the primary database through the backup database, and stores the data in the snapshot database earlier than
  • the main data is backed up to the business data generated between the first time and the current time of the latest business data generation time of the backup database, and the part of the business data includes the business data in the primary database that has not been backed up to the backup database, so that the service is in existence.
  • the processing request arrives, if the primary database fails, you can wait for the startup of the backup database and the snapshot database, and directly obtain all the data stored in the primary database from the backup database and the snapshot database to achieve complete replacement of the primary database.
  • the service processing can be performed normally, and the service processing cannot be performed normally due to the startup delay of the backup database in the prior art. The problem has improved the efficiency of business processing.
  • FIG. 5 is a schematic structural diagram of a service processing system according to an embodiment of the present disclosure.
  • the system includes a service processing device 51, a main database 52, a backup database 53, and a snapshot database 54.
  • the backup database 53 and the snapshot database 54 are both configured in a readable state.
  • the service processing device 51 is configured to receive the service processing request, and when the primary database 52 fails, read the service data from the backup database 53 and/or the snapshot database 54 according to the service processing request, and perform the service processing according to the service data.
  • the primary database 52 is configured to store business data
  • the backup database 53 is configured to store business data backed up from the primary database 52;
  • the snapshot database 54 is configured to store the business data generated between the first time and the current time, the first time being earlier than the second time, and the second time being the latest business data backed up from the primary database 52 to the backup database 53. Produce moments.
  • the system also includes a failover database 55.
  • the service processing device 51 stores the service processing request in the failover database 55 corresponding to the primary database, and after reading the service data, first stores the service data in the failover database 55;
  • the service processing request and the service data are read from the failover database 55; the service processing is performed according to the service processing request and the service data, and the new service data generated by the service processing is stored in the snapshot database.
  • the first time is a time that is different from the current time by a preset time length, and the preset time length is greater than a maximum time required to generate service data in the primary database that has not been backed up to the backup database.
  • the service processing system provided in this embodiment combines the primary database with the backup database and the snapshot database in a readable state, backs up the business data in the primary database through the backup database, and stores the data in the primary database through the snapshot database. Backing up to the business data between the first moment and the current moment of the generation of the latest service data of the backup database.
  • This part of the service data includes the service data in the primary database that has not been backed up to the backup database, so that there is a service processing request.
  • the service processing device may not have to wait for backup data.
  • the startup of the library and the snapshot database but the entire data stored in the primary database is obtained directly from the backup database and the snapshot database, so that the complete replacement of the primary database is completed, and the business processing can be performed normally, and the backup in the prior art is solved.
  • the database startup delay causes the problem that the service processing cannot be performed normally, which improves the service processing efficiency.
  • the disclosed system, apparatus, and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
  • the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
  • the software functional unit described above is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to perform the methods described in various embodiments of the present application. Part of the steps.
  • the foregoing storage medium includes: a USB flash drive, a mobile hard disk, and a read-only memory (Read-Only Memory, ROM, random access memory (RAM), disk or optical disk, and other media that can store program code.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种业务处理方法、装置及系统。方法包括:接收业务处理请求;当主数据库故障时,根据业务处理请求,从处于可读状态的备份数据库和/或处于可读状态的快照数据库中读取业务数据,根据业务数据进行业务处理;其中,快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,第一时刻早于第二时刻,第二时刻是指从主数据库备份到备份数据库的最晚业务数据的产生时刻。本申请可以解决业务系统无法正常进行业务处理的问题,提高业务处理效率。

Description

业务处理方法、装置及系统 【技术领域】
本申请涉及互联网技术领域,尤其涉及一种业务处理方法、装置及系统。
【背景技术】
随着应用的发展,对业务系统可用性的要求越来越高。为了提高业务系统的可用性,需要将业务系统产生的业务数据存储到数据库中。但是,当数据库发生故障时,业务系统无法继续使用数据库中的业务数据,导致无法正常进行业务处理。
为了克服上述问题,现有技术一般采用数据库备份方案,当主数据库发生故障时,切换到备份数据库,由备份数据库接替主数据库继续向业务系统提供业务数据。该方案存在如下问题:从主数据库切换到备份数据库需要一定时间,通常在5分钟左右,在这段时间内,业务系统需要停止进行业务处理,导致业务处理效率较低。
【发明内容】
本申请的多个方面提供一种业务处理方法、装置及系统,用以解决业务系统无法正常进行业务处理的问题,提高业务处理效率。
本申请的一方面,提供一种业务处理方法,包括:
接收业务处理请求;
若主数据库故障,根据所述业务处理请求,从处于可读状态的备份数据库和/或处于可读状态的快照数据库中读取业务数据,根据所述业务数据进行业务处理;
其中,所述快照数据库用于存储在第一时刻到当前时刻之间产生的业 务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到所述备份数据库的最晚业务数据的产生时刻。
本申请的另一方面,提供一种业务数据存储方法,包括:
接收数据存储指令;
根据所述数据存储指令,将当前待存储的业务数据存储到主数据库和处于可读状态的快照数据库中;
其中,所述快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到处于可读状态的备份数据库的最晚业务数据的产生时刻。
本申请的又一方面,提供一种业务处理装置,包括:
接收模块,用于接收业务处理请求;
读取模块,用于当主数据库故障时,根据所述业务处理请求,从处于可读状态的备份数据库和/或处于可读状态的快照数据库中读取业务数据;
其中,所述快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到所述备份数据库的最晚业务数据的产生时刻;
业务处理模块,用于根据所述业务数据进行业务处理。
本申请的又一方面,提供一种业务数据存储装置,包括:
接收模块,用于接收数据存储指令;
存储模块,用于根据所述数据存储指令,将当前待存储的业务数据存储到主数据库和处于可读状态的快照数据库中;
其中,所述快照数据库用于存储在第一时刻之后到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到处于可读状态的备份数据库的最晚业务数据的产生时刻。
本申请的又一方面,提供一种业务处理系统,包括:业务处理装置、主数据库、备份数据库和快照数据库;其中,所述备份数据库和所述快照数据库均被配置为可读状态;
业务处理装置,用于接收业务处理请求,并在所述主数据库故障时,根据所述业务处理请求,从所述备份数据库和/或所述快照数据库中读取业务数据,根据所述业务数据进行业务处理;
所述主数据库被配置成存储所述业务数据;
所述备份数据库被配置成存储从所述主数据库备份过来的业务数据;
所述快照数据库被配置成存储在第一时刻到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到所述备份数据库的最晚业务数据的产生时刻。
在本申请中,将主数据库与处于可读状态的备份数据库和快照数据库相结合,通过备份数据库对主数据库中的业务数据进行备份,并通过快照数据库存储在早于从主数据库备份到备份数据库的最晚业务数据的产生时刻的第一时刻到当前时刻之间产生的业务数据,这部分业务数据包括主数据库中尚未备份到备份数据库中的业务数据,这样在有业务处理请求到来时,若主数据库发生故障,则可以不用等待备份数据库和快照数据库的启动,而是直接从备份数据库和快照数据库中获取到主数据库中存储的全部数据,实现对主数据库的完整替换,保证业务处理可以正常进行,解决了现有技术中由于备份数据库启动延时造成业务处理无法正常进行的问题,提高了业务处理效率。
【附图说明】
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的业务处理方法的流程示意图;
图2为本申请一实施例提供的业务数据存储方法的流程示意图;
图3为本申请一实施例提供的业务处理装置的结构示意图;
图4为本申请一实施例提供的业务数据存储装置的结构示意图;
图5为本申请一实施例提供的业务处理系统的结构示意图;
图6为本申请另一实施例提供的业务处理系统的结构示意图。
【具体实施方式】
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请一实施例提供的业务处理方法的流程示意图。如图1所示,该方法包括:
101、接收业务处理请求。
102、当主数据库故障时,根据上述业务处理请求,从处于可读状态的备份数据库和/或处于可读状态的快照数据库中读取业务数据,根据业务数据进行业务处理;其中,快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,第一时刻早于第二时刻,第二时刻是指从主数据库备份到备份数据库的最晚业务数据的产生时刻。
本实施例提供一种业务处理方法,可由业务处理装置来执行。业务处理装置可以是各种需要使用数据库中存储的业务数据开展业务的业务系统,例如淘宝系统、支付宝系统、腾讯业务系统等等。
现有技术中,当主数据库故障后,需要启用备份数据库,主备切换过程如下:
1、检查备份数据库的状态是否处于可启用为主数据库的状态;
2、激活备份数据库;
3、切换备份数据库为主数据库;
4、修改域名,把原来绑定给主数据库的域名绑定到新的主数据库;
5、检查业务是否正常。
在上述主备切换过程中,步骤1-3一般需要5分钟左右。在这段时间内,业务系统需要停止进行业务处理,导致业务处理效率较低。
针对现有技术中在主数据库故障时,由主数据库切换到备份数据库过程中无法正常进行业务处理的问题,本实施例提供一种改进的备份数据库,即处于可读状态的备份数据库,也就是说,本实施例中的备份数据库不仅可以用于备份主数据库中的业务数据,而且是一直处于可读状态的。基于本实施例提供的处于可读状态的备份数据库,当主数据库发生故障需要切换到备份数据库时,不需要等待备份数据库的启动,可以直接使用备份数据库(这里的使用主要是指可以直接从备份数据库中读取业务数据),也就是说,主数据库可以直接切换到备份数据库,不存在时间延迟,因此在主备数据库切换过程中可以继续进行业务处理,不需要停止业务处理。
在一可选实施方式中,本实施例提供的处于可读状态的备份数据库可以是读写分离应用中的读库,这里的读库是指只有在数据库同步过程中允许写入数据,在其他应用场景中只允许往外读数据的数据库。
进一步,考虑到主数据库向备份数据库备份数据一般存在延迟,也就是说,主数据库和备份数据库所存储的业务数据并不完全相同,而是存在一定差异,例如备份数据库中存储的业务数据比主数据库中存储的业务数据可能要少1分钟左右的数据。值得说明的是,主数据库和备份数据库所存储的业务数据之间的差异视不同应用场景会有所不同。
在面临上述问题的情况下,在主数据库故障后,若直接使用备份数据库中的业务数据,有可能会因为业务数据的不完整导致业务处理失败。针对该问题,本实施例进一步提供一种新的快照数据库,该快照数据库处于可读状态,用以克服启动时延的问题,并且被配置成存储第一时刻到当前时刻之间产生的业务数据,这里的第一时刻早于或等于第二时刻,第二时刻是指从 主数据库备份到备份数据库中的最晚业务数据的产生时刻。简单来说,主数据库中尚未备份到备份数据库中的业务数据可以在该快照数据库获取到。
值得说明的是,快照数据库实际上也是一数据库,只是存储的业务数据相对较少。
基于上述可知,在使用主数据库和快照数据库之前,还需要根据数据存储请求,向主数据库和快照数据库中存储业务数据。例如,向主数据库和快照数据库中存储业务数据的执行主体可以是业务处理装置,也可以是不同于业务处理装置的其他装置。在本申请各实施例中,以向主数据库和快照数据库中存储业务数据的执行主体是业务处理装置为例进行说明,则当有数据存储请求到来时,业务处理装置接收数据存储请求,根据数据存储请求,将当前待存储的业务数据存储到主数据库中,并将待存储的业务数据存储到快照数据库中。值得说明的是,快照数据库只需存储从第一时刻到当前时刻之间产生的业务数据。另外,主数据库还会按照预设的备份机制,将主数据库中的业务数据发送到备份数据库中进行备份。
值得说明的是,数据存储请求可以直接携带有待存储的业务数据,则业务处理装置从数据存储请求中获取待存储的业务数据,将其存储到主数据库和快照数据库中。或者,数据存储请求可以携带待存储的业务数据的路径信息,这样业务处理装置可以从该路径信息所指示的文件中获取待存储的业务数据,并将其存储到主数据库和快照数据库中。
在实际应用中,主数据库在未发生故障的情况下,会不停的向备份数据库备份业务数据,也就意味着第二时刻是不断变化的,相应的,第一时刻也会根据第二时刻的变化而变化。对快照数据库来说,若要成功存储从第一时刻到当前时刻之间产生的业务数据,需要确定第一时刻。为了便于快照数据库确定第一时刻,可以采用统计等方法预先获取主数据库和备份数据库之间的备份时延,该备份时延是指产生主数据库中尚未备份到备份数据库中的业务数据所需的最大时长。基于此,可以预先设定一时间长度(简称为预设时长),该预设时长大于该备份时延,即大于产生主数据库中尚未备份到备 份数据库中的业务数据所需的最大时长,进而确定第一时刻是与当前时刻相距该预设时长的时刻。举例说明,在一种业务场景中,主数据库与备份数据库中最多相差1分钟左右的业务数据,则可以设定备份时延为1分钟,并设定预设时长为5分钟,也就是说,快照数据库需要存储当前时刻以及当前时刻之前5分钟内产生的业务数据,这部分业务数据包括主数据库中尚未备份到备份数据库中的1分钟左右的业务数据。
对于快照数据库来说,可以将快照数据库中产生时刻距离当前时刻的时间间隔大于预设时长(例如5分钟)的业务数据删除,以便于存储最新产生的业务数据。或者,也可以为快照数据库设定与预设时长内产生的业务数据相对应的存储容量,并采用类似“先入先出”式的存储方式,这样当有新的业务数据到达时,旧的业务数据就会被挤出,使得快照数据库中永远存储产生时刻与当前时刻的间隔小于或等于预设时长的业务数据。
本实施例通过将主数据库与处于可读状态的备份数据库和快照数据库相结合,通过备份数据库对主数据库中的业务数据进行备份,并通过快照数据库存储主数据库中尚未备份到备份数据库中的那部分业务数据,这部分业务数据也就是在早于从主数据库备份到备份数据库的最晚业务数据的产生时刻的第一时刻到当前时刻产生的业务数据。这样,当业务处理装置接收到业务处理请求时,可以从业务处理请求中获取用于标识业务处理所需的业务数据的数据标识;若主数据库未发生故障,则根据该数据标识从主数据库中获取业务处理所需的业务数据,进而进行业务处理;若主数据库发生故障,则根据该数据标识,直接从处于可读状态的备份数据库和/或快照数据库中读取业务处理所需的业务数据,进而进行业务处理。
在一可选实施方式中,业务处理装置可以判断快照数据库中是否有数据;若快照数据库中没有数据,意味着从第一时刻到当前时刻这段时间内未产生新的业务数据,也就意味着备份数据库中业务数据与主数据库中的业务数据是一致的,因此可以直接用备份数据库接替主数据库,于是根据上述业务处理请求从备份数据库中读取业务处理所需的业务数据;若快照数据库中 有数据,意味着从第一时刻到当前时刻这段时间内产生了新的业务数据,也就意味着备份数据库和快照数据库中的业务数据结合起来才和主数据库中的业务数据是一致的,但是由于业务处理所需的业务数据可能有各种情况,所以可以根据业务处理请求从快照数据库和/或备份数据库中读取业务数据。
例如,一种判断快照数据库中是否有数据的实施方式包括:业务处理装置可以直接对快照数据库进行读取操作,若读取到业务数据,则确定快照数据库中有数据;若未读取到数据,则确定快照数据库中没有数据。或者,快照数据库也可以设置一数据标记,通过该数据标记来标识是否有数据,例如有数据时,可以将该数据标记设置为1,没有数据时,可以将该数据标记设置为0。基于此,另一种判断快照数据库中是否有数据的实施方式包括:业务处理装置可以读取快照数据库中的数据标记,通过该数据标记的取值来判断快照数据库中是否有数据。例如,若数据标记为1,说明快照数据库中有数据;若数据标记为0,说明快照数据库中没有数据。
例如,在快照数据库中有数据的情况下,业务处理装置可以根据业务处理请求,对快照数据库进行读取操作;若从快照数据库中读取到业务处理请求对应的业务数据,则结束读取操作,直接根据读取的业务数据进行业务处理;若未从快照数据库中读取到业务处理请求对应的业务数据,则根据业务处理请求从备份数据库中读取业务数据,并根据读取的业务数据进行业务处理;若从快照数据库中读取到业务数据的部分数据,则根据业务处理请求继续从备份数据库中读取业务数据的其余部分,进而根据读取到的全部业务数据进行业务处理。
其中,业务处理请求中可以包括数据标识,该数据标识用于标识进行业务处理所需的业务数据,例如可以是时间戳或ID等信息。
在一可选实施方式中,业务处理装置在接收到业务处理请求后,可以将业务处理请求存储到失效切换(failover)数据库中,以及在获取到业务数据时,可以将业务数据存储到失效切换数据库中;其中,失效切换数据库的作用是保证业务处理装置正常进行业务处理。基于此,业务处理装置从 failover数据库中读取业务处理请求和业务数据;再根据业务处理请求和业务数据进行业务处理,并将业务处理产生的新业务数据存储到快照数据库中。值得说明的,新的业务数据可以从快照数据库中及时备份到备份数据库中,以防止丢失新的业务数据。另外,业务处理请求除了包括数据标识之外,进一步还可以包括如何进行业务处理,例如可以指示对业务数据的处理操作。
经上述分析可知,本实施例将主数据库与处于可读状态的备份数据库和快照数据库相结合,通过备份数据库对主数据库中的业务数据进行备份,并通过快照数据库存储在早于从主数据库备份到备份数据库的最晚业务数据的产生时刻的第一时刻到当前时刻产生的业务数据,这部分业务数据包括主数据库中尚未备份到备份数据库中的业务数据,这样在有业务处理请求到来时,若主数据库发生故障,则可以不用等待备份数据库和快照数据库的启动,而是直接从备份数据库和快照数据库中获取到主数据库中存储的全部数据,实现对主数据库的完整替换,保证业务处理可以正常进行,解决了现有技术中由于备份数据库启动延时造成业务处理无法正常进行的问题,提高了业务处理效率,进而提升系统性能和用户体验。
为便于更加清楚的展现本实施例的技术效果,从以下几个方面将本实施例提供的方法与现有技术进行比较:
Figure PCTCN2015094314-appb-000001
Figure PCTCN2015094314-appb-000002
图2为本申请一实施例提供的业务数据存储方法的流程示意图。如图2所示,该方法包括:
201、接收数据存储指令。
202、根据上述数据存储指令,将当前待存储的业务数据存储到主数据库和处于可读状态的快照数据库中,其中,快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,第一时刻早于或等于第二时刻,第二时刻是指从主数据库备份到处于可读状态的备份数据库的最晚业务数据的产生时刻。
本实施例提供的业务数据存储方法可由业务数据存储装置来执行,该业务数据存储装置可以是任何需要存储数据到数据库的装置,例如可以是淘宝业务系统、支付宝系统或腾讯系统中的服务器等。
本实施例提供的业务数据存储方法可与上述业务处理方法配合使用,具体流程和有关各数据库的描述可参见前述实施例,在此不再赘述。
本实施例提供的方法,通过将主数据库与处于可读状态的备份数据库和快照数据库相结合,通过备份数据库对主数据库中的业务数据进行备份, 并通过快照数据库存储在早于从主数据库备份到备份数据库的最晚业务数据的产生时刻的第一时刻到当前时刻之间产生的业务数据,这部分业务数据包括主数据库中尚未备份到备份数据库中的业务数据,这样在有业务处理请求到来时,若主数据库发生故障,则可以不用等待备份数据库和快照数据库的启动,而是直接从备份数据库和快照数据库中获取到主数据库中存储的全部数据,实现对主数据库的完整替换,保证业务处理可以正常进行,解决了现有技术中由于备份数据库启动延时造成业务处理无法正常进行的问题,提高了业务处理效率。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
图3为本申请一实施例提供的业务处理装置的结构示意图。如图3所示,该装置包括:接收模块31、读取模块32和业务处理模块33。
接收模块31,用于接收业务处理请求。
读取模块32,与接收模块31连接,用于当主数据库故障时,根据接收模块31接收的业务处理请求,从处于可读状态的备份数据库和/或处于可读状态的快照数据库中读取业务数据;
其中,快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,第一时刻早于第二时刻,第二时刻是指从主数据库备份到备份数据库的最晚业务数据的产生时刻。
业务处理模块33,与读取模块32连接,用于根据读取模块32读取的业务数据进行业务处理。
在一可选实施方式中,读取模块32具体可用于:
若快照数据库中有数据,则根据业务处理请求从快照数据库和/或备份数据库中读取业务数据;
若快照数据库中没有数据,则根据业务处理请求从备份数据库中读取业务数据。
在一可选实施方式中,读取模块32用于根据业务处理请求从快照数据库和备份数据库中读取业务数据,具体包括:
根据业务处理请求,对快照数据库进行读取操作;
若未从快照数据库中读取到业务数据,根据业务处理请求从备份数据库中读取业务数据;
若从快照数据库中读取到业务数据的部分数据,则根据业务处理请求从备份数据库中读取业务数据的其余部分。
在一可选实施方式中,接收模块31还用于,将业务处理请求存储到主数据库对应的失效切换数据库中;读取模块32还用于,将业务数据存储到主数据库对应的失效切换数据库中。基于此,业务处理模块33具体可用于:从失效切换数据库中读取业务处理请求和业务数据;根据业务处理请求和业务数据进行业务处理,并将业务处理产生的新业务数据存储到快照数据库中。
在一可选实施方式中,接收模块31还用于,在接收业务处理请求之前,接收数据存储请求,并根据数据存储请求,将当前待存储的业务数据存储到主数据库和快照数据库中。
在一可选实施方式中,第一时刻是与当前时刻相距预设时长的时刻,所述预设时长大于产生所述主数据库中尚未备份到所述备份数据库中的业务数据所需的最大时长。
本实施例提供的业务处理装置,将主数据库与处于可读状态的备份数据库和快照数据库相结合,通过备份数据库对主数据库中的业务数据进行备份,并通过快照数据库存储在早于从主数据库备份到备份数据库的最晚业务数据的产生时刻的第一时刻到当前时刻之间产生的业务数据,这部分业务数 据包括主数据库中尚未备份到备份数据库中的业务数据,这样在有业务处理请求到来时,若主数据库发生故障,则可以不用等待备份数据库和快照数据库的启动,而是直接从备份数据库和快照数据库中获取到主数据库中存储的全部数据,实现对主数据库的完整替换,保证业务处理可以正常进行,解决了现有技术中由于备份数据库启动延时造成业务处理无法正常进行的问题,提高了业务处理效率。
图4为本申请一实施例提供的业务数据存储装置的结构示意图。如图4所示,该装置包括:接收模块41和存储模块42。
接收模块41,用于接收数据存储指令。
存储模块42,与接收模块41连接,用于根据接收模块41接收的数据存储指令,将当前待存储的业务数据存储到主数据库和处于可读状态的快照数据库中。
其中,快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,第一时刻早于或等于第二时刻,第二时刻是指从主数据库备份到处于可读状态的备份数据库的最晚业务数据的产生时刻。
在一可选实施方式中,第一时刻是与当前时刻相距预设时长的时刻,所述预设时长大于产生所述主数据库中尚未备份到所述备份数据库中的业务数据所需的最大时长。
本实施例提供的业务数据存储装置,通过将主数据库与处于可读状态的备份数据库和快照数据库相结合,通过备份数据库对主数据库中的业务数据进行备份,并通过快照数据库存储在早于从主数据库备份到备份数据库的最晚业务数据的产生时刻的第一时刻到当前时刻之间产生的业务数据,这部分业务数据包括主数据库中尚未备份到备份数据库中的业务数据,这样在有业务处理请求到来时,若主数据库发生故障,则可以不用等待备份数据库和快照数据库的启动,而是直接从备份数据库和快照数据库中获取到主数据库中存储的全部数据,实现对主数据库的完整替换,保证业务处理可以正常进行,解决了现有技术中由于备份数据库启动延时造成业务处理无法正常进行 的问题,提高了业务处理效率。
图5为本申请一实施例提供的业务处理系统的结构示意图。如图5所示,该系统包括:业务处理装置51、主数据库52、备份数据库53和快照数据库54。其中,备份数据库53和快照数据库54均被配置为可读状态。
业务处理装置51,用于接收业务处理请求,并在主数据库52故障时,根据业务处理请求,从备份数据库53和/或快照数据库54中读取业务数据,根据业务数据进行业务处理。
主数据库52被配置成存储业务数据;
备份数据库53被配置成存储从主数据库52备份过来的业务数据;
快照数据库54被配置成存储在第一时刻到当前时刻之间产生的业务数据,第一时刻早于第二时刻,第二时刻是指从主数据库52备份到备份数据库53的最晚业务数据的产生时刻。
进一步,如图6所示,该系统还包括的失效切换(failover)数据库55。具体的,业务处理装置51接收到业务处理请求之后,将业务处理请求存储到主数据库对应的失效切换数据库55中,并在读取业务数据之后,先将业务数据存储到失效切换数据库55中;当进行业务处理时,从失效切换数据库55中读取业务处理请求和业务数据;根据业务处理请求和业务数据进行业务处理,并将业务处理产生的新业务数据存储到快照数据库中。
在一可选实施方式中,第一时刻是与当前时刻相距预设时长的时刻,所述预设时长大于产生所述主数据库中尚未备份到所述备份数据库中的业务数据所需的最大时长。
本实施例提供的业务处理系统,将主数据库与处于可读状态的备份数据库和快照数据库相结合,通过备份数据库对主数据库中的业务数据进行备份,并通过快照数据库存储在早于从主数据库备份到备份数据库的最晚业务数据的产生时刻的第一时刻到当前时刻产生之间的业务数据,这部分业务数据包括主数据库中尚未备份到备份数据库中的业务数据,这样在有业务处理请求到来时,若主数据库发生故障,则业务处理装置可以不用等待备份数据 库和快照数据库的启动,而是直接从备份数据库和快照数据库中获取到主数据库中存储的全部数据,实现对主数据库的完整替换,保证业务处理可以正常进行,解决了现有技术中由于备份数据库启动延时造成业务处理无法正常进行的问题,提高了业务处理效率。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory, ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (16)

  1. 一种业务处理方法,其特征在于,包括:
    接收业务处理请求;
    若主数据库故障,根据所述业务处理请求,从处于可读状态的备份数据库和/或处于可读状态的快照数据库中读取业务数据,根据所述业务数据进行业务处理;
    其中,所述快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到所述备份数据库的最晚业务数据的产生时刻。
  2. 根据权利要求1所述的方法,其特征在于,所述根据所述业务处理请求,从处于可读状态的备份数据库和/或处于可读状态的快照数据库中读取业务数据,包括:
    若所述快照数据库中有数据,则根据所述业务处理请求从所述快照数据库和/或所述备份数据库中读取所述业务数据;
    若所述快照数据库中没有数据,则根据所述业务处理请求从所述备份数据库中读取所述业务数据。
  3. 根据权利要求2所述的方法,其特征在于,所述根据所述业务处理请求从所述快照数据库和所述备份数据库中读取所述业务数据,包括:
    根据所述业务处理请求,对所述快照数据库进行读取操作;
    若未从所述快照数据库中读取到所述业务数据,根据所述业务处理请求从所述备份数据库中读取所述业务数据;
    若从所述快照数据库中读取到所述业务数据的部分数据,则根据所述业务处理请求从所述备份数据库中读取所述业务数据的其余部分。
  4. 根据权利要求1所述的方法,其特征在于,所述根据所述业务数据进行业务处理之前,还包括:
    将所述业务处理请求和所述业务数据存储到所述主数据库对应的失效切换 数据库中;
    所述根据所述业务数据进行业务处理,包括:
    从所述失效切换数据库中读取所述业务处理请求和所述业务数据;
    根据所述业务数据和所述业务处理请求进行业务处理,并将业务处理产生的新业务数据存储到所述快照数据库中。
  5. 根据权利要求1-4任一项所述的方法,其特征在于,所述接收业务处理请求之前,还包括:
    接收数据存储请求;
    根据所述数据存储请求,将当前待存储的业务数据存储到所述主数据库和所述快照数据库中。
  6. 根据权利要求1-4任一项所述的方法,其特征在于,还包括:
    将所述快照数据库中产生时刻等于或早于所述第二时刻的业务数据删除。
  7. 根据权利要求1-4任一项所述的方法,其特征在于,所述第一时刻是与当前时刻相距预设时长的时刻,所述预设时长大于产生所述主数据库中尚未备份到所述备份数据库中的业务数据所需的最大时长。
  8. 一种业务数据存储方法,其特征在于,包括:
    接收数据存储指令;
    根据所述数据存储指令,将当前待存储的业务数据存储到主数据库和处于可读状态的快照数据库中;
    其中,所述快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到处于可读状态的备份数据库的最晚业务数据的产生时刻。
  9. 根据权利要求8所述的方法,其特征在于,所述第一时刻是与当前时刻相距预设时长的时刻,所述预设时长大于产生所述主数据库中尚未备份到所述备份数据库中的业务数据所需的最大时长。
  10. 一种业务处理装置,其特征在于,包括:
    接收模块,用于接收业务处理请求;
    读取模块,用于当主数据库故障时,根据所述业务处理请求,从处于可读状态的备份数据库和/或处于可读状态的快照数据库中读取业务数据;
    其中,所述快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到所述备份数据库的最晚业务数据的产生时刻;
    业务处理模块,用于根据所述业务数据进行业务处理。
  11. 根据权利要求10所述的装置,其特征在于,所述读取模块具体用于:
    若所述快照数据库中有数据,则根据所述业务处理请求从所述快照数据库和/或所述备份数据库中读取所述业务数据;
    若所述快照数据库中没有数据,则根据所述业务处理请求从所述备份数据库中读取所述业务数据。
  12. 根据权利要求11所述的装置,其特征在于,所述读取模块用于根据所述业务处理请求从所述快照数据库和所述备份数据库中读取所述业务数据,具体包括:
    根据所述业务处理请求,对所述快照数据库进行读取操作;
    若未从所述快照数据库中读取到所述业务数据,根据所述业务处理请求从所述备份数据库中读取所述业务数据;
    若从所述快照数据库中读取到所述业务数据的部分数据,则根据所述业务处理请求从所述备份数据库中读取所述业务数据的其余部分。
  13. 根据权利要求10所述的装置,其特征在于,
    所述接收模块还用于,将所述业务处理请求存储到所述主数据库对应的失效切换数据库中;
    所述读取模块还用于,将所述业务数据存储到所述失效切换数据库中;
    所述业务处理模块具体用于:
    从所述失效切换数据库中读取所述业务处理请求和所述业务数据;
    根据所述业务数据和所述业务处理请求进行业务处理,并将业务处理产生的新业务数据存储到所述快照数据库中。
  14. 根据权利要求10-13任一项所述的装置,其特征在于,
    所述接收模块还用于,在接收所述业务处理请求之前,接收数据存储请求,并根据所述数据存储请求,将当前待存储的业务数据存储到所述主数据库和所述快照数据库中。
  15. 一种业务数据存储装置,其特征在于,包括:
    接收模块,用于接收数据存储指令;
    存储模块,用于根据所述数据存储指令,将当前待存储的业务数据存储到主数据库和处于可读状态的快照数据库中;
    其中,所述快照数据库用于存储在第一时刻到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到处于可读状态的备份数据库的最晚业务数据的产生时刻。
  16. 一种业务处理系统,其特征在于,包括:业务处理装置、主数据库、备份数据库和快照数据库;其中,所述备份数据库和所述快照数据库均被配置为可读状态;
    业务处理装置,用于接收业务处理请求,并在所述主数据库故障时,根据所述业务处理请求,从所述备份数据库和/或所述快照数据库中读取业务数据,根据所述业务数据进行业务处理;
    所述主数据库被配置成存储所述业务数据;
    所述备份数据库被配置成存储从所述主数据库备份过来的业务数据;
    所述快照数据库被配置成存储在第一时刻到当前时刻之间产生的业务数据,所述第一时刻早于或等于第二时刻,所述第二时刻是指从所述主数据库备份到所述备份数据库的最晚业务数据的产生时刻。
PCT/CN2015/094314 2014-11-20 2015-11-11 业务处理方法、装置及系统 WO2016078529A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410668167.5A CN105677673B (zh) 2014-11-20 2014-11-20 业务处理方法、装置及系统
CN201410668167.5 2014-11-20

Publications (1)

Publication Number Publication Date
WO2016078529A1 true WO2016078529A1 (zh) 2016-05-26

Family

ID=56013277

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/094314 WO2016078529A1 (zh) 2014-11-20 2015-11-11 业务处理方法、装置及系统

Country Status (2)

Country Link
CN (1) CN105677673B (zh)
WO (1) WO2016078529A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111835846A (zh) * 2020-07-09 2020-10-27 北京字节跳动网络技术有限公司 信息更新方法、装置和电子设备
CN113489154A (zh) * 2021-07-16 2021-10-08 广东电网有限责任公司 基于主备用通道切换技术的电网监控系统数据防丢失方法
US11409605B2 (en) 2020-10-20 2022-08-09 Sap Se Failover system for database unavailability

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106681865B (zh) * 2017-01-16 2020-07-07 北京腾凌科技有限公司 业务恢复方法及装置
CN107122263B (zh) * 2017-05-15 2020-09-29 深圳市奇摩计算机有限公司 在线恢复备份数据的方法及其实现系统和备份设备
CN107102914B (zh) * 2017-05-15 2020-10-30 深圳市奇摩计算机有限公司 备份及恢复数据的方法及其实现系统和备份设备
CN116089169A (zh) * 2018-01-09 2023-05-09 创新先进技术有限公司 一种账户回迁方法、装置及设备
CN108664356A (zh) * 2018-05-03 2018-10-16 吉林亿联银行股份有限公司 一种数据库备份方法及装置、数据库系统
CN116521622B (zh) * 2023-06-30 2023-09-22 中邮消费金融有限公司 一种基于数据快照自动化管理数据的方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1784676A (zh) * 2004-02-25 2006-06-07 微软公司 数据库数据恢复系统和方法
CN101316184A (zh) * 2007-06-01 2008-12-03 华为技术有限公司 容灾切换方法、系统、装置
CN103019875A (zh) * 2012-12-19 2013-04-03 北京世纪家天下科技发展有限公司 一种实现数据库双主改造的方法及装置
CN103914359A (zh) * 2012-12-31 2014-07-09 中国移动通信集团浙江有限公司 一种数据恢复方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100533395C (zh) * 2005-06-10 2009-08-26 北京艾德斯科技有限公司 网络存储中的快照系统与方法
JP5602311B2 (ja) * 2011-04-15 2014-10-08 株式会社日立製作所 ファイル共有システム及びファイル共有方法
US9613104B2 (en) * 2012-02-17 2017-04-04 Netflix, Inc. System and method for building a point-in-time snapshot of an eventually-consistent data store

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1784676A (zh) * 2004-02-25 2006-06-07 微软公司 数据库数据恢复系统和方法
CN101316184A (zh) * 2007-06-01 2008-12-03 华为技术有限公司 容灾切换方法、系统、装置
CN103019875A (zh) * 2012-12-19 2013-04-03 北京世纪家天下科技发展有限公司 一种实现数据库双主改造的方法及装置
CN103914359A (zh) * 2012-12-31 2014-07-09 中国移动通信集团浙江有限公司 一种数据恢复方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111835846A (zh) * 2020-07-09 2020-10-27 北京字节跳动网络技术有限公司 信息更新方法、装置和电子设备
CN111835846B (zh) * 2020-07-09 2022-10-11 北京字节跳动网络技术有限公司 信息更新方法、装置和电子设备
US11409605B2 (en) 2020-10-20 2022-08-09 Sap Se Failover system for database unavailability
CN113489154A (zh) * 2021-07-16 2021-10-08 广东电网有限责任公司 基于主备用通道切换技术的电网监控系统数据防丢失方法
CN113489154B (zh) * 2021-07-16 2023-07-28 广东电网有限责任公司 基于主备用通道切换技术的电网监控系统数据防丢失方法

Also Published As

Publication number Publication date
CN105677673A (zh) 2016-06-15
CN105677673B (zh) 2019-01-04

Similar Documents

Publication Publication Date Title
WO2016078529A1 (zh) 业务处理方法、装置及系统
US9823877B2 (en) Virtual machine backup from storage snapshot
US10261853B1 (en) Dynamic replication error retry and recovery
US10073747B2 (en) Reducing recovery time in disaster recovery/replication setup with multitier backend storage
US9250824B2 (en) Backing up method, device, and system for virtual machine
US8856592B2 (en) Mechanism to provide assured recovery for distributed application
US20180285216A1 (en) Virtual Machine Recovery Method and Virtual Machine Management Device
US10831741B2 (en) Log-shipping data replication with early log record fetching
US20150213100A1 (en) Data synchronization method and system
WO2018058942A1 (zh) 一种数据处理方法以及备份服务器
US20130179729A1 (en) Fault tolerant system in a loosely-coupled cluster environment
US20150317175A1 (en) Virtual machine synchronization system
US20190317872A1 (en) Database cluster architecture based on dual port solid state disk
US20210320977A1 (en) Method and apparatus for implementing data consistency, server, and terminal
CN102394914A (zh) 集群脑裂处理方法和装置
US10229010B2 (en) Methods for preserving state across a failure and devices thereof
US10402264B2 (en) Packet-aware fault-tolerance method and system of virtual machines applied to cloud service, computer readable record medium and computer program product
CN110825562B (zh) 数据备份方法、装置、系统和存储介质
CN109739686A (zh) 一种多服务器热备份方法、系统、装置和存储介质
WO2018157605A1 (zh) 一种集群文件系统中消息传输的方法及装置
WO2020133473A1 (zh) 一种备份数据的方法、装置和系统
CN113986450A (zh) 一种虚拟机备份方法及装置
WO2016107219A1 (zh) 数据恢复方法及装置
CN105323271B (zh) 一种云计算系统以及云计算系统的处理方法和装置
JP6773345B1 (ja) フォールトトレラントシステム、サーバ、及びそれらの運用方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15861033

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15861033

Country of ref document: EP

Kind code of ref document: A1