Adaptable traditional stateful workloads
By covering the synchronization process of consistency mechanism monitoring and priority sorting, the performance degradation of traditional stateful workloads in orchestration is solved, and efficient stateful data container management and consistency are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-20
- Publication Date
- 2026-03-24
AI Technical Summary
Traditional shared volume interactions for stateful workloads have failed to be effectively utilized in modern, fast-paced workload orchestration, leading to performance degradation and consistency issues. In particular, it is difficult to implement logical construction operations between data containers across stateful sets in multi-process applications.
By overlaying consistency mechanisms, we monitor volume interactions of stateful sets, discover control paths, estimate access probabilities, and interweave synchronization processes based on priority order to reduce waiting time and achieve efficient consistency management between data containers.
It improves the orchestration efficiency of stateful workloads, balances performance and consistency, supports modern management of stateful data containers, and reduces synchronization wait time.
Smart Images

Figure CN116194891B_ABST
Abstract
Description
Background Technology
[0001] This invention relates generally to the field of data consistency, and more specifically to dynamic consistency mechanisms for container orchestration.
[0002] Legacy applications are obsolete or outdated software programs. While a legacy application may still function, it can be unstable due to compatibility issues with current operating systems, browsers, and IT infrastructure. Referring to a program, application, or system as legacy typically implies that it has paved the way for standards to be followed.
[0003] Container orchestration refers to the process of organizing the work of various components and application layers. It automates the deployment, management, scaling, and networking of containers. Container orchestration can be used in any environment that uses containers. This facilitates deploying the same application in different environments without redesigning it. Typically, container orchestration is used to automate and manage tasks. Furthermore, container orchestration tools provide frameworks for managing containers and microservice architectures at a certain scale.
[0004] Data consistency means that the accessed data is available. In a database system, data consistency means that any given database transaction must only change the affected data in a permissible manner. Any data written to the database must be valid according to all defined rules, including constraints, cascading, triggers, and any combinations thereof. This cannot guarantee the correctness of transactions in all the ways that application programmers might want (that is the responsibility of application-level code), but only that any programming error will not lead to a violation of any defined database constraints.
[0005] Overwriting refers to the process of transferring a block of program code or other data to main memory, replacing the already stored content. Overwriting is a programming method that allows a program to exceed the size of the computer's main memory. Embedded systems typically use overwriting due to limitations of physical memory (the internal memory of the system-on-a-chip) and the lack of virtual memory facilities. Summary of the Invention
[0006] Embodiments of the present invention provide a computer system, a computer program product, and a method comprising: identifying replicated data within corresponding data containers of a plurality of data containers based on an indicative marker reflecting replication; calculating an amount of time for interacting with the identified replicated data based on an alarm threshold, the alarm threshold issuing an alarm to the remaining data containers of the plurality of data containers when triggered; and synchronizing the identified replicated data within each corresponding data container such that the waiting time for interacting with the identified replicated data is reduced based on a priority order of the calculated amount of time for interaction, wherein the priority order places higher calculated interaction times above the calculated interaction time. Attached Figure Description
[0007] Figure 1 It is a functional block diagram describing an environment of a computing device having a connection to or communication with another computing device according to at least one embodiment of the present invention;
[0008] Figure 2 This is a flowchart illustrating the operational steps for dynamically generating a consistency mechanism for container orchestration according to at least one embodiment of the present invention;
[0009] Figure 3 This is a graph illustrating a comparison between time and access to a stateful set according to an embodiment of the present invention.
[0010] Figure 4 An embodiment of the invention is depicted. Figure 1 A block diagram of the components of the computing system within the computing display environment. Detailed Implementation
[0011] Embodiments of the present invention recognize the need to improve current modern shared-volume interactions for traditional stateful process workloads that are not designed to take advantage of rapid evolution and new features in workload orchestration. For example, a multi-process workload that writes to files via locking mechanisms is defined as a stateful interaction and will produce multiple data containers with their own volumes, which will remain inconsistent because locking will not work across volumes. On the other hand, if a workload is treated as replicated data that forces replicated data containers to mount the same volume, the contention defined later in this detailed description does not scale well with the increasing number of replicated data, thus degrading the system. Embodiments of the present invention improve current modern shared-volume interactions for traditional, stateful process workloads by modernizing shared-volume interactions for traditional workloads to support stateful replication and orchestration, while mitigating performance degradation by overriding consistency frameworks and inter-leaving synchronization processes. Embodiments of the present invention provide a system, method, and computer program product for a solution that modernizes shared volume interactions in legacy systems and generates a mechanism supporting a form of consistency for orchestrating stateful workloads, and provides interleaved synchronization of volume replicas to balance performance and consistency, wherein this form of consistency does not presuppose the availability of consistency in legacy systems. Currently, legacy systems are not designed to take advantage of rapid development and new features in orchestrating newer workloads. Typically, traditional stateful process workload techniques do not support any form of consistency for orchestrating stateful workloads that do not have a consistency mechanism for operating across logical constructs of data containers within stateful sets. These use cases are typically seen in legacy process workloads built to work within volume management, either as a single process or as multiple processes interacting with advisory locks. Embodiments of the present invention improve upon current legacy systems by using an overlay consistency mechanism that provides interleaved synchronization of volume replicas to balance performance and consistency without presupposing the availability of consistency in legacy software. Embodiments of the present invention distribute data to separate sets, monitor individual steps, discover control paths for request types between separate sets, estimate volume access probabilities across separate sets, and prioritize separate sets based on volume synchronization.
[0012] Figure 1This is a functional block diagram of a computing environment 100 according to an embodiment of the present invention. The computing environment 100 includes a computing device 102 and a server computing device 108. The computing device 102 and server computing device 108 may be a desktop computer, a laptop computer, a dedicated computer server, a smartphone, a smart appliance, a smart device, or any other computing device known in the art. In some embodiments, the computing device 102 and server computing device 108 may represent computing devices that utilize multiple computers or components to act as a single seamless resource pool when accessed via network 106. In this embodiment, the computing device 102 may be defined as an orchestrator that stores replicated data and mounted volumes and performs synchronization of stateful sets. Generally, the computing device 102 and server computing device 108 may represent any electronic device or combination of electronic devices capable of executing machine-readable program instructions, as per [reference to...]. Figure 4 A more detailed description
[0013] Computing device 102 may include program 104. Program 104 may be a standalone program on computing device 102. In another embodiment, program 104 may be stored on server computing device 108. In this embodiment, program 104 modernizes shared volume interactions of traditional, stateful single-process or multi-process workloads to support stateful replication and orchestration while mitigating performance degradation by overriding a consistency framework (which monitors volume interactions and locking of replicated stateful workloads) and interleaving synchronization processes between aging and up-to-date replicas within gaps discovered in volume access patterns of the workload's control path. In this embodiment, program 104 overrides the consistency framework and interleaves synchronization processes by packaging traditional data into stateful sets, monitoring stateful steps, discovering control paths of request types between control blocks located within stateful sets and replicated data, estimating volume access probabilities across stateful sets, and prioritizing stateful sets based on volume synchronization estimates.
[0014] In this embodiment, program 104 packages (i.e. distributes) conventional data into stateful sets by extracting process binary files from the database and converting the extracted process binary files into containers.
[0015] In this embodiment, program 104 monitors changes in the volume manager database and the locking mechanism created for the state sets by dispatching input regarding access mode information associated with each state set within a predetermined time period and synchronizing data replication across state sets. In this embodiment, replicated data is defined as data replicated within a separate set. In this embodiment, program 104 monitors single-process applications and utilizes advisory locks to monitor multi-process applications. In this embodiment, program 104 monitors changes within state sets within fixed time periods.
[0016] In this embodiment, program 104 discovers control paths for request types by using runtime analysis of the process, and these control paths depend on the type of data stored within the stateful set. In this embodiment, program 104 determines the logical distances between components (e.g., control blocks and replicated data) located within the stateful set. In this embodiment, program 104 identifies replicated data within corresponding data containers in a plurality of data containers based on indicative markers reflecting replication.
[0017] In this embodiment, program 104 estimates the volume access probability by calculating the volume access probability based on the discovered control path. In this embodiment, the estimation is based on the difference between the time taken for the discovered control path to reach a given data copy in the volume and the synchronization time of that data copy. In this embodiment, program 104 calculates the amount of time required to interact with the identified replicated data based on an alarm threshold, which, when triggered, issues an alarm to the remaining data containers among a plurality of data containers.
[0018] In this embodiment, procedure 104 prioritizes volume synchronization based on the estimated volume access probability to identify interleaving opportunities and a priority order for volume synchronization. In this embodiment, procedure 104 determines priority based on impending lock contention events or based on new request types from a single set with a high estimated probability. In this embodiment, procedure 104 synchronizes replicated data within each corresponding data container to reduce waiting time for interacting with identified replicated data based on a priority order of calculated interaction times, where the priority order places higher calculated interaction times above lower calculated interaction times.
[0019] Network 106 may be a local area network (“LAN”), a wide area network (“WAN”) such as the Internet, or a combination of both; and it may include wired, wireless, or fiber optic connections. Typically, network 106 may be any combination of connections and protocols that support communication (particularly program 104 according to a preferred embodiment of the invention) between computing device 102 and server computing device 108.
[0020] Server computing device 108 may include program 104 and may communicate with computing device 102 via a network. Server computing device 108 may be a single computing device, a laptop computer, a server cluster, or other known computing devices. In this embodiment, server computing device 108 may be an external device connected to computing device 102 via network 106.
[0021] Figure 2 This is a flowchart 200 illustrating the operational steps of a consistency mechanism for dynamically generating container orchestration according to at least one embodiment of the present invention.
[0022] In step 202, program 104 accesses a database. In this embodiment, program 104 receives opt-in / opt-out permission from the user to gain access to the database. In this embodiment, program 104 accesses a database that can be defined as a volume manager. For example, program 104 accesses a volume manager database that stores data directories for multiple users.
[0023] In step 204, program 104 packages legacy processes into stateful sets. In this embodiment, legacy processes are obsolete or deprecated processes and may be unstable due to compatibility issues with current operating systems, browsers, and IT infrastructure. In this embodiment, the stateful sets manage the deployment and scaling of data containers and provide the ordering and details associated with each data container within the stateful set. Furthermore, state is defined as a stable (e.g., unchanging) and ordered process that tracks interaction state by setting values in storage fields designated for that purpose. In this embodiment, program 104 distributes data to the stateful sets by extracting process binaries from the accessed database and converting the extracted process binaries into data containers. In this embodiment, a process binary is defined as the output of a random event with two exhaustive and mutually exclusive results. For example, program 104 distributes data from the database to three identical stateful sets. In another embodiment, program 104 distributes data from the database to multiple stateful sets and converts the stateful sets into data containers, and the data from the volume manager database is copied and stored in the stateful sets within the orchestrator or computing device 102.
[0024] In another embodiment, in response to converting a stateful set into a data container, program 104 mounts the volume onto the data container by copying data from the volume manager database without alerting other stateful sets to the copy, because when a stateful set defined as a conventional process is alerted to data copying, the data stored within that stateful set will be stale. In this embodiment, the volume manager database is defined as a directory having access to data from all data containers running within the stateful set, and mounting the volume is defined as storing the copied data within computing device 102.
[0025] In step 206, program 104 monitors stateful sets. In this embodiment, program 104 monitors changes to replicated data between legacy processes, maintaining a locking mechanism for stateful sets with replicated data. In this embodiment, program 104 monitors the orchestration and replication of data within stateful sets by dispatching input on access modes associated with each stateful set and synchronizing data replication across stateful sets. For example, program 104 observes that replicated data is accessed in a first stateful set; replicated data is not accessed in a second stateful set; and the locking mechanism in a third stateful set prevents data replication.
[0026] In this embodiment, when program 104 detects contention or replication and allows one data storage container to perform an update at a time, program 104 monitors the state set by freezing the data storage containers within the state set of a single process application. In this embodiment, contention is defined as an impending access to the same replicated data on the corresponding volume of each state set.
[0027] In another embodiment, program 104 monitors the stateful set of the multi-process application by monitoring access to the lock file, and monitors contention and replication. In this embodiment, replication data within the state set of the multi-process application is used to notify subsequent activities or sessions about upcoming contention scheduling steps for synchronization, without alerting other state sets to the contention or replication.
[0028] In step 208, program 104 discovers request-type control paths between state sets. In this embodiment, program 104 discovers request-type control paths between state sets by determining the logical distance (e.g., the distance between bit string representations of specific elements) between control blocks and replicated data within a state set through runtime analysis of the process, and these control paths access subsets of replicated data in the volume manager database. In this embodiment, and when data replication or contention alerts a state set, program 104 stales the replicated data in response to accessing at least one state set storing replicated data within a single process application. In this embodiment, and when no locking mechanism exists in a state set, program 104 does not stale the replicated data in response to accessing at least one state set within a multi-process application because no alerts are issued to other state sets.
[0029] In another embodiment, program 104 discovers control paths between state sets by performing sandbox execution on the input request type to identify control paths. In this embodiment, sandbox execution isolates the application from critical system resources and other programs, and provides an additional layer of security to prevent harmful applications from negatively impacting stateful sets. In this embodiment, program 104 performs sandbox execution to prevent negative impacts on multiple stateful sets. In this embodiment, program 104 discovers control paths from control blocks, where control blocks are considered data structures used to store information about the synchronization process, and are also referred to as data containers located within stateful sets, as well as data replication storage units also located within stateful sets. In this embodiment, control blocks are defined as data structures used by the computer operating system to store all information about the process. In an example with five stateful sets, program 104 can map paths from each stateful set to another stateful set. For example, program 104 maps paths from control block (“CB”) 1 to CB 2 and CB 3, while also mapping different paths to the data replication (“DR”) associated with CB 2 1:1 and the DR associated with CB 3 2:2. Furthermore, program 104 maps paths from CB 3 to CB 4 and CB 5, while also mapping different paths to the DR associated with CB 4 3:1 and the DR associated with CB 4 4:2. In this embodiment, when replicated data is distributed across multiple stateful sets and accessing the data container storing the replicated data makes other replicated data stale, program 104 identifies request-type control paths to aid in the synchronization of stateful sets.
[0030] In step 210, program 104 estimates the volume access probability across a stateful set. In this embodiment, program 104 estimates the volume access probability across a single set by calculating the volume access probability based on the discovered control path. In this embodiment, program 104 estimates the volume access probability across a stateful set using the following formula:
[0031] (1) T = t access -t sync
[0032] Regarding Equation 1, "T" is a random variable representing the time "t" it takes for the control path to hit a given copy of data in the volume. access "Synchronization time with replicated data" t sync The difference between "T" and "synchronization time" varies depending on the type of data container and the location of the replicated data within the data container. For example, the time spent accessing a stateful set is measured as 4, while the time spent synchronizing a stateful set is 2. Therefore, "T" is the difference between the access time and the synchronization time, which equals 2.
[0033] In another embodiment, program 104 estimates the volume access probability across a stateful set using the following formula:
[0034] (2) Regarding Equation 2, "Pr(T>0)" represents the probability, "(E[T])" represents the expected value of the random variable "T", and "(E[T])" represents the expected value of the random variable "T". 2 "[T])" represents the second moment. In this embodiment, procedure 104 uses equation (2) to obtain the lower bound probability that "T" is greater than 0, which indicates the probability that synchronization occurs before the access occurs. For example, procedure 104 estimates the time that the control path from the accessed database to the stateful set storing the replicated data will take to synchronize the replicated data based on a separate set of data volumes. For example, "(E[T])" equals 1, and the square of this number remains 1. Furthermore, "(E[T])" 2 ])” equals 2, and The result of 1 divided by 2 is 0.5. Therefore, "T" equal to 2 is greater than 0.5. In this embodiment, program 104 verifies the calculated volume access probability by dividing the calculated volume access probability by the estimated volume access probability.
[0035] In step 212, program 104 prioritizes the stateful set based on data replication synchronization. In this embodiment, program 104 prioritizes synchronization based on estimated volume access probabilities to identify interleaving opportunities and the priority order of synchronizations for replicating data. In this embodiment, several methods exist for program 104 to choose from for prioritizing the stateful set. In this embodiment, program 104 prioritizes the stateful set by prioritizing impending lock contention and requests to replicate data within the stateful set. In this embodiment, program 104 prioritizes the stateful set based on impending lock contention events to reduce waiting time for data containers updated using replicated data during lock contention. In this embodiment, program 104 indicates that the data container has identified a control path already in execution and has a low probability "Pr" due to lock contention requesting data replication. In this embodiment, low probability is defined as a measurement result where "T" is equal to or less than 0, where "T" is the measured waiting time for the stateful set to be accessed by program 104. In this embodiment, program 104 also defines the waiting time as the interval when the stateful set is accessed, and the interval provides program 104 with an opportunity to synchronize the replicated data stored in the data container within the stateful set. For example, program 104 will maintain a neutral stateful set on top of a separate set of volume reduction, and the arrangement of the stateful sets can be dynamically adjusted based on a calculated probability estimate.
[0036] In this embodiment, program 104 determines the priority of the stateful set by prioritizing new requests. In another embodiment, program 104 prioritizes request types with higher probabilities by interleaving replicated data and sorting requests that have a higher probability of accessing replicated data via the control path. In this embodiment, program 104 defines high probability as "T" greater than 0, and prioritizes the stateful set by prioritizing new requests using the following formula:
[0037] (3) Regarding Equation 3, Program 104 uses Equation 3 to determine the maximum combined probability of each request accessing the replicated data along the entire control path.
[0038] Figure 3 Figure 300 illustrates a comparison of display time and access to a stateful set according to an embodiment of the present invention. In this embodiment, Figure 300 has a y-axis defined as access to a stateful set and an x-axis as time. In this embodiment, Figure 300 depicts an intermittent (lull) as when access to a stateful set is greater than zero. In this embodiment, the intermittent provides a synchronization opportunity for program 104 to synchronize replicated data within the stateful set. In this embodiment, during at least one intermittent, program 104 interleaves the stateful set. In this embodiment, program 104 defines interleaving as a synchronization process between stale data and the latest data. In this embodiment, program 104 identifies the stateful set access pattern of the discovered control path within the intermittent based on a determined distance between the requested control block and the data replica associated with the requested control block.
[0039] Figure 4 An embodiment of the invention is depicted. Figure 1 A block diagram of the components of the computing system within the computing environment 100. It should be understood that... Figure 4 This is merely an illustration of an implementation and does not imply any limitation on the environments in which different embodiments may be implemented. Many modifications can be made to the described environment.
[0040] The programs described herein are identified based on applications that implement them in specific embodiments of the invention. However, it should be understood that any particular program terminology used herein is for convenience only, and therefore the invention should not be limited to use only in any particular application identified and / or implied by such terminology.
[0041] Computer system 400 includes a communication structure 402 that provides communication between cache 416, memory 406, persistent storage device 408, communication unit 412, and input / output (I / O) interface 414. Communication structure 402 can be implemented using any architecture designed to transfer data and / or control information between processors (such as microprocessors, communication and network processors), system memory, peripheral devices, and any other hardware components within the system. For example, communication structure 402 can be implemented using one or more buses or crossbars.
[0042] Memory 406 and persistent storage device 408 are computer-readable storage media. In this embodiment, memory 406 includes random access memory (RAM). Typically, memory 406 may include any suitable volatile or non-volatile computer-readable storage medium. Cache 416 is a fast memory that enhances the performance of computer processor 404 by storing recently accessed data and data that is likely to be accessed from memory 406.
[0043] Program 104 may be stored in persistent storage device 408 and memory 406 for execution by one or more corresponding computer processors 404 via cache 416. In one embodiment, persistent storage device 408 includes a magnetic hard disk drive. As an alternative to or supplement to a magnetic hard disk drive, persistent storage 408 may include a solid-state drive, semiconductor storage device, read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, or any other computer-readable storage medium capable of storing program instructions or digital information.
[0044] The media used in persistent storage device 408 can also be removable. For example, a removable hard disk drive can be used for persistent storage device 408. Other examples include optical discs and disks, thumb drives and smart cards, which are inserted into the drive for transfer to another computer-readable storage medium that is also part of persistent storage 408.
[0045] In these examples, communication unit 412 provides communication with other data processing systems or devices. In these examples, communication unit 412 includes one or more network interface cards. Communication unit 412 can provide communication by using either or both physical and wireless communication links. Program 104 can be downloaded to permanent memory 408 via communication unit 412.
[0046] Multiple I / O interfaces 414 allow data input and output to other devices that can be connected to mobile devices, approval devices, and / or server computing devices 108. For example, I / O interfaces 414 can provide connectivity to external devices 420, such as keyboards, keypads, touchscreens, and / or other suitable input devices. External devices 420 may also include portable computer-readable storage media, such as thumb drives, portable optical discs or disks, and memory cards. Software and data (e.g., program 104) used to practice embodiments of the invention can be stored on such portable computer-readable storage media and can be loaded onto persistent storage device 408 via multiple I / O interfaces 414. Multiple I / O interfaces 414 are also connected to a display 422.
[0047] The display 422 provides a mechanism for displaying data to the user and may be, for example, a computer monitor.
[0048] This invention can be a system, method, and / or computer program product. A computer program product may include a computer-readable storage medium (or media) having computer-readable program instructions thereon for causing a processor to perform aspects of the invention.
[0049] Computer-readable storage media can be any tangible device capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example, but not limited to, electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media includes the following: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable optical disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices such as punch cards or recessed structures with instructions recorded thereon, and any suitable combination of the foregoing. As used herein, computer-readable storage media should not be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.
[0050] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to a suitable computing / processing device, or via a network, such as the Internet, a local area network (LAN), a wide area network (WAN), and / or a wireless network, to an external computer or external storage device. The network may include copper cables, optical fibers, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to a computer-readable storage medium within the respective computing / processing device.
[0051] Computer-readable program instructions for performing the operations of this invention may be assembly instructions, instruction set architecture (ISA) instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages (e.g., Smalltalk, C++, etc.) and conventional procedural programming languages (e.g., the "C" programming language or similar programming languages). The computer-readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter case, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, to perform aspects of this invention, electronic circuits, including, for example, programmable logic circuits, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), may execute computer-readable program instructions to personalize the electronic circuits by utilizing state information from the computer-readable program instructions.
[0052] Various aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
Claims
1. A computer-implemented method, comprising: Replicated data within corresponding data containers in multiple data containers is identified based on indicative markers reflecting replication. The amount of time spent interacting with the identified replicated data is calculated based on an alarm threshold, which, when triggered, alerts the remaining data containers among the plurality of data containers. The replicated data identified in each corresponding data container is synchronized such that the waiting time for interacting with the identified replicated data is reduced based on the priority order of the calculated time amount for interaction, wherein in the priority order, the calculated longer interaction time is ordered before the calculated shorter interaction time. as well as In response to receiving at least one request to copy data within a plurality of requests to copy data, the plurality of requests to copy data within the plurality of data containers are prioritized based on a calculated volume access probability.
2. The computer-implemented method of claim 1, wherein identifying copied data within corresponding data containers among a plurality of data containers based on indicative markers reflecting replication comprises: Based on changes detected in multiple stateful sets over a fixed time period, a control path is discovered within at least one of the multiple stateful sets.
3. The computer-implemented method of claim 1, wherein calculating the amount of time for interacting with the identified copied data based on a predetermined alarm threshold includes: The volume access probability is calculated based on the discovered control paths.
4. The computer-implemented method of claim 1 further comprises packaging data from a volume manager into multiple stateful sets by: extracting a process binary file from the volume manager and converting the extracted process binary file into at least one stateful set among the multiple stateful sets.
5. The computer-implemented method of claim 1 further includes monitoring changes within the plurality of data containers by: Access the schema information associated with each of the plurality of data containers within a predetermined time period; The accessed schema information is copied within each of the plurality of data containers; and The accessed schema information is synchronized across each of the multiple data containers.
6. The computer-implemented method of claim 2, wherein the control path for discovering request types between the stateful sets comprises: Identify at least one control block among the multiple control blocks within the plurality of stateful sets; as well as In response to identifying at least one control block, at least one replicated data set within the plurality of stateful sets is identified.
7. The computer-implemented method according to claim 6, further comprising: Determine the logical distance between at least one control block and at least one replicated data set within the plurality of stateful sets.
8. The computer-implemented method of claim 2, wherein the control path for discovering request types between the stateful sets comprises: A sandbox execution is performed for the input request type, which prevents negative impacts on the plurality of stateful sets.
9. The computer-implemented method according to claim 8, further comprising: The volume access probability is calculated by calculating the difference between the measured access time and the measured synchronization time. as well as The calculated volume access probability is verified by dividing the calculated volume access probability by the estimated volume access probability.
10. A computer program product, comprising: One or more computer-readable storage media and program instructions stored on the one or more computer-readable storage media, the program instructions comprising: Program instructions for identifying replicated data within corresponding data containers in multiple data containers based on indicative markers reflecting replication; Program instructions for calculating the amount of time to interact with the identified replicated data based on an alarm threshold, which, when triggered, alerts the remaining data containers among the plurality of data containers; Program instructions for synchronizing the identified replicated data within each corresponding data container, such that the program instructions for synchronizing the identified replicated data within each corresponding container reduce the waiting time for interacting with the identified replicated data based on a priority order of calculated interaction time amounts, wherein in the priority order, calculated longer interaction times are ordered before calculated shorter interaction times; and A program instruction for prioritizing the multiple requests to copy data within multiple data containers based on a calculated volume access probability in response to receiving at least one request to copy data among multiple requests to copy data.
11. The computer program product of claim 10, wherein the program instructions for identifying copied data within corresponding data containers among a plurality of data containers based on an indicative marker reflecting copying comprise: Program instructions for discovering a control path within at least one of the multiple stateful sets based on changes detected within multiple stateful sets over a fixed time period.
12. The computer program product of claim 10, wherein the program instructions for calculating the amount of time for interacting with the identified copied data based on an alarm threshold comprise: Program instructions used to calculate the volume access probability based on the discovered control paths.
13. The computer program product of claim 10, wherein the program instructions stored on the one or more computer-readable storage media further include: Program instructions for packaging data from a volume manager into multiple stateful sets using the following program instructions: program instructions for extracting process binary files from the volume manager and program instructions for converting the extracted process binary files into at least one stateful set among the multiple stateful sets.
14. The computer program product of claim 10, wherein the program instructions stored on the one or more computer-readable storage media further include: Program instructions for monitoring changes within the plurality of data containers using the following program instructions: Program instructions for accessing pattern information associated with each of the plurality of data containers within a predetermined time period; Program instructions for copying the accessed pattern information within each of the plurality of data containers; as well as Program instructions for synchronizing the copied accessed schema information across each of the plurality of data containers.
15. The computer program product of claim 11, wherein the program instructions for discovering control paths of request types between the state sets comprise: Program instructions used to identify at least one control block among multiple control blocks within the plurality of stateful sets; as well as In response to program instructions for identifying at least one control block, and program instructions for identifying at least one replicated data set within the plurality of stateful sets.
16. The computer program product of claim 15, wherein the program instructions stored on the one or more computer-readable storage media further include: Program instructions for determining the logical distance between at least one control block and at least one replicated data set within the plurality of stateful sets.
17. The computer program product of claim 11, wherein the program instructions for discovering control paths of request types between the stateful sets comprise: Program instructions for executing sandboxed execution for input request types, wherein the sandboxed execution prevents negative impacts on the plurality of stateful sets.
18. The computer program product of claim 17, wherein the program instructions stored on the one or more computer-readable storage media further include: Program instructions for calculating the probability of volume access by calculating the difference between the measured access time and the measured synchronization time; as well as Program instructions for verifying the calculated volume access probability by dividing the calculated volume access probability by the estimated volume access probability.
19. A computer system comprising: One or more computer processors; One or more computer-readable storage media; as well as Program instructions stored on the one or more computer-readable storage media for execution by at least one of the one or more processors, the program instructions comprising: Program instructions for identifying replicated data within corresponding data containers in multiple data containers based on indicative markers reflecting replication; Program instructions for calculating the amount of time to interact with the identified replicated data based on an alarm threshold, which, when triggered, alerts the remaining data containers among the plurality of data containers; Program instructions for synchronizing the identified replicated data within each corresponding data container, such that the program instructions for synchronizing the identified replicated data within each corresponding container reduce the waiting time for interacting with the identified replicated data based on a priority order of calculated interaction time amounts, wherein in the priority order, calculated longer interaction times are ordered before calculated shorter interaction times; and A program instruction for prioritizing the multiple requests to copy data within multiple data containers based on a calculated volume access probability in response to receiving at least one request to copy data among multiple requests to copy data.
Citation Information
Patent Citations
Multi-node scheduling method for writing operation load balance system
CN107179946A
Methods and systems for implementing shared disk array management functions
US20020188655A1