Data backup method and device, equipment, storage medium and product
By obtaining the operating environment, data changes and data characteristic information of the data to be backed up, the target data backup strategy and frequency are determined, and the problem of inability to intelligently classify backup in the existing technology is solved, and efficient and flexible data backup is achieved, improving the improvement of Backup efficiency and data security.
Patent Information
- Application Number
- CN202411258102.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-09
- Publication Date
- 2025-02-11
AI Technical Summary
The existing technology cannot intelligently classify and backup according to the importance of data and access frequency, resulting in low backup efficiency, slow recovery speed and insufficient data security. Especially under the high dynamics and elastic scalability characteristics of containerized applications, traditional data backup and recovery plans face many challenges.
By obtaining the operating environment, data changes and data characteristic information of the business application to be backed up, the target data backup strategy and data backup frequency are determined, and distributed storage and preset encryption algorithms are used to improve backup efficiency and security.
It realizes reasonable data backup strategies and frequency selection based on data characteristics and business needs, improves backup efficiency and recovery speed, reduces the time and resources required for backup, and improves data security and utilization of computing resources.
Smart Images

Figure CN119415310A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to the field of computer technology, and in particular to a data backup method, device, equipment, storage medium and product. Background Art
[0002] With the rapid development of information technology, the amount of data has shown explosive growth, and data security has become the focus of attention for enterprises and individuals. As an important means to ensure data security, data backup is becoming increasingly important.
[0003] Existing backup technologies mainly include regular full backup and incremental backup. They can meet the needs of data security to a certain extent, but there are still problems such as low backup efficiency, slow recovery speed, and insufficient data security. In existing technical solutions, backup platforms usually adopt a single backup strategy, which cannot intelligently classify and back up data according to its importance and access frequency. In addition, the storage of backup data usually lacks sufficient security and is vulnerable to malicious attacks and data leakage. With the rapid development of cloud computing and cloud native technologies, containerized applications have become the mainstream way for enterprises to build, deploy and manage applications. However, the high dynamics and elastic scalability of containerized applications make traditional data backup and recovery solutions face many challenges. Although the existing container backup solutions can meet the needs to a certain extent, they still need to be improved in terms of backup efficiency, recovery speed, data consistency, etc. Therefore, how to make data backup more efficient and flexible has become an urgent problem to be solved. Summary of the invention
[0004] The embodiments of the present invention provide a data backup method, device, equipment, storage medium and product to solve the problem in the prior art that intelligent classification backup strategies cannot be performed according to the importance and access frequency of data.
[0005] In a first aspect, an embodiment of the present invention provides a data backup method, wherein the method comprises:
[0006] Obtain the business application operating environment, data changes and data feature information corresponding to the data to be backed up;
[0007] Determine the target data backup strategy and data backup frequency corresponding to the data to be backed up according to the business application operating environment, the data change situation and the data feature information;
[0008] The data to be backed up is backed up according to the data backup frequency and using the target data backup strategy.
[0009] In a second aspect, an embodiment of the present invention further provides a data backup device, wherein the device comprises:
[0010] The information acquisition module is used to obtain the business application operating environment, data change status and data feature information corresponding to the data to be backed up;
[0011] A strategy determination module, used to determine a target data backup strategy corresponding to the data to be backed up according to the business application operating environment and the data change situation;
[0012] A frequency determination module, used to determine the data backup frequency corresponding to the data to be backed up according to the data characteristic information;
[0013] The data backup module is used to back up the data to be backed up according to the data backup frequency and adopt the target data backup strategy.
[0014] In a third aspect, an embodiment of the present invention further provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, a data backup method as described in any one of the embodiments of the present invention is implemented.
[0015] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements a data backup method as described in any one of the embodiments of the present invention.
[0016] In a fifth aspect, an embodiment of the present invention further provides a computer program product, including a computer program, which, when executed by a processor, implements a data backup method as described in any one of the embodiments of the present invention.
[0017] In the embodiment of the present invention, by obtaining the business application operating environment, data change status and data feature information corresponding to the data to be backed up, and determining the target data backup strategy corresponding to the data to be backed up according to the business application operating environment and data change status, the technical problem that only a single backup strategy can be adopted in the prior art and the diverse needs of different users cannot be met is solved, and a reasonable data backup frequency and target data backup strategy are adopted for backup according to the data characteristics and business needs of the data, thereby meeting the diverse backup needs of users and improving the user experience, and avoiding the problem of large data transmission volume caused by adopting a full backup method each time, thereby reducing the data transmission volume of the data to be backed up, improving backup efficiency, and reducing the time and resources required for backup; and automatically adjusting the corresponding data backup frequency based on the data feature information, while ensuring the effective backup of the data, improving the utilization rate of the computing resources and storage resources used for backup. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.
[0019] Figure 1 A flow chart of a data backup method provided by an embodiment of the present invention;
[0020] Figure 2 Another data backup method flow chart provided by the embodiment of the present invention;
[0021] Figure 3 A schematic diagram of the structure of a Docker container provided in this embodiment;
[0022] Figure 4 A schematic diagram of the structure of a data backup device provided in this embodiment;
[0023] Figure 5 It is a structural schematic diagram of an electronic device for implementing a data backup method according to an embodiment of the present invention. DETAILED DESCRIPTION
[0024] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0025] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0026] The acquisition, storage, use, and processing of data in the technical solution of this application comply with the relevant provisions of national laws and regulations.
[0027] It should be noted that in the embodiments of the present application, certain software, components, models and other existing solutions in the industry may be mentioned, and they should be regarded as exemplary. Their purpose is only to illustrate the feasibility of implementing the technical solution of the present application, but it does not mean that the applicant has or will necessarily use the solution.
[0028] In one embodiment, Figure 1 The present invention provides a flowchart of a data backup method. The present invention is applicable to the case where the backup data is to be backed up. The method can be executed by a data backup device. The data backup device can be implemented in the form of hardware and / or software. The data backup device can be configured in an electronic device. Figure 1 As shown, the method includes:
[0029] S110: Obtain the business application operating environment, data change status, and data feature information corresponding to the data to be backed up.
[0030] Among them, the data to be backed up can be understood as data that needs to be backed up, which is data that has not yet been copied to another storage medium, so that it can be restored and used when there is a problem with the original data (such as loss, damage, tampering, etc.). The business application operating environment can be understood as the environmental conditions that support the operation of business applications. In the actual operation process, the business application operating environment can at least include containers and non-containers. For different business application operating environments, there are different operating environment performance parameters, such as system load and network conditions. Data changes can be understood as the modification, update or deletion of data within a certain period of time. Data changes can include at least large changes and small changes. Different data backup methods can be used for different data changes. Data feature information can be understood as information indicating the nature and characteristics of data. For example, data feature information can be real-time information, non-real-time information, long-term storage, short-term storage, etc.
[0031] In an embodiment, the data to be backed up can be obtained to determine the corresponding business application operating environment, data change situation and data feature information. In the actual operation process, the progress information of the data to be backed up can be checked to determine whether the corresponding business application operating environment is a container or a non-container. Then, the data change situation of the data to be backed up is analyzed to determine the data feature information of the data to be backed up.
[0032] S120: Determine a target data backup strategy corresponding to the data to be backed up according to the business application operating environment and data changes.
[0033] The target data backup strategy can be understood as a backup method for the data to be backed up. Exemplarily, the target data backup strategy can at least include a container incremental backup strategy, a container differential backup strategy, a non-container incremental backup strategy, and a non-container differential backup strategy.
[0034] In an embodiment, after determining the business application operating environment, data changes and data feature information, the application architecture corresponding to the data to be backed up can be determined according to the business operating environment, and the target data backup strategy can be determined according to the business operating environment and the data changes. In the actual operation process, it can be determined that the application architecture corresponding to the data to be backed up according to the business operating environment is a container or a non-container, the operating environment performance parameters in the business application environment are determined, the number of data blocks to be backed up corresponding to the data to be backed up is determined according to the data changes, and the target data backup strategy is determined according to the operating environment performance parameters, the number of data blocks to be backed up and the application architecture. Exemplarily, the available resources of the operating environment can be determined according to the business application environment, and the resource threshold corresponding to the available resources of the operating environment can be set; at the same time, the number of data blocks to be backed up is determined according to the data changes. The greater the data changes, the greater the number of data blocks to be backed up, and the data block number threshold corresponding to the number of data blocks to be backed up is determined. The size relationship between the number of data blocks to be backed up and the data block number threshold, as well as the size relationship between the available resources of the operating environment and the resource threshold, are determined respectively. When it is determined that the number of data blocks to be backed up reaches the pre-configured data block number threshold, and the available resources in the operating environment reach the pre-configured resource threshold, it can be considered that the data changes of the data to be backed up are large. When the application architecture is a container, the target data backup strategy is the container differential backup strategy; when the application architecture is a non-container, the target data backup strategy is the non-container differential backup strategy. When the number of data blocks to be backed up does not reach the pre-configured data block number threshold, or the available resources in the operating environment do not reach the pre-configured resource threshold, it can be considered that the data changes of the data to be backed up are small. When the application architecture is determined to be a container, the target data backup strategy can be determined to be the container incremental backup strategy; when the application architecture is determined to be a non-container, the target data backup strategy can be determined to be the non-container incremental backup strategy.
[0035] S130: Determine a data backup frequency corresponding to the data to be backed up according to the data characteristic information.
[0036] The data backup frequency can be understood as the period of data backup within a certain time range. Generally speaking, the data backup frequency can be determined according to the data feature information. In one embodiment, the data backup frequency can include but is not limited to once per hour, once per day, and once per 30 days.
[0037] In an embodiment, after the data characteristic information is determined, the data backup frequency of the data to be backed up can be determined according to the data characteristic information. In the actual operation process, the corresponding relationship between the data characteristic information and the data backup frequency can be preset. For example, when the data characteristic information corresponds to real-time data, the data backup frequency can be higher; when the data characteristic information corresponds to non-real-time data, the data backup frequency can be lower.
[0038] S140 , backing up the data to be backed up according to the data backup frequency and using the target data backup strategy.
[0039] In an embodiment, after determining the target data backup strategy, the target data backup strategy can be used to perform data backup on the data to be backed up according to the data backup frequency. Exemplarily, when the data backup frequency is once per hour, the target data backup strategy can be used to perform data backup on the data to be backed up every hour. In the actual operation process, when the target data backup strategy is a non-container differential backup strategy, all data blocks that have changed since the last full backup can be determined, and the changed data blocks can be updated and backed up; when the target data backup strategy is a non-container incremental backup strategy, all data blocks that have changed since the last incremental backup can be determined, and the changed data blocks can be updated and backed up. When the target data backup strategy is a container differential backup strategy or a container incremental backup strategy, the host environment can be backed up in the form of an image file according to the data backup frequency, and then the container image corresponding to the data to be backed up can be backed up, and the persistent data and running data in the data to be backed up can be extracted respectively, and the persistent data can be backed up through cloud storage or block storage, and then the running data can be backed up through a pre-set container backup method. In one embodiment, the container backup method can at least include Docker container backup, Kubernetes container backup, and specific application container backup.
[0040] The embodiments of the present invention, by obtaining the business application operating environment, data change status and data feature information corresponding to the data to be backed up, determine the target data backup strategy corresponding to the data to be backed up according to the business application operating environment and data change status, thereby solving the technical problem that only a single backup strategy can be adopted in the prior art and the diverse needs of different users cannot be met, and realizes backup using a reasonable data backup frequency and a target data backup strategy according to the data characteristics and business needs of the data, thereby meeting the diverse needs of users for backup and improving the user experience, and avoiding the problem of large data transmission volume caused by adopting a full backup method each time, thereby reducing the data transmission volume of the data to be backed up, improving backup efficiency, and reducing the time and resources required for backup; and automatically adjusting the corresponding data backup frequency based on the data feature information, while ensuring effective data backup, improving the utilization rate of computing resources and storage resources used for backup.
[0041] In one embodiment, the data backup method further includes:
[0042] The data to be backed up is stored in at least two backup nodes in a distributed storage manner; wherein each backup node includes independent storage capacity and computing capacity.
[0043] The distributed storage method can be understood as a storage method that stores data in multiple independent devices or nodes. The backup node can be understood as a node used for data backup. Each backup node includes independent storage capacity and computing capacity.
[0044] In the embodiment, a distributed storage method can be used to store the data to be backed up in multiple backup nodes. That is to say, when any backup node fails, it will not affect the data storage of other backup nodes, avoiding business interruption; at the same time, when the client can access data in different backup nodes at the same time, the efficiency and speed of data access are improved. In addition, the use of a distributed storage method to store the data to be backed up can ensure that the data is evenly distributed on each backup node, avoiding the situation where some backup nodes are overloaded; and through the distributed storage method, the high reliability of the data is guaranteed, which facilitates the expansion and upgrade of the system.
[0045] In one embodiment, the data backup method further includes:
[0046] The preset encryption algorithm is used to encrypt the data to be backed up, and the encrypted data to be backed up is stored.
[0047] The preset encryption algorithm can be understood as a pre-set encryption algorithm used to encrypt the data to be backed up. In one embodiment, the preset encryption algorithm can include but is not limited to a hash algorithm, a message digest algorithm (Message Digest Algorithm MD5), and the like.
[0048] In an embodiment, a preset encryption algorithm may be used for encryption, and the encrypted data to be backed up may be stored. In this embodiment, by using a preset encryption algorithm to store the data to be backed up, the data to be backed up may be effectively prevented from being tampered with or leaked, thereby improving the security of the data to be stored.
[0049] In one embodiment, Figure 2 This is another data backup method flow chart provided by an embodiment of the present invention. This embodiment further illustrates a data backup method based on the above embodiment. Figure 2 As shown, the method includes:
[0050] S210: Obtain the business application operating environment, data change status, and data feature information corresponding to the data to be backed up.
[0051] S220: Determine a candidate data backup strategy corresponding to the data to be backed up according to the operating environment performance parameters and data change conditions corresponding to the business application operating environment.
[0052] The operating environment performance parameter refers to a parameter used to evaluate the operating performance of the system. For example, the operating environment performance parameter may include but is not limited to system load and network status. The candidate data backup strategy may be understood as an alternative data backup strategy.
[0053] In one embodiment, data characteristics include: data importance and data access frequency; business application operating environment includes: container and non-container; operating environment performance parameters include: system load and network status.
[0054] Among them, data importance can be understood as the importance of data. For different data to be backed up, the priority of importance can be pre-divided. Data importance can be set in advance according to user needs. In the actual operation process, data importance can be divided according to the business impact of data. For example, the data to be backed up that directly affects the business process can be regarded as key business data, such as transaction data; the data to be backed up that has a greater impact on the business can be regarded as important business data, such as customer preference data; the data to be backed up that has a smaller impact on business operations can be regarded as general business data, such as work reports. Alternatively, data importance can be divided according to the availability of data, and the data to be backed up can be divided into high availability data, medium availability data and low availability data. Alternatively, data importance can be divided according to the confidentiality of data, and the data to be backed up can be divided into confidential data, internal data and non-confidential data. Data access frequency can be understood as a parameter used to measure the frequency of data acquisition. For example, data access frequency can include but is not limited to high frequency access, medium frequency access and low frequency access. Container is a lightweight and portable virtualization technology. It packages the application and its dependencies in an independent environment, achieving isolation between applications and efficient allocation of resources. Non-container refers to applications that are directly installed on the operating system and share system resources with other applications. System load is used to measure the busyness of the system. For example, the system load may include but is not limited to the central processing unit (CPU) load, memory load, and disk input / output (I / O) load. Network status is used to describe network performance. For example, network status may include but is not limited to bandwidth, latency, and availability.
[0055] In an embodiment, it is possible to first determine whether the business application operating environment is a container or a non-container, then determine the operating environment performance parameters such as the system load and network status corresponding to the business application operating environment, and determine the candidate data backup strategy corresponding to the data to be backed up according to the operating environment performance parameters and data changes. In the actual operation process, the candidate data backup strategy may include at least a differential backup strategy and an incremental backup strategy.
[0056] In one embodiment, determining a candidate data backup strategy corresponding to the data to be backed up according to the operating environment performance parameters and data change conditions corresponding to the business application operating environment includes:
[0057] Determine the available resources of the corresponding operating environment according to the operating environment performance parameters corresponding to the business application operating environment;
[0058] Determine the number of data blocks to be backed up corresponding to the data to be backed up according to the data change situation;
[0059] When the number of data blocks to be backed up reaches a pre-configured data block number threshold and the available resources of the operating environment reach a pre-configured resource threshold, determining that the candidate data backup strategy is a differential backup strategy;
[0060] When the number of data blocks to be backed up does not reach a pre-configured data block number threshold, or the available resources of the operating environment do not reach a pre-configured resource threshold, the candidate data backup strategy set is determined to be an incremental backup strategy.
[0061] Among them, the number of data blocks to be backed up can be understood as the number of data blocks required for the backup of the data to be backed up. The data block number threshold can be understood as determining whether the number of data blocks has reached the critical value for judging the candidate data backup strategy, and the data block number threshold can be set in advance according to user needs; the resource threshold can be understood as determining whether the resources have reached the critical value for judging the candidate data backup strategy, and the resource threshold can be set in advance according to user needs. The available resources of the operating environment can be understood as the remaining available resources in the operating environment. Exemplarily, the available resources of the operating environment can include but are not limited to CPU resources, memory resources, etc. The differential backup strategy refers to backing up data that has changed since the last full backup; the incremental backup strategy refers to backing up data that has changed since the last backup of any type (including full backup, incremental backup or differential backup). In other words, the incremental backup strategy only backs up the data blocks that have changed since the last backup, while the differential backup strategy backs up all data blocks that have changed since the last full backup.
[0062] In an embodiment, the operating environment performance parameters corresponding to the application operating environment can be determined, the available resources of the operating environment can be determined, and the number of data blocks to be backed up corresponding to the data to be backed up can be determined according to the data change situation, that is, the data change amount can be determined. When the number of data blocks to be backed up reaches a pre-configured data block number threshold, and the available resources of the operating environment reach a pre-configured resource threshold, the candidate data backup strategy can be determined to be a differential backup strategy; when the number of data blocks to be backed up does not reach a pre-configured data block number threshold, or the available resources of the operating environment do not reach a pre-configured resource threshold, the candidate data backup strategy set can be determined to be an incremental backup strategy. In the actual operation process, after determining the operating environment performance parameters corresponding to the application operating environment, the remaining resources in the operating environment can be determined as the available resources of the operating environment, and then the number of data blocks to be backed up corresponding to the data to be backed up can be determined according to the data change situation. Determine the relationship between the number of data blocks to be backed up and the data block number threshold, as well as the relationship between the available resources in the operating environment and the resource threshold. When it is determined that the number of data blocks to be backed up reaches the pre-configured data block number threshold, and the available resources in the operating environment reach the pre-configured resource threshold, determine that the candidate data backup strategy is a differential backup strategy; when it is determined that the number of data blocks to be backed up does not reach the pre-configured data block number threshold, or the available resources in the operating environment do not reach the pre-configured resource threshold, determine that the candidate data backup strategy set is an incremental backup strategy. Determine the candidate data backup strategy by using the data block number threshold and the resource threshold to ensure the rationality of the candidate data backup strategy and improve the efficiency of data backup.
[0063] S230: Determine a target data backup strategy according to the business application operating environment and the candidate data backup strategies.
[0064] In an embodiment, when determining a candidate data backup strategy, the business application operating environment and the candidate data backup strategy can be combined as a target data backup strategy. Exemplarily, when determining that the business application operating environment is a container, the candidate data backup strategy under the container can be determined as the target data backup strategy. For example, when the candidate data backup strategy is an incremental backup strategy and the business application operating environment is a container, the target data backup strategy can be determined to be a container incremental backup strategy; when the candidate data backup strategy is an incremental backup strategy and the business application operating environment is a non-container, the target data backup strategy can be determined to be a non-container incremental backup strategy; when the candidate data backup strategy is a differential backup strategy and the business application operating environment is a container, the target data backup strategy can be determined to be a container differential backup strategy; when the candidate data backup strategy is a differential backup strategy and the business application operating environment is a non-container, the target data backup strategy can be determined to be a non-container differential backup strategy.
[0065] In one embodiment, determining a target data backup strategy according to a business application operating environment and candidate data backup strategies includes:
[0066] Determine the application architecture corresponding to the data to be backed up based on the business application operating environment;
[0067] When the application architecture is a container and the candidate data backup strategy is an incremental backup strategy, determining that the target data backup strategy is a container incremental backup strategy;
[0068] When the application architecture is a container and the candidate data backup strategy is a differential backup strategy, determining that the target data backup strategy is a container differential backup strategy;
[0069] When the application architecture is a monolithic architecture and the candidate data backup strategy is an incremental backup strategy, determining that the target data backup strategy is a non-container incremental backup strategy;
[0070] When the application architecture is a monolithic architecture and the candidate data backup strategy is a differential backup strategy, it is determined that the target data backup strategy is a non-container differential backup strategy.
[0071] The application architecture can be understood as the application program structure corresponding to the business application running environment. An exemplary application architecture may include containers and non-containers.
[0072] In an embodiment, the application architecture corresponding to the data to be backed up can be determined as a container or a non-container according to the business application running environment. When the application architecture is determined to be a container and the candidate data backup strategy is an incremental backup strategy, the target data backup strategy can be determined to be a container incremental backup strategy; when the application architecture is determined to be a container and the candidate data backup strategy is a differential backup strategy, the target data backup strategy can be determined to be a container differential backup strategy; when the application architecture is determined to be a monolithic architecture and the candidate data backup strategy is an incremental backup strategy, the target data backup strategy can be determined to be a non-container incremental backup strategy; when the application architecture is determined to be a monolithic architecture and the candidate data backup strategy is a differential backup strategy, the target data backup strategy can be determined to be a non-container differential backup strategy. The target data backup strategy is determined by the application architecture and the candidate data backup strategy to ensure the reliability and adaptability of the backup strategy.
[0073] S240: Determine a data backup frequency corresponding to the data to be backed up according to the data characteristic information.
[0074] S250: When the target data backup strategy is a container incremental backup strategy or a container differential backup strategy, back up the host environment corresponding to the data to be backed up by creating a mirror file according to the data backup frequency.
[0075] The image file can be understood as a compressed file of the data to be backed up, which contains a copy of the data to be backed up. The host environment refers to the overall operating conditions of the computer system running the computing task or service. In the actual operation process, the host environment can at least include information such as the operating system, driver, processor, and memory.
[0076] In an embodiment, when the target data backup strategy is a container incremental backup strategy or a container differential backup strategy, the host environment corresponding to the data to be backed up can be determined, the host environment can be made into a mirror file, and the mirror file can be backed up at the data backup frequency to achieve the backup of the host environment corresponding to the data to be backed up.
[0077] S260: Back up the container image corresponding to the data to be backed up according to the data backup frequency.
[0078] In an embodiment, the container image may include static configurations of the application and application dependencies, and the container image corresponding to the data to be backed up may be backed up according to the data backup frequency. That is, after the host environment is backed up, the container is configured to achieve rapid reconstruction of the container.
[0079] S270: Back up the persistent data in the data to be backed up by using cloud storage or block storage.
[0080] Among them, cloud storage can be understood as a storage method that stores data on a remote server through the Internet. Cloud storage can provide long-term storage and low-cost storage options. It is usually used to store older backup data and can provide off-site redundancy. Block storage can be understood as dividing the data to be backed up into blocks of fixed size for storage, and each block has an independent address. Block storage is usually used in scenarios such as database storage (such as relational databases) and virtual machine disk storage to provide high-performance, low-latency storage support for applications. Persistent data can be understood as data that can still be saved and accessed in the event of a program error or system failure. It is data that needs to be saved for a long time and is critical to the business.
[0081] In an embodiment, persistent data in the data to be backed up can be determined, and the persistent data in the data to be backed up can be backed up by cloud storage or block storage. In the actual operation process, persistent data in the data to be backed up can be extracted, and the persistent data in the data to be backed up can be backed up by cloud storage or block storage according to user needs to ensure data consistency and integrity.
[0082] S280: Back up the running data in the data to be backed up using a pre-configured container backup method.
[0083] Among them, operating data can be understood as data that changes in real time, and the operating data is relatively short-lived.
[0084] In one embodiment, the container backup method includes one of the following: Docker container backup, Kubernetes container backup, and specific application container backup.
[0085] In an embodiment, after backing up the persistent data, a pre-configured container backup method can be selected, such as Docker container backup, Kubernetes container backup, or specific application container backup, to determine the running state data in the data to be backed up, and the pre-configured container backup method can be used to back up the running state data. In the actual operation process, the container backup method can be used to store the running state data in the corresponding target storage location.
[0086] In one embodiment, the running state data in the backup data is backed up using a pre-configured container backup method, including:
[0087] Determine the corresponding storage management option according to the data type of the running data in the data to be backed up;
[0088] Determine a target storage location corresponding to the running state data based on the storage management option;
[0089] Back up the running data in the data to be backed up to the target storage location.
[0090] The data type may include at least a numeric type, a character type, and a structure. The storage management option may be understood as a method and strategy for organizing, allocating, monitoring, and optimizing data storage resources in a computer system or network. For example, the storage management option may include at least local storage, external storage devices, and network storage. The target storage location may be understood as the location where the data to be backed up is ultimately stored.
[0091] In one embodiment, when the container backup mode is Docker container backup, the storage management options include: data volumes and bind mounts;
[0092] When the container backup method is Kubernetes container backup, the target storage location includes the storage volume of the Pod; the storage volume includes one of the following: an empty directory, a host path, a network storage, and a storage service;
[0093] When the container backup method is MySQL database container backup, the target storage location includes a preset directory configured by using data volume mapping or external storage service.
[0094] Among them, the data volume can be understood as a special directory accessible to the container. The data volume can be stored in the file system of the host machine and can be mounted in the container for the container to read and write. Multiple containers can mount the same data volume at the same time, thereby realizing data sharing and synchronization. Bind mount can be understood as a way to mount the host machine's files or directories into the container. In the actual operation process, any directory or file on the host can be bound to the path of the container. The storage volume can include at least an empty directory, a host machine path, network storage, and storage services. Pod refers to a basic concept and the smallest deployment unit in Kubernetes. The preset directory can be understood as a pre-set file directory.
[0095] In an embodiment, the data type of each operating state data may be associated with a storage management option. After the data type of the operating state data in the data to be backed up is determined, the corresponding storage management option may be searched according to the data type, and the target storage location corresponding to the operating state data may be determined according to the storage management option. Generally speaking, the target storage location corresponding to each storage management option may be pre-set, and then the operating state data in the data to be backed up is backed up to the target storage location. This embodiment determines the corresponding storage management option according to the data type of the operating state data, and then determines the target storage location corresponding to the operating state data in the storage management option, thereby ensuring the accuracy of the target storage location and facilitating data query and use.
[0096] In an embodiment of the present invention, candidate data backup strategies corresponding to the data to be backed up are determined according to the operating environment performance parameters and data changes corresponding to the business application operating environment, and a target data backup strategy is determined according to the business application operating environment and the candidate data backup strategies, so as to ensure that a suitable backup strategy is recommended according to the data characteristics of the data to be backed up; the data backup frequency corresponding to the data to be backed up is determined according to the data characteristic information, and when the target data backup strategy is a container incremental backup strategy or a container differential backup strategy, and when the application architecture corresponding to the data to be backed up is a container, backing up the host environment first can ensure that basic operating conditions can be provided during recovery, and after the host environment is ready, backing up the container image can quickly rebuild the container, and after the container image backup is completed, persistent data backup is performed to ensure data consistency and integrity, and finally a pre-configured container backup method is used to back up the running data in the backup data, so as to minimize the impact of the backup process on system performance and ensure data accuracy.
[0097] In one embodiment, this embodiment is a further description of a data backup method based on the above embodiment.
[0098] In this embodiment, local backup is responsible for fast recovery and disk backup, and is usually used to store the most recent backup copies so that they can be quickly restored in the event of data loss. Cloud backup provides long-term storage and low-cost storage options, and is usually used to store older backup data, and can provide off-site redundancy. Recovery points include backups in local and cloud locations for disaster recovery scenarios. The backup client is installed on the user's workstation or server and is responsible for backing up the data to be backed up and communicating with the backup server. The backup server is responsible for scheduling and managing backup tasks, as well as storing and indexing the data to be backed up. Network connection and Internet show the internal network and Internet connection through a secure connection to the cloud service provider.
[0099] The present invention adopts a hybrid backup strategy based on an incremental backup strategy and a differential backup strategy. During the backup process, the business application operating environment, data change situation and data feature information corresponding to the data to be backed up are obtained; the system first determines whether the data change situation has changed. If the data has not changed, no backup is performed; if the data has changed, the incremental backup strategy (small change) or the differential backup strategy (large change) is automatically selected according to the data change situation. The incremental backup strategy only backs up the data blocks that have changed since the last backup, while the differential backup strategy backs up all the data blocks that have changed since the last full backup. In this way, the transmission volume of backup data can be greatly reduced and the backup efficiency can be improved.
[0100] In one embodiment, the present invention uses a distributed storage method to store the backup data. The backup data can be stored in multiple backup nodes, each of which has independent storage and computing capabilities. At the same time, a preset encryption algorithm can be used to protect the backup data to prevent the backup data from being tampered with or leaked during transmission and storage. In addition, data redundancy and fault tolerance technology are used to ensure the reliability and availability of the backup data.
[0101] In one embodiment, the distributed storage method can be run in a distributed storage system. The distributed storage system may include data sharding nodes and data replica nodes. The data sharding nodes are used to perform data segmentation and load balancing on the data to be backed up and send them to the metadata service. The metadata service can perform indexing services and routing requests, initiate requests and access data through the client interface, and allocate the data to be backed up to each backup node through the load balancer request. The data replica node is used to perform redundant backup and failover of the data to be backed up.
[0102] In one embodiment, the data backup method can be applied to an intelligent backup strategy recommendation system, which recommends a suitable target data backup strategy for the user based on factors such as the user's data characteristics and business requirements. Specifically, the system first collects data information and business requirement information of the data to be backed up through a data collector; then, the application is classified according to this information; finally, based on the application classification results and the candidate data backup strategies in the backup strategy library, a suitable target data backup strategy is recommended for the user. In this way, the diverse needs of different users can be met.
[0103] Furthermore, an automated backup and recovery process management system can be used to automatically complete the creation, execution, monitoring and recovery operations of backup tasks. Specifically, the user sets the relevant parameters of the backup task and the recovery task (such as the backup cycle, the backup data range, the recovery target, etc.) in the backup client, and the system can automatically complete the data backup operation through the backup server. At the same time, the automated backup and recovery process management system also provides real-time monitoring and alarm functions of the alarm system to ensure the smooth progress of the backup and recovery tasks.
[0104] For data backup with container-based system architecture, the main contents of container backup include backup of host environment, container image, persistent layer data, and running data. Among them, the host environment includes the operating system layer, which can be completed by making an image file; the container image can be configured with 2 or more environments by introducing a container image repository. Traditional file backup is used here as support. The backup of persistent data can be achieved through cloud storage, block storage, etc. The running data in the backup data is backed up using a pre-configured container backup method. The container backup methods include Docker containers, Kubernetes containers, and specific application containers.
[0105] In one embodiment, Figure 3 A schematic diagram of the structure of a Docker container provided in this embodiment. Figure 3 As shown, the Docker container includes a physical server (Physical Server), an operating system (Operating System), Docker and a container (Container). Each container contains a service A (Service A) and Bins / Libs (bins / libs). For example, the runtime data of the Docker container, including images, containers, networks, and storage volumes, is stored in the / var / lib / docker directory of the host machine by default. The image data is stored in the / var / lib / docker / images subdirectory. The container runtime data (such as the file system within the container) is stored in / var / lib / docker / containers / <container_id> directory.
[0106] Docker provides flexible storage management options, such as volumes and bind mounts, allowing users to store the data to be backed up in a specified location on the host machine, thereby achieving persistence and sharing of the data to be backed up.
[0107] The running state data of Kubernetes (K8s) containers is associated with Pods and stored in the Pod's storage volumes. Kubernetes supports multiple types of storage volumes, including empty directories (EmptyDir), host paths (HostPath), network storage (such as NFS, Ceph, etc.), and storage services provided by cloud providers (such as AWS EBS, GCE PD, etc.).
[0108] The file system in a Kubernetes container is temporary. When the Pod is deleted, the data in the container will be lost, unless some form of storage volume is used to persist the data to the host or external storage service.
[0109] For a specific application container (such as MySQL), when running a database container such as MySQL in Docker or Kubernetes, the database data is stored in the container's file system, which can be located in the container's / var / lib / mysql directory. In order to achieve data persistence and backup, users can use data volumes to map the host's directory to the container's / var / lib / mysql directory, or use an external storage service to store the database data to be backed up.
[0110] The storage location of runtime data in a container varies depending on the container technology and configuration.
[0111] The runtime data of Docker containers is stored in the / var / lib / docker directory of the host by default. The runtime data of Kubernetes containers is associated with Pods and stored in the storage volumes of Pods. For specific application containers (such as MySQL), runtime data can be stored in the container's file system, but it is recommended to use data volumes or external storage services for persistent storage.
[0112] In one embodiment, Figure 4 This is a schematic diagram of the structure of a data backup device provided in this embodiment. Figure 4 As shown, the device includes: an information acquisition module 41, a strategy determination module 42, a frequency determination module 43 and a data backup module 44.
[0113] The information acquisition module 41 is used to acquire the business application running environment, data change status and data feature information corresponding to the data to be backed up.
[0114] The strategy determination module 42 is used to determine the target data backup strategy corresponding to the data to be backed up according to the business application operating environment and data changes.
[0115] The frequency determination module 43 is used to determine the data backup frequency corresponding to the data to be backed up according to the data characteristic information.
[0116] The data backup module 44 is used to back up the data to be backed up according to the data backup frequency and adopt a target data backup strategy.
[0117] In the embodiment of the present invention, the business application operating environment, data change situation and data feature information corresponding to the data to be backed up are obtained through the information acquisition module, and the strategy determination module determines the target data backup strategy corresponding to the data to be backed up according to the business application operating environment and data change situation, thereby solving the technical problem that only a single backup strategy can be adopted in the prior art and the diverse needs of different users cannot be met, and a reasonable data backup frequency and target data backup strategy are adopted for backup according to the data characteristics and business needs of the data, thereby meeting the diverse needs of users for backup and improving the user experience, and avoiding the problem of large data transmission volume caused by adopting the full backup method every time, thereby reducing the data transmission volume of the data to be backed up, improving the backup efficiency, and reducing the time and resources required for backup; and the frequency determination module automatically adjusts the corresponding data backup frequency based on the data feature information, and the data backup module backs up the data to be backed up according to the data backup frequency and adopts the target data backup strategy, thereby improving the utilization rate of the computing resources and storage resources used for backup on the basis of ensuring effective data backup.
[0118] In one embodiment, the policy determination module 42 includes:
[0119] A candidate strategy determination unit, used to determine a candidate data backup strategy corresponding to the data to be backed up according to the operating environment performance parameters and data changes corresponding to the business application operating environment;
[0120] The target policy determination unit is used to determine the target data backup policy according to the business application operating environment and the candidate data backup policies.
[0121] In one embodiment, data characteristics include: data importance and data access frequency; business application operating environment includes: container and non-container; operating environment performance parameters include: system load and network status.
[0122] In one embodiment, the candidate strategy determination unit is specifically configured to:
[0123] Determine the available resources of the corresponding operating environment according to the operating environment performance parameters corresponding to the business application operating environment;
[0124] Determine the number of data blocks to be backed up corresponding to the data to be backed up according to the data change situation;
[0125] When the number of data blocks to be backed up reaches a pre-configured data block number threshold and the available resources of the operating environment reach a pre-configured resource threshold, determining that the candidate data backup strategy is a differential backup strategy;
[0126] When the number of data blocks to be backed up does not reach a pre-configured data block number threshold, or the available resources of the operating environment do not reach a pre-configured resource threshold, the candidate data backup strategy set is determined to be an incremental backup strategy.
[0127] In one embodiment, the target strategy determination unit is specifically configured to:
[0128] Determine the application architecture corresponding to the data to be backed up based on the business application operating environment;
[0129] When the application architecture is a container and the candidate data backup strategy is an incremental backup strategy, determining that the target data backup strategy is a container incremental backup strategy;
[0130] When the application architecture is a container and the candidate data backup strategy is a differential backup strategy, determining that the target data backup strategy is a container differential backup strategy;
[0131] When the application architecture is a monolithic architecture and the candidate data backup strategy is an incremental backup strategy, determining that the target data backup strategy is a non-container incremental backup strategy;
[0132] When the application architecture is a monolithic architecture and the candidate data backup strategy is a differential backup strategy, it is determined that the target data backup strategy is a non-container differential backup strategy.
[0133] In one embodiment, when the target data backup strategy is a container incremental backup strategy or a container differential backup strategy, the data backup module 44 includes:
[0134] An environment backup unit is used to back up the host environment corresponding to the data to be backed up by making a mirror file according to the data backup frequency;
[0135] A container backup unit, used to back up the container image corresponding to the data to be backed up according to the data backup frequency;
[0136] A persistent data backup unit, used to back up persistent data in the backup data by using cloud storage or block storage;
[0137] The dynamic data backup unit is used to back up the running data in the backup data by using a pre-configured container backup method.
[0138] In one embodiment, the container backup method includes one of the following: Docker container backup, Kubernetes container backup, and specific application container backup.
[0139] In one embodiment, the dynamic data backup unit is specifically used for:
[0140] Determine the corresponding storage management option according to the data type of the running data in the data to be backed up;
[0141] Determine a target storage location corresponding to the running state data based on the storage management option;
[0142] Back up the running data in the data to be backed up to the target storage location.
[0143] In one embodiment, when the container backup mode is Docker container backup, the storage management options include: data volumes and bind mounts;
[0144] When the container backup method is Kubernetes container backup, the target storage location includes the storage volume of the Pod; the storage volume includes one of the following: an empty directory, a host path, a network storage, and a storage service;
[0145] When the container backup method is MySQL database container backup, the target storage location includes a preset directory configured by using data volume mapping or external storage service.
[0146] In one embodiment, the data backup device further includes:
[0147] The data storage module is used to store the data to be backed up in at least two backup nodes in a distributed storage manner; wherein each backup node includes independent storage capacity and computing capacity.
[0148] In one embodiment, the data backup device further includes:
[0149] The data encryption module is used to encrypt the data to be backed up using a preset encryption algorithm and store the encrypted data to be backed up.
[0150] The data backup device provided in the embodiment of the present invention can execute the data backup method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0151] In one embodiment, Figure 5 Schematic diagram of the structure of an electronic device implementing a data backup method according to an embodiment of the present invention. Figure 5As shown, a schematic diagram of the structure of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.
[0152] like Figure 5 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0153] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0154] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as a data backup method.
[0155] In some embodiments, the data backup method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the data backup method described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to perform the data backup method in any other appropriate manner (e.g., by means of firmware).
[0156] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0157] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0158] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in combination with an instruction execution system, device or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0159] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0160] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0161] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.
[0162] An embodiment of the present invention further provides a computer program product, including a computer program, which, when executed by a processor, implements the data backup method provided in any embodiment of the present application.
[0163] In the process of implementation, the computer program product can be written in one or more programming languages or a combination thereof to perform the computer program code of the present invention, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (for example, using an Internet service provider to connect through the Internet).
[0164] Note that the above are only preferred embodiments of the present invention and the technical principles used. Those skilled in the art will understand that the present invention is not limited to the specific embodiments herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention has been described in more detail through the above embodiments, the present invention is not limited to the above embodiments, and may include more other equivalent embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.
Claims
1. A data backup method, characterized in that: include: Obtain the business application operating environment, data changes and data feature information corresponding to the data to be backed up; Determine a target data backup strategy corresponding to the data to be backed up according to the business application operating environment and the data change situation; Determine the data backup frequency corresponding to the data to be backed up according to the data characteristic information; The data to be backed up is backed up according to the data backup frequency and using the target data backup strategy.
2. The method according to claim 1, characterized in that: The step of determining a target data backup strategy corresponding to the data to be backed up according to the business application operating environment and the data change situation includes: Determine a candidate data backup strategy corresponding to the data to be backed up according to the operating environment performance parameters corresponding to the business application operating environment and the data change situation; A target data backup strategy is determined according to the business application operating environment and the candidate data backup strategies.
3. The method according to claim 2, characterized in that The data characteristics include: data importance and data access frequency; the business application operating environment includes: container and non-container; the operating environment performance parameters include: system load and network status.
4. The method according to claim 2, characterized in that: The determining, according to the operating environment performance parameters corresponding to the business application operating environment and the data change situation, the candidate data backup strategy corresponding to the data to be backed up includes: Determine the available resources of the corresponding operating environment according to the operating environment performance parameters corresponding to the business application operating environment; Determine the number of data blocks to be backed up corresponding to the data to be backed up according to the data change situation; When the number of data blocks to be backed up reaches a pre-configured data block number threshold and the available resources of the operating environment reach a pre-configured resource threshold, determining that the candidate data backup strategy is a differential backup strategy; When the number of data blocks to be backed up does not reach a pre-configured data block number threshold, or the available resources of the operating environment do not reach a pre-configured resource threshold, the candidate data backup strategy set is determined to be an incremental backup strategy.
5. The method according to claim 4, characterized in that The determining of the target data backup strategy according to the business application operating environment and the candidate data backup strategy includes: Determine the application architecture corresponding to the data to be backed up according to the business application operating environment; When the application architecture is a container and the candidate data backup strategy is an incremental backup strategy, determining that the target data backup strategy is a container incremental backup strategy; When the application architecture is a container and the candidate data backup strategy is a differential backup strategy, determining that the target data backup strategy is a container differential backup strategy; When the application architecture is a monolithic architecture and the candidate data backup strategy is an incremental backup strategy, determining that the target data backup strategy is a non-container incremental backup strategy; When the application architecture is a monolithic architecture and the candidate data backup strategy is a differential backup strategy, the target data backup strategy is determined to be a non-container differential backup strategy.
6. The method according to claim 5, characterized in that In the case where the target data backup strategy is a container incremental backup strategy or a container differential backup strategy, backing up the data to be backed up according to the data backup frequency and using the target data backup strategy includes: Backing up the host environment corresponding to the data to be backed up according to the data backup frequency and by creating a mirror file; Backing up the container image corresponding to the data to be backed up according to the data backup frequency; Backing up the persistent data in the data to be backed up by using cloud storage or block storage; The running data in the data to be backed up is backed up using a pre-configured container backup method.
7. The method according to claim 6, characterized in that The container backup method includes one of the following: Docker container backup, Kubernetes container backup and specific application container backup.
8. The method according to claim 6, characterized in that The backing up of the running data in the data to be backed up by using a pre-configured container backup method includes: Determine a corresponding storage management option according to the data type of the running data in the data to be backed up; Determining a target storage location corresponding to the running state data based on the storage management option; Back up the running data in the data to be backed up to the target storage location.
9. The method according to claim 8, characterized in that In the case where the container backup mode is Docker container backup, the storage management options include: data volumes and bind mounts; In the case where the container backup method is Kubernetes container backup, the target storage location includes a storage volume of the Pod; wherein the storage volume includes one of the following: an empty directory, a host path, a network storage, and a storage service; In the case where the container backup mode is MySQL database container backup, the target storage location includes a preset directory configured by using data volume mapping or external storage service.
10. The method according to any one of claims 1 to 9, characterized in that: The method further comprises: The data to be backed up is stored in at least two backup nodes in a distributed storage manner; wherein each of the backup nodes includes independent storage capacity and computing capacity.
11. The method according to any one of claims 1 to 9, characterized in that: The method further comprises: The data to be backed up is encrypted using a preset encryption algorithm, and the encrypted data to be backed up is stored.
12. A data backup device, characterized in that: include: The information acquisition module is used to obtain the business application operating environment, data change status and data feature information corresponding to the data to be backed up; A strategy determination module, used to determine a target data backup strategy corresponding to the data to be backed up according to the business application operating environment and the data change situation; A frequency determination module, used to determine the data backup frequency corresponding to the data to be backed up according to the data characteristic information; The data backup module is used to back up the data to be backed up according to the data backup frequency and adopt the target data backup strategy.
13. An electronic device, characterized in that: The method comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the data backup method according to any one of claims 1 to 11 when executing the computer program.
14. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the data backup method as described in any one of claims 1 to 11 is implemented.
15. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the computer program implements the data backup method according to any one of claims 1 to 11.