CN112256481A - Data recovery method and system in agile development - Google Patents
Data recovery method and system in agile development Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000011084 recovery Methods 0.000 title claims abstract description 58
- 238000011161 development Methods 0.000 title claims abstract description 41
- 238000012360 testing method Methods 0.000 claims abstract description 59
- 230000008569 process Effects 0.000 claims abstract description 54
- 230000009191 jumping Effects 0.000 claims description 28
- 238000012545 processing Methods 0.000 claims description 7
- 238000002372 labelling Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 claims description 5
- 238000013500 data storage Methods 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 8
- 230000008859 change Effects 0.000 abstract description 2
- 238000004590 computer program Methods 0.000 description 9
- 238000003860 storage Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000003384 imaging method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000013523 data management Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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
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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113485871A (en) * | 2021-06-30 | 2021-10-08 | 南京壹进制信息科技有限公司 | Infinite snapshot method for oracle database |
Citations (6)
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 |
-
2020
- 2020-10-26 CN CN202011155979.1A patent/CN112256481B/en active Active
Patent Citations (6)
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)
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 |