Nothing Special   »   [go: up one dir, main page]

CN112256481A - Data recovery method and system in agile development - Google Patents

Data recovery method and system in agile development Download PDF

Info

Publication number
CN112256481A
CN112256481A CN202011155979.1A CN202011155979A CN112256481A CN 112256481 A CN112256481 A CN 112256481A CN 202011155979 A CN202011155979 A CN 202011155979A CN 112256481 A CN112256481 A CN 112256481A
Authority
CN
China
Prior art keywords
data
snapshot
copy
data copy
database
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.)
Granted
Application number
CN202011155979.1A
Other languages
Chinese (zh)
Other versions
CN112256481B (en
Inventor
张文强
孙伟
管文琦
王新明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huatai Securities Co ltd
Original Assignee
Huatai Securities Co ltd
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 Huatai Securities Co ltd filed Critical Huatai Securities Co ltd
Priority to CN202011155979.1A priority Critical patent/CN112256481B/en
Publication of CN112256481A publication Critical patent/CN112256481A/en
Application granted granted Critical
Publication of CN112256481B publication Critical patent/CN112256481B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention aims to provide a data recovery method in agile development, which solves the difficulty in using agile development data and recovers the data to any time point, and the method comprises the following steps: generating a data copy by snapshot at a key time point of a life cycle of the data copy; establishing a historical database according to the generated data copy; receiving a data recovery request; and calling a corresponding data copy from the historical database to perform data recovery on the target database according to the database recovery request. The invention solves the problem that data is difficult to reuse in the test process, and by making a snapshot at the key time point of the life cycle of the data copy to generate the data copy and establishing the historical database according to the generated data copy, the subsequent change does not affect the basic data and can return to any historical data version at any time, thereby indirectly saving the time for exporting the data from the production environment again.

Description

Data recovery method and system in agile development
Technical Field
The invention relates to the field of data recovery in agile development, in particular to a data recovery method and a data recovery system in agile development.
Background
Agile development takes the requirement evolution of users as a core, and adopts an iterative and progressive method to develop software. In agile development, a software project is cut into a plurality of sub-projects at the initial stage of construction, and the results of all the sub-projects are tested and have the characteristics of visibility, integration and operational use. In other words, a large project is divided into a plurality of small projects which are mutually connected but can also be independently operated, and the small projects are respectively completed, and the software is always in a usable state in the process.
With the rapid development of company business and the promotion of agile development, the iteration speed of the application version is obviously accelerated, and the frequency of testing by using different version data in development and testing is higher and higher. In agile development, code management, test case execution, version release and the like are basically automated and mature. For the replacement of test data of different versions or the simultaneous performance of a plurality of scene tests on one data, a manual lead-in and lead-out mode is still adopted, so that the test efficiency is greatly reduced.
According to the reflection of testers, the problems that data are difficult to multiplex, the data preparation cost is high and the like exist in the process of using a plurality of data versions for testing, so that the data recovery period is long, if data derived from production are used as basic data, the data cannot be restored to the basic data state after a plurality of tests, the testing efficiency is influenced, and a better solution scheme is not provided in the industry. Meanwhile, in the process of test development, when different projects are subjected to multi-branch parallel development and test, the problems of inconsistent library structures and data conflict can be caused.
Disclosure of Invention
The invention aims to provide a data recovery method and a data recovery system in agile development, which solve the difficulty in using agile development data and efficiently recover data to any time point in a time-saving manner.
In order to achieve the purpose, the invention is realized by adopting the following technical scheme:
in a first aspect, the present invention provides a data recovery method in agile development, including the following steps: generating a data copy by snapshot at a key time point of a life cycle of the data copy; establishing a historical database according to the generated data copy; receiving a data recovery request; and calling a corresponding data copy from the historical database to perform data recovery on the target database according to the database recovery request.
Further, the method for retrieving the corresponding data copy from the historical database for data recovery includes: the historical data copies are mounted when the data copies are rolled back, and/or the data copies are mounted to multiple servers when tested in parallel.
Further, the snapshot at the key time point of the life cycle of the data copy includes the following steps: step A: positioning a host and a mount point according to the IP; and B: c, determining whether the host has the mount snapshot, if so, skipping to the step C, otherwise, ending the process; and C: d, confirming whether the data copy is protected or not, if so, skipping to the step D, and if not, adding protection to the data copy; if the protection is successfully added, skipping to the step D, otherwise, ending the process; step D: stopping the target database, if the target database succeeds, jumping to the step E, otherwise, ending the process; step E: c, making a snapshot, if the snapshot is successful, jumping to the step F, otherwise, ending the process; step F: and starting the target database, and finishing the process after finishing the process.
Further, the mounting the historical data copy when the data copy is rolled back comprises the following steps: stopping the software environment before unloading the data snapshot; unloading the current data snapshot and mounting the target data snapshot; and starting the software environment after the data snapshot is mounted.
Further, the unloading the current data snapshot includes the following steps: step A2: positioning the host according to the IP; step B2: confirming whether the host has the mount snapshot, if so, jumping to the step C2, otherwise, ending the flow; step C2: obtaining the current snapshot, if the current snapshot is successful, jumping to the step D2, otherwise, ending the flow; step D2: stopping the target database, if the target database is successful, jumping to the step E2, otherwise, ending the flow; step E2: and unloading the snapshot, and finishing the process after the snapshot is finished.
Further, the unloading the current data snapshot includes the following steps: the mounting target data snapshot comprises the following steps: step A3: positioning the host according to the IP; step B3: confirming whether the host has the mount snapshot, if so, jumping to the step C3, otherwise, ending the flow; step C3: acquiring a mounting point, if so, jumping to the step D3, otherwise, ending the process; step D3: confirming whether the data copy is labeled, if so, jumping to the step E3, otherwise, acquiring the original label; if the original label is successfully acquired, jumping to step F3, otherwise, ending the process; step E3: labeling, if the labeling is successful, jumping to the step F3, otherwise, ending the flow; step F3: mounting the specified snapshot, if the specified snapshot is successful, jumping to the step G3, otherwise, ending the flow; step G3: and starting the target database, and finishing the process after finishing the process.
Further, the mounting the data copies to a plurality of servers when testing in parallel comprises the following steps: mounting the data copy to a server; and starting the software environment after the data copy is mounted.
Further, the method further comprises: according to the number of the parallel test scenes, preparing server resources capable of storing data copies; deploying a software environment for using the data copy according to the server resource capable of storing the data copy; the server resources capable of storing the Data copies comprise servers which are deployed with CDM (code Data Management) product drivers and open ISCSI (Internet Small Computer System Interface) services.
In a second aspect, the present invention provides a data recovery system in agile development, the system comprising: a copy generation module: the system comprises a data copy generating module, a data storage module and a data processing module, wherein the data copy generating module is used for generating a data copy by snapshot at a key time point of a life cycle of the data copy; a database module: the target database is established according to the generated data copy; a request receiving module: for receiving a data recovery request; a data recovery module: and the data recovery module is used for calling a corresponding data copy from the target database for data recovery according to the database recovery request.
Further, the request receiving module comprises an imaging page, and the imaging page is used for realizing storage and mounting use of data versions, controlling starting and stopping of the database and displaying topological relations among a plurality of version data.
Compared with the prior art, the invention has the following beneficial effects:
1. the method provided by the invention solves the problem that data is difficult to reuse in the test process, and by making a snapshot at the key time point of the life cycle of the data copy to generate the data copy and establishing the historical database according to the generated data copy, the subsequent change does not affect the basic data and can return to any historical data version at any time, thereby indirectly saving the time for exporting data from the production environment again.
2. The invention solves the problems of inconsistent library structures and data conflicts caused by multi-branch parallel development and test of different projects in the test development process. When the parallel test is carried out, the data copies are mounted to the prepared servers, so that the same data can be mounted into a plurality of copies for different project branches, the data copies are isolated from each other, manual input is not needed, and the test efficiency is improved.
Drawings
FIG. 1 is a flow chart of a method for data recovery in agile development of the present invention;
FIG. 2 is a snapshot process;
FIG. 3 is a data version rollback scenario;
FIG. 4 is an offload snapshot process;
FIG. 5 is a mount snapshot process;
FIG. 6 is a parallel test scenario.
Detailed Description
The invention is further described below with reference to the accompanying drawings. The following examples are only for illustrating the technical solutions of the present invention more clearly, and the protection scope of the present invention is not limited thereby.
The overall concept of the invention is as follows: by carrying out secondary development on a product with CDM characteristics (the product has the functions of snapshotting one part of data, mounting the snapshotted data to a server, unloading the snapshotted data and the like), and opening the operation between the product and a database, a user can back up the current database (snapshotting) and restore the historical database (mounting the snapshotted data and unloading the snapshotted data) by one key, and the capability is required during data restoration in agile development, so that a system for secondary development is applied to agile development, and rapid restoration, parallel testing and the like of data are assisted; without departing from the technical principle of the present invention, several modifications and variations can be made, and these modifications and variations should also be regarded as the protective scope of the present invention.
The first embodiment is as follows:
the embodiment provides a data recovery method and a data recovery system in agile development, the method is based on a product with CDM (data copy management) technical characteristics, server resources capable of storing data copies are prepared according to the number of parallel test scenes, a required environment is deployed, snapshots are taken at key time points of a life cycle of the data copies, only historical data copies need to be mounted when the data copies return, and the data copies need to be mounted to a plurality of prepared servers during parallel test. The method uses the CDM product in a mode of calling the API of the CDM product, three core technologies of generating the snapshot, unloading the snapshot and mounting the snapshot are provided for the CDM product, and data are processed (producing the snapshot, unloading the snapshot and mounting the snapshot) through the CDM product.
With reference to fig. 1, the method and system for recovering data in agile development of the present invention includes the following steps:
step 1: according to the number of the parallel test scenes, preparing server resources capable of storing data copies;
step 2: deploying a software environment using the data copy according to the resources prepared in the step 1;
and step 3: taking a snapshot at a key time point of a life cycle of the data copy;
and 4, step 4: different operations are selected according to the required functions, namely only historical data copies need to be mounted when the data copies return, and the data copies need to be mounted to a plurality of prepared servers when parallel testing is carried out.
Specifically, the server resource capable of storing a Data Copy in step 1 refers to a server that has deployed a CDM (Copy Data Management) product driver and opened an ISCSI (Internet Small Computer System Interface) service.
Specifically, the software environment for deploying and using the data copy in step 2 refers to installation of database software (MySQL, Oracle, etc.) or other software for managing data.
Specifically, the snapshot at the key time point of the life cycle of the data copy in step 3 refers to that when the current data state needs to be preserved, the data is backed up by using a snapshot technology, and a specific snapshot process is shown in fig. 2.
Specifically, the step 4 selects different operations according to the required functions, and the specific operations are as follows:
and if the data version is backed off, unloading the current data snapshot and mounting the target data snapshot, automatically stopping the software deployed in the step 2 before unloading, and automatically starting the software deployed in the step 2 after unloading. In conjunction with fig. 3, it is assumed that 5 changes have occurred to the data accumulation in one iteration of month 4, where the two changes are large, and after the test for the 3.0 version data on day 12 is finished, the test for the 1 day version data is continued. By using the invention, only the current 3.0 data version is simply unloaded, and the 1.0 data version is mounted, wherein the specific flow of unloading the snapshot is shown in figure 4, and the specific flow of mounting the snapshot is shown in figure 5;
and if the parallel test is carried out, mounting the data copies to the plurality of servers prepared in the step 1, and automatically starting the software deployed in the step 2 after mounting. With reference to fig. 6, it is assumed that in 8 days, the tester temporarily receives the notification that the test of different scenes needs to be performed on the data of 6 days, and restores the data after the test is completed, and continues the test for 10 days. By using the invention, the 2.0 version data can be simultaneously mounted to a plurality of servers for parallel test, and after the test is finished, the version 2.1/2.2 can be deleted without influencing the version 2.0, and the specific flow of the mounting snapshot is as shown in figure 5.
The method provided by the embodiment solves the problem that data is difficult to reuse in the test process, and by making a snapshot at the key time point of the life cycle of the data copy to generate the data copy and establishing the historical database according to the generated data copy, subsequent changes do not affect basic data and can return to any historical data version at any time, so that the time for exporting data from the production environment again is indirectly saved. Meanwhile, the problems of inconsistent library structures and data conflicts caused by multi-branch parallel development and testing of different projects in the test development process are solved. When the parallel test is carried out, the data copies are mounted to the prepared servers, so that the same data can be mounted into a plurality of copies for different project branches, the data copies are isolated from each other, manual input is not needed, and the test efficiency is improved.
Example two:
the embodiment provides a data recovery method in agile development, which comprises the following steps:
generating a data copy by snapshot at a key time point of a life cycle of the data copy;
establishing a historical database according to the generated data copy;
receiving a data recovery request; and calling a corresponding data copy from the historical database to perform data recovery on the target database according to the database recovery request.
Specifically, the method for retrieving the corresponding data copy from the historical database for data recovery includes: the historical data copies are mounted when the data copies are rolled back, and/or the data copies are mounted to multiple servers when tested in parallel.
Specifically, as shown in fig. 2, the snapshot at the key time point of the life cycle of the data copy includes the following steps:
step A: positioning a host and a mount point according to the IP;
and B: c, determining whether the host has the mount snapshot, if so, skipping to the step C, otherwise, ending the process;
and C: d, confirming whether the data copy is protected or not, if so, skipping to the step D, and if not, adding protection to the data copy;
if the protection is successfully added, skipping to the step D, otherwise, ending the process;
step D: stopping the target database, if the target database succeeds, jumping to the step E, otherwise, ending the process;
step E: c, making a snapshot, if the snapshot is successful, jumping to the step F, otherwise, ending the process;
step F: and starting the target database, and finishing the process after finishing the process.
Specifically, as shown in fig. 3, the mounting the historical data copy when the data copy rolls back includes the following steps:
stopping the software environment before unloading the data snapshot;
unloading the current data snapshot and mounting the target data snapshot;
and starting the software environment after the data snapshot is mounted.
Specifically, the unloading the current data snapshot includes the following steps:
the method comprises the following steps: positioning the host according to the IP;
step two: c, determining whether the host has the mount snapshot, if so, skipping to the step C, otherwise, ending the process;
step three: obtaining the current snapshot, if the current snapshot is successful, jumping to the step D, otherwise ending the process;
step four: stopping the target database, if the target database succeeds, jumping to the step E, otherwise, ending the process;
step five: and unloading the snapshot, and finishing the process after the snapshot is finished.
Specifically, as shown in fig. 5, the mount target data snapshot includes the following steps:
the method comprises the following steps: positioning the host according to the IP;
step two: c, determining whether the host has the mount snapshot, if so, skipping to the step C, otherwise, ending the process;
step three: acquiring a mounting point, if so, skipping to the step D, otherwise, ending the process;
step four: confirming whether the data copy is labeled or not, if so, skipping to the step E, otherwise, acquiring the original label; if the original label is successfully acquired, skipping to the step F, otherwise, ending the process;
step five: labeling, if the labeling is successful, jumping to the step F, otherwise, ending the process;
step six: mounting the specified snapshot, if the specified snapshot is successful, jumping to the step G, otherwise, ending the process;
step seven: and starting the target database, and finishing the process after finishing the process.
Specifically, the mounting of the data copies to the plurality of servers during the parallel test includes the following steps: mounting the data copy to a server; and starting the software environment after the data copy is mounted.
Specifically, the method further comprises: according to the number of the parallel test scenes, preparing server resources capable of storing data copies; deploying a software environment for using the data copy according to the server resource capable of storing the data copy; the server resources capable of storing the Data copies comprise servers which are deployed with CDM (code Data Management) product drivers and open ISCSI (Internet Small Computer System Interface) services. Deploying a software environment that uses copies of data refers to installing database software (MySQL, Oracle, etc.) or other software that manages data.
And if the data version is backed off, unloading the current data snapshot and mounting the target data snapshot, automatically stopping the deployed software before unloading, and automatically starting the deployed software after unloading. In conjunction with fig. 3, it is assumed that 5 changes have occurred to the data accumulation in one iteration of month 4, where the two changes are large, and after the test for the 3.0 version data on day 12 is finished, the test for the 1 day version data is continued. According to the embodiment, only the current 3.0 data version needs to be simply unloaded, and the 1.0 data version is mounted, wherein the specific flow of unloading the snapshot is shown in fig. 4, and the specific flow of mounting the snapshot is shown in fig. 5;
if the test is carried out in parallel, the data copies are mounted to a plurality of prepared servers, and the deployed software is automatically started after mounting. With reference to fig. 6, it is assumed that in 8 days, the tester temporarily receives the notification that the test of different scenes needs to be performed on the data of 6 days, and restores the data after the test is completed, and continues the test for 10 days. By using the invention, the 2.0 version data can be simultaneously mounted to a plurality of servers for parallel test, and after the test is finished, the version 2.1/2.2 can be deleted without influencing the version 2.0, and the specific flow of the mounting snapshot is as shown in figure 5.
The method provided by the embodiment solves the problem that data is difficult to reuse in the test process, and by making a snapshot at the key time point of the life cycle of the data copy to generate the data copy and establishing the historical database according to the generated data copy, subsequent changes do not affect basic data and can return to any historical data version at any time, so that the time for exporting data from the production environment again is indirectly saved. Meanwhile, the problems of inconsistent library structures and data conflicts caused by multi-branch parallel development and testing of different projects in the test development process are solved. When the parallel test is carried out, the data copies are mounted to the prepared servers, so that the same data can be mounted into a plurality of copies for different project branches, the data copies are isolated from each other, manual input is not needed, and the test efficiency is improved.
Example three:
the invention provides a data recovery system in agile development, which comprises:
a copy generation module: the system comprises a data copy generating module, a data storage module and a data processing module, wherein the data copy generating module is used for generating a data copy by snapshot at a key time point of a life cycle of the data copy;
a database module: the historical database is established according to the generated data copy;
a request receiving module: for receiving a data recovery request;
a data recovery module: and the data recovery module is used for calling a corresponding data copy from the target database according to the database recovery request to perform data recovery on the target database.
The request receiving module comprises an imaging page, and the imaging page is used for realizing the storage and mounting use of data versions, controlling the starting and stopping of the database and displaying the topological relation among a plurality of version data.
The hardware of the system provided by the embodiment comprises a universal server, generated backup data is stored in a software server for installing management data, and software for managing the data is installed on an independent server; the software is transmitted through a network, namely ISCSI.
The commercial CDM products were used primarily in two respects at the beginning of the design:
1. data flow from the production environment to the test environment. Copying production data to a research and development and test environment for development or test, and realizing data immediate reuse;
2. and preparing a super large database. The backup mode of 'initial full amount + permanent increment' is adopted, and the backup time window of the super-large database is greatly shortened.
The 'snapshot + virtualization' function of CDM products has the ability to quickly recover a copy of data. Therefore, the embodiment is used for a fast recovery scenario of data in CI/CD in combination with the technical advantages of CDM, aiming at the problems of data use in company agile development.
The main technical key points of the data recovery system in agile development provided by the embodiment are as follows:
1. one-key storage and one-key mounting use of data versions can be realized through the graphical page, the database is automatically started and stopped, the topological relation among a plurality of version data is displayed, and the like. The embodiment provides a web page for the user to realize the above operation.
2. Reconstructing and packaging REST API, packaging complex business logic and database management operation into 5 extremely simple and friendly interfaces: logging in, taking a snapshot, mounting, unloading and checking a snapshot version. Developers do not need to know the technical principle of the bottom layer, and can realize the rapid backup and recovery of data in the CI/CD only by simple calling, thereby greatly reducing the use threshold.
Example four:
the embodiment of the invention also provides a data recovery device in agile development, which comprises a processor and a storage medium;
the storage medium is used for storing instructions;
the processor is configured to operate in accordance with the instructions to perform the steps of the method of:
generating a data copy by snapshot at a key time point of a life cycle of the data copy;
establishing a historical database according to the generated data copy;
receiving a data recovery request; and calling a corresponding data copy from the historical database to perform data recovery on the target database according to the database recovery request.
Example five:
an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the following method steps:
generating a data copy by snapshot at a key time point of a life cycle of the data copy;
establishing a historical database according to the generated data copy;
receiving a data recovery request; and calling a corresponding data copy from the historical database to perform data recovery on the target database according to the database recovery request.
It should be noted that the implementation environment of the present invention does not have a standard implementation environment, and can be implemented as long as corresponding software is installed on the server, and the applicable scenarios are not limited to the following two scenarios: a data version rollback scenario and a parallel test scenario, so the scope of the present invention cannot be limited by the software environment and the applicable scenarios in the embodiments.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above description is only a preferred embodiment of the present invention, and it should be noted that, for those skilled in the art, several modifications and variations can be made without departing from the technical principle of the present invention, and these modifications and variations should also be regarded as the protection scope of the present invention.

Claims (10)

1. A data recovery method in agile development is characterized by comprising the following steps:
the method comprises the steps that a data copy is generated by snapshot of data at the current moment at a key time point of a life cycle of the data copy;
establishing a historical database according to the generated data copy;
receiving a data recovery request;
and calling a corresponding data copy from the historical database to perform data recovery on the target database according to the database recovery request.
2. The method of claim 1, wherein the method of retrieving a corresponding copy of data from the historical database for data recovery comprises:
the historical data copies are mounted when the data copies are rolled back, and/or the data copies are mounted to multiple servers when tested in parallel.
3. The method for recovering data in agile development according to claim 2, wherein said snapshotting at the key time point of the data copy life cycle comprises the steps of:
step A: positioning a host and a mount point according to the IP;
and B: c, determining whether the host has the mount snapshot, if so, skipping to the step C, otherwise, ending the process;
and C: d, confirming whether the data copy is protected or not, if so, skipping to the step D, and if not, adding protection to the data copy; if the protection is successfully added, skipping to the step D, otherwise, ending the process;
step D: stopping the target database, if the target database succeeds, jumping to the step E, otherwise, ending the process;
step E: taking a snapshot of the data in the target database, if the data is successful, jumping to the step F, otherwise, ending the process;
step F: and starting the target database, and finishing the process after finishing the process.
4. The method for recovering data in agile development according to claim 2, wherein said mounting the historical data copy when the data copy rolls back comprises the following steps:
stopping the software environment before unloading the data snapshot;
unloading the current data snapshot and mounting the target data snapshot;
and starting the software environment after the data snapshot is mounted.
5. The method of claim 4, wherein the unloading the current data snapshot comprises the following steps:
step A2: positioning the host according to the IP;
step B2: confirming whether the host has the mount snapshot, if so, jumping to the step C2, otherwise, ending the flow;
step C2: obtaining the current snapshot, if the current snapshot is successful, jumping to the step D2, otherwise, ending the flow;
step D2: stopping the target database, if the target database is successful, jumping to the step E2, otherwise, ending the flow;
step E2: and unloading the snapshot, and finishing the process after the snapshot is finished.
6. The method of claim 4, wherein the unloading the current data snapshot comprises the following steps: the mounting target data snapshot comprises the following steps:
step A3: positioning the host according to the IP;
step B3: confirming whether the host has the mount snapshot, if so, jumping to the step C3, otherwise, ending the flow;
step C3: acquiring a mounting point, if so, jumping to the step D3, otherwise, ending the process;
step D3: confirming whether the data copy is labeled, if so, jumping to the step E3, otherwise, acquiring the original label; if the original label is successfully acquired, jumping to step F3, otherwise, ending the process;
step E3: labeling, if the labeling is successful, jumping to the step F3, otherwise, ending the flow;
step F3: mounting the specified snapshot, if the specified snapshot is successful, jumping to the step G3, otherwise, ending the flow;
step G3: and starting the target database, and finishing the process after finishing the process.
7. The method of claim 2, wherein the step of mounting the data copies to the plurality of servers during the parallel test comprises the steps of:
mounting the data copy to a server;
and starting the software environment after the data copy is mounted.
8. The method of claim 1, further comprising: according to the number of the parallel test scenes, preparing server resources capable of storing data copies;
deploying a software environment for using the data copy according to the server resource capable of storing the data copy;
the server resources that can store the data copies include servers that have deployed data copy management product drivers and open internet small computer system interface services.
9. A data recovery system in agile development, the system comprising:
a copy generation module: the system comprises a data copy generating module, a data storage module and a data processing module, wherein the data copy generating module is used for generating a data copy by snapshot at a key time point of a life cycle of the data copy;
a database module: the target database is established according to the generated data copy;
a request receiving module: for receiving a data recovery request;
a data recovery module: and the data recovery module is used for calling a corresponding data copy from the historical database according to the database recovery request to perform data recovery on the target database.
10. The system according to claim 9, wherein the request receiving module includes a graphical page, and the graphical page is used for saving and mounting data versions, controlling start and stop of a database, and displaying topological relationships among data of multiple versions.
CN202011155979.1A 2020-10-26 2020-10-26 Data recovery method and system in agile development Active CN112256481B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011155979.1A CN112256481B (en) 2020-10-26 2020-10-26 Data recovery method and system in agile development

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011155979.1A CN112256481B (en) 2020-10-26 2020-10-26 Data recovery method and system in agile development

Publications (2)

Publication Number Publication Date
CN112256481A true CN112256481A (en) 2021-01-22
CN112256481B CN112256481B (en) 2024-09-20

Family

ID=74262098

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011155979.1A Active CN112256481B (en) 2020-10-26 2020-10-26 Data recovery method and system in agile development

Country Status (1)

Country Link
CN (1) CN112256481B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113485871A (en) * 2021-06-30 2021-10-08 南京壹进制信息科技有限公司 Infinite snapshot method for oracle database

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120130949A1 (en) * 2010-11-22 2012-05-24 Bluearc Uk Limited File Cloning and De-Cloning in a Data Storage System
CN105487977A (en) * 2015-11-30 2016-04-13 北京锐安科技有限公司 Agility-oriented automatic test management system and method
CN107229540A (en) * 2017-06-06 2017-10-03 贵州易鲸捷信息技术有限公司 A kind of database restoring method and system based on time point
CN107491390A (en) * 2017-08-15 2017-12-19 深圳市慧择时代科技有限公司 The method and device of replacement test environment configuration information
CN109325075A (en) * 2018-08-30 2019-02-12 黄疆 A kind of timely carry recovery system of Oracle based on timed backup and method
CN110851302A (en) * 2019-10-31 2020-02-28 上海爱数信息技术股份有限公司 Database information backup method and database information recovery method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120130949A1 (en) * 2010-11-22 2012-05-24 Bluearc Uk Limited File Cloning and De-Cloning in a Data Storage System
CN105487977A (en) * 2015-11-30 2016-04-13 北京锐安科技有限公司 Agility-oriented automatic test management system and method
CN107229540A (en) * 2017-06-06 2017-10-03 贵州易鲸捷信息技术有限公司 A kind of database restoring method and system based on time point
CN107491390A (en) * 2017-08-15 2017-12-19 深圳市慧择时代科技有限公司 The method and device of replacement test environment configuration information
CN109325075A (en) * 2018-08-30 2019-02-12 黄疆 A kind of timely carry recovery system of Oracle based on timed backup and method
CN110851302A (en) * 2019-10-31 2020-02-28 上海爱数信息技术股份有限公司 Database information backup method and database information recovery method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113485871A (en) * 2021-06-30 2021-10-08 南京壹进制信息科技有限公司 Infinite snapshot method for oracle database
CN113485871B (en) * 2021-06-30 2024-05-24 航天壹进制(江苏)信息科技有限公司 Infinite snapshot method of oracle database

Also Published As

Publication number Publication date
CN112256481B (en) 2024-09-20

Similar Documents

Publication Publication Date Title
US20220114067A1 (en) Systems and methods for instantiation of virtual machines from backups
CN106407356B (en) Data backup method and device
CN103810058B (en) Backup method, equipment and system for virtual machine
US9098439B2 (en) Providing a fault tolerant system in a loosely-coupled cluster environment using application checkpoints and logs
WO2008092912A1 (en) System and method of error recovery for backup applications
US20120054477A1 (en) Providing a backup service from a remote backup data center to a computer through a network
CN113656149B (en) Application processing method and device and related equipment
CN113886143B (en) Virtual machine continuous data protection method and device and data recovery method and device
US20070043973A1 (en) Isolating and storing configuration data for disaster recovery for operating systems providing physical storage recovery
CN112506616B (en) System and method for achieving cross-cloud quick recovery of virtual machine based on cloud platform volume
CN110825546A (en) Recovery method, system and equipment terminal for high-availability database cluster
CN113672350A (en) Application processing method and device and related equipment
US20130086572A1 (en) Generation apparatus, generation method and computer readable information recording medium
CN109313631B (en) Secure removal of sensitive data
CN112256481A (en) Data recovery method and system in agile development
CN114328009A (en) Unified disaster recovery backup method and device for heterogeneous database based on virtualization and snapshot
CN109376036A (en) A kind of method and apparatus for backup virtual machine
CN115098300B (en) Database backup method, disaster recovery method, device and equipment
CN117785546A (en) Database backup method, system and computing device cluster
CN115981921A (en) Backup method
JP2010152707A (en) Backup method of database and database system
CN113726540B (en) Network element processing method and device, electronic equipment and storage medium
CN106970860B (en) System and method for reproducing centros 7 operating system fault
US11977459B2 (en) Techniques for accelerated data recovery
US12056013B2 (en) Efficient management of specialized control files used for backup restore

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
GR01 Patent grant
GR01 Patent grant