Cloud computing control plane storage expansion method and apparatus, computer device, readable storage medium, and program product

WO2026199959A1PCT designated stage Publication Date: 2026-10-01CHINA TELECOM CLOUD TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/134975
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-03-25
Filing Date
2025-11-14
Publication Date
2026-10-01

Smart Images

  • Figure CN2025134975_01102026_PF_FP_ABST
    Figure CN2025134975_01102026_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to a cloud computing control plane storage expansion method and apparatus, a computer device, a computer-readable storage medium, and a computer program product. The method comprises: on the basis of a data processing requirement, determining a general base class of a storage expansion layer, the general base class being configured for invocation of each storage plug-in in the storage expansion layer; on the basis of the general base class, configuring expansion storage plug-ins in the storage expansion layer; generating a unified data read-write entry for each expansion storage plug-in, a service database, and a cache in the storage expansion layer; and configuring a data read-write order of each expansion storage plug-in, the service database, and the cache. The method can increase cluster processing capacity.
Need to check novelty before this filing date? Find Prior Art

Description

Cloud computing control plane storage expansion methods, devices, computer equipment, readable storage media, and program products

[0001] Related applications

[0002] This application claims priority to Chinese patent application filed on March 25, 2025, with application number 2025103576730, entitled "Method, Apparatus, Computer Equipment, Readable Storage Medium and Program Product for Cloud Computing Control Plane Storage Expansion", the entire contents of which are incorporated herein by reference. Technical Field

[0003] This application relates to the field of cloud computing technology, and in particular to a cloud computing control plane storage expansion method, apparatus, computer equipment, computer-readable storage medium, and computer program product. Background Technology

[0004] In the cloud computing field, the control plane is primarily responsible for the resource management and scheduling of cloud computing clusters, including resource allocation and lifecycle management of cloud hosts. Well-known systems include OpenStack (OpenStack is a cloud platform management project, an open-source project composed of several major components designed to provide software for the construction and management of public, private, and hybrid clouds) and Kubernetes (Kubernetes is an open-source container orchestration and management system developed and maintained by Google. It is used to automate the deployment, scaling, and management of containerized applications, enabling them to run more efficiently, reliably, and scalably. Kubernetes aims to make deploying containerized applications simple and efficient, providing a mechanism for application deployment, planning, updating, and maintenance). OpenStack manages cloud hosts, while Kubernetes manages Pod scheduling.

[0005] In traditional technologies, Kubernetes (K8S) uses a control plane scheduling system based on ETCD (ETC Distributed, a distributed storage system, mainly referring to a distributed, consistent key-value storage system). Since ETCD itself has a storage capacity limit of 8GB, K8S has a storage capacity bottleneck. The recommended cluster capacity is generally 5K nodes, which poses a bottleneck in the management of large-scale clusters. Summary of the Invention

[0006] Therefore, it is necessary to provide a cloud computing management plane storage expansion method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can improve cluster processing capacity in response to the above-mentioned technical problems.

[0007] In a first aspect, this application provides a cloud computing control plane storage expansion method, the method comprising:

[0008] A general base class for the storage extension layer is determined based on data processing requirements. This general base class is used for calling various storage plugins in the storage extension layer.

[0009] Based on the aforementioned general base class, configure extended storage plugins in the storage extension layer;

[0010] A unified data read / write entry point is generated for each extended storage plugin, business database, and cache in the storage extension layer;

[0011] Configure the data read / write order of each of the aforementioned extended storage plugins, business databases, and caches.

[0012] In one embodiment, the method further includes:

[0013] Configure the total amount of data stored in the cache;

[0014] Detect whether the amount of data already stored in the cache is greater than or equal to the total amount of data stored.

[0015] If the amount of data already stored in the cache is greater than or equal to the total amount of data stored, target data to be deleted is determined from the cache based on data deletion rules, and the target data to be deleted is deleted.

[0016] In one embodiment, the method further includes:

[0017] Configure the cached data initialization method to populate the cache when data is queried.

[0018] In one embodiment, the method further includes:

[0019] The monitoring mode corresponding to the update configuration of the business database is configured. The business database is oriented towards the business terminal to store the latest business data.

[0020] If an update is detected in the business database, the updated data is synchronized to the corresponding extended storage plugin in the extended storage layer. If the updated data is stored in the cache, the updated data is synchronized to the cache.

[0021] In one embodiment, the method further includes:

[0022] Periodically retrieve data from the business database and compare the data in the business database with the data in the cache and the data in each extended storage plug-in in the extended storage layer;

[0023] If at least one of the data in the cache and the data in each extended storage plug-in of the extended storage layer is inconsistent with the data in the business database, the data in the cache and the data in each extended storage plug-in of the extended storage layer shall be corrected based on the data in the business database.

[0024] In one embodiment, the method further includes:

[0025] Detect whether there is final state data in the business database, wherein the final state data is the data that receives the business processing end information sent by the business terminal;

[0026] If final state data exists in the business database, the final state data is synchronized to the corresponding extended storage plugin in the storage extension layer, and the corresponding final state data in the business database is deleted.

[0027] Secondly, this application also provides a cloud computing control plane storage expansion device, the device comprising:

[0028] A general base class configuration module is used to determine the general base class of the storage extension layer based on data processing requirements. The general base class is used for calling each storage plugin in the storage extension layer.

[0029] An extended storage plugin configuration module is used to configure extended storage plugins in the storage extension layer based on the general base class.

[0030] The unified interface configuration module is used to generate a unified data read / write entry point for each extended storage plugin, business database, and cache in the storage extension layer.

[0031] The read / write order configuration module is used to configure the data read / write order of each of the aforementioned extended storage plugins, business databases, and caches.

[0032] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method in any of the above embodiments.

[0033] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the methods in any of the above embodiments.

[0034] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the method in any of the above embodiments.

[0035] The aforementioned cloud computing control plane storage expansion method, apparatus, computer equipment, computer-readable storage medium, and computer program product determine a general base class for the storage expansion layer based on data processing requirements. This general base class is used for calling various storage plugins within the storage expansion layer. Based on this general base class, extended storage plugins are configured in the storage expansion layer. A unified data read / write entry point is generated for each extended storage plugin, business database, and cache within the storage expansion layer. The data read / write order of each extended storage plugin, business database, and cache is configured. This provides a unified data read / write entry point for the control plane. Furthermore, each extended storage plugin, business database, and cache in the storage expansion layer exists as a plugin, and each extended storage plugin can be extended based on the general base class, thus realizing cloud computing control plane storage expansion and improving cluster processing capacity. Attached Figure Description

[0036] To more clearly illustrate the technical solutions in the embodiments of this application or the conventional technology, the drawings used in the description of the embodiments or the conventional technology will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the disclosed drawings without creative effort.

[0037] Figure 1 is an application environment diagram of the cloud computing control plane storage expansion method in one or more embodiments;

[0038] Figure 2 is a flowchart illustrating the cloud computing control plane storage expansion method in one or more embodiments;

[0039] Figure 3 is a schematic diagram of the module division of the storage extension layer in one or more embodiments;

[0040] Figure 4 is a schematic diagram of the plug-in storage mode in one or more embodiments;

[0041] Figure 5 is a schematic diagram of the cached data flow in one or more embodiments;

[0042] Figure 6 is a schematic diagram of the data synchronization steps in one or more embodiments;

[0043] Figure 7 is a flowchart of the data transfer steps in one or more embodiments;

[0044] Figure 8 is a structural block diagram of the cloud computing control plane storage expansion device in one or more embodiments;

[0045] Figure 9 is an internal structure diagram of a computer device in one or more embodiments. Detailed Implementation

[0046] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0047] The cloud computing control plane storage extension method provided in this application embodiment can be applied to the storage system shown in Figure 1. This storage system includes a cache, a business database, and various extended storage plugins in the storage extension layer, wherein the business database corresponds to driver layer storage.

[0048] This cache is the external interface layer storage for control plane data, used to store cloud computing related resource data; the driver layer storage is used for driver layer data storage for cloud computing scheduling task flow, mainly including the storage of resource, task and other data.

[0049] The business database is the core storage of the cloud computing management plane, used to store data such as resources and running tasks, and to implement data storage and message-driven mechanisms.

[0050] The storage extension layer stores all data, including resources and tasks, providing relational-like query capabilities. This layer includes various extended storage plugins such as MongoDB (MongoDB is a distributed file-based database written in C++, designed to provide scalable, high-performance data storage solutions for web applications. MongoDB is a product between relational and non-relational databases, and is the most feature-rich and relational-database-like among non-relational databases. It supports very flexible data structures, using a JSON-like BSON format, allowing it to store complex data types. MongoDB's greatest strength is its powerful query language, with syntax somewhat similar to object-oriented query languages, enabling almost all the functionalities of single-table queries in relational databases, and also supporting indexing), Elasticsearch, and other databases. Specific limitations are not specified here.

[0051] In this application, the storage extension layer can store all data. However, since the total amount of data is large, it is impossible to load it all into the cache each time. Therefore, the cache initialization mode and data retention method are modified. This ensures that the cache only stores the data obtained from each query, and that the target data to be deleted is determined from the cache based on data deletion rules, thus guaranteeing that the data stored in the cache is all frequently used data.

[0052] In an exemplary embodiment, as shown in FIG2, a cloud computing control plane storage expansion method is provided. Taking the application of this method to the storage system in FIG1 as an example, the method includes the following steps S202 to S208. Wherein:

[0053] S202: Determine the general base class of the storage extension layer based on data processing requirements. The general base class is used for calling various storage plugins in the storage extension layer.

[0054] Referring to Figure 3, which is a schematic diagram of the module division of the storage extension layer in one embodiment, the storage extension layer includes a general base class. This general base class is determined based on data processing requirements, which may include acquisition, selection, update, and insertion. Therefore, the general base class includes functions for acquiring instances, selection, updating, and inserting. The storage extension layer also includes various storage plugins, each of which is invoked through the general base class. These storage plugins are hot-swappable to achieve horizontal scaling of the storage extension layer. Furthermore, the storage plugins can be categorized based on data type, ensuring that each storage plugin stores different data types. For example, when transferring data from a business database to the storage extension layer, business data can be stored in different storage plugins based on its type. For instance, it can be categorized based on business data attributes, such as business type, region, and system to which the data belongs, etc. This approach categorizes business data, facilitating both querying and data classification.

[0055] S204: Configure extended storage plugins in the storage extension layer based on a common base class.

[0056] In this application, to expand the storage space in the storage extension layer, corresponding extended storage plugins are configured based on a general base class, such as MongoDao and EsDao in Figure 3. These are extended storage plugins generated based on MongoDB and ES databases, respectively. In other embodiments, these extended storage plugins may also include other types of databases, which are not specifically limited here. Each extended storage plugin provides data read and write functions, with interfaces including GetItem, GetList, Filter, Insert, Update, Delete, etc. For example, the extended storage plugin based on a MongoDB database is implemented based on the interface definition of the general base class ExtDao, serving as the data implementation layer for MongoDB. The processing of other databases is similar, and no specific limitations are made here.

[0057] The new addition is a general base class, ExtDao, for the extended storage layer. This serves as a common base class for extended storage types, facilitating future extensions to other storage types. The ExtDao interface is designed as the general base class for the extended storage layer, and various extended storage types (such as MongoDB) need to implement the relevant methods. ExtDao serves as the unified type for the extended storage layer.

[0058] S206: Generates a unified data read / write entry point for each extended storage plugin, business database, and cache in the storage extension layer.

[0059] Referring to Figure 4, which is a schematic diagram of the plug-in storage mode in one embodiment, in this embodiment, each extended storage plug-in, the existing business database, and the existing cache in the storage extension layer are configured and managed through the plug-in mode. Referring to the new storage layer plug-in mode in Figure 4, the storage types of various resources are managed through configuration, and the plug-in mode is used as the overall entry point for data access.

[0060] An abstract Data Service layer, or DS layer, is created on top of the storage extension layer, existing business database, and existing cache. This layer serves as the external access point for storage layer data, shielding the business side from interface implementation and uniformly enabling the acquisition and assembly of underlying data.

[0061] A storage plug-in model is implemented at the DS layer, managing the storage of various resources through plug-in configuration, enabling the storage layer to be pluggable and improving its scalability. It also serves as a unified entry point for data access. A unified development specification is established for the storage layer, clearly defining the responsibilities of each layer for subsequent development.

[0062] The corresponding browser interface modification method is as follows: The browsing data reading process is controlled by calling the new DS layer's storage plugin model, thus standardizing the process. Simultaneously, the business side does not need to concern itself with the underlying storage implementation, achieving the goal of making the underlying storage implementation transparent to the business.

[0063] S208: Configure the data read / write order of each extended storage plugin, business database, and cache.

[0064] The read / write order is also pre-configured. For example, in this application, after receiving a data processing request, the system first queries the cache. If the data exists in the cache, it returns directly; otherwise, it continues to query the business database. If the data exists in the business database, it returns and stores the data in the cache. If the data does not exist in the business database, it continues to query the storage extension layer. The storage extension layer includes multiple storage plugins. Therefore, the storage plugin corresponding to the current request can be determined based on the type of data stored in each storage plugin. Then, the system queries the storage plugin. If no data is found, an error is reported; if data is found, it returns and stores the data in the cache.

[0065] The aforementioned cloud computing control plane storage expansion method determines a common base class for the storage expansion layer based on data processing requirements. This common base class is used for calling various storage plugins within the storage expansion layer. Based on this common base class, extended storage plugins are configured in the storage expansion layer. A unified data read / write entry point is generated for each extended storage plugin, business database, and cache within the storage expansion layer. The data read / write order for each extended storage plugin, business database, and cache is configured. This provides a unified data read / write entry point for the control plane. Furthermore, since each extended storage plugin, business database, and cache exists as a plugin, and each extended storage plugin can be extended based on the common base class, cloud computing control plane storage expansion is achieved, improving cluster processing capacity.

[0066] In one optional embodiment, the method further includes: configuring the total amount of data stored in the cache; detecting whether the amount of data already stored in the cache is greater than or equal to the total amount of data stored; if the amount of data already stored in the cache is greater than or equal to the total amount of data stored, determining the target data to be deleted from the cache based on data deletion rules, and deleting the target data to be deleted.

[0067] In one alternative embodiment, the method further includes configuring the cached data initialization method to populate the cache when data is queried.

[0068] The cache stores data such as ` / instance / `, ` / host / `, ` / flavor / `, ` / allocations / `, ` / keypairs / `, and ` / instance_backup / ` to accelerate the query efficiency of frequently accessed data. A local LRU cache is implemented, limiting the total amount of cached data. The total data storage limit `limit_size` is configured; if the limit is exceeded, no new data is added, and cached data eviction follows an LRU strategy. Configuring the total data storage limit `limit_size` ensures that the memory usage of the cached data does not exceed the instance's maximum capacity.

[0069] The API Cache data flow can be seen in Figure 5. The original Cache served as the data query carrier for the API, so it would load all the data from the business database Etcd once during API initialization. This time, it is changed to not load during initialization, but to fill the cache when querying data.

[0070] To facilitate understanding of the caching process, upon receiving a data processing request, the system first queries the cache. If data is found, it is returned; otherwise, it continues querying the business database and extended storage layer, storing the retrieved data in the cache. The amount of data stored in the cache is periodically checked, and / or the amount of data stored in the cache is checked each time retrieved data is stored. If the amount of data already stored in the cache is greater than or equal to the total data storage volume, the target data to be deleted is determined from the cache based on data deletion rules and then deleted.

[0071] The data deletion rules can include the LRU strategy, which means that when the cache space is insufficient, the least recently used data is evicted first to make room for new data.

[0072] In other embodiments, the data deletion rule may include other rules, which are not specifically limited here. For example, if the current business data is stored in a specific extended storage plugin, data retrieved from other extended storage plugins can be deleted to ensure efficient processing of a business over a period of time.

[0073] In one optional embodiment, the method further includes: configuring a monitoring mode corresponding to the update of the business database, the business database being oriented towards the business terminal to store the latest business data; when an update is detected in the business database, synchronizing the updated data to the corresponding extended storage plugin in the extended storage layer, and synchronizing the updated data to the cache when the updated data is stored in the cache.

[0074] In one optional embodiment, the method further includes: periodically acquiring data from the business database and comparing the data in the business database with data in the cache and data in each extended storage plug-in of the extended storage layer; if at least one of the data in the cache and the data in each extended storage plug-in of the extended storage layer is inconsistent with the data in the business database, correcting the data in the cache and the data in each extended storage plug-in of the extended storage layer based on the data in the business database.

[0075] As shown in Figure 6, this application also involves a data synchronization process, in which data in the business database can be modified by business terminals, thereby modifying the data in the business database. In order to ensure the consistency of data in the business database, data in the cache, and data in each extended storage plugin in the extended storage layer, this application introduces at least one of a monitoring strategy and an offline synchronization strategy.

[0076] The monitoring strategy involves monitoring updates to the business database and using a Watch mechanism to update data in the cache and various extended storage plugins. For example, if the Watch mechanism detects a data update in the business database, it determines the updated data based on the update log and then updates the data in the cache and various extended storage plugins accordingly. Specifically, by watching the data in the business database, it updates certain keys in the cache and the data in the MongoDB extended storage plugin. This requires implementing cache and MongoDB data update interfaces.

[0077] Offline synchronization strategy is an additional offline reconciliation mechanism provided to address data inconsistency issues caused by Watch loss, thus better ensuring data consistency. This offline synchronization strategy can be implemented through scheduled tasks (e.g., synchronizing data every hour; in other embodiments, the period of the scheduled task can be different, without specific limitations here) or by synchronizing after data processing in the business database is complete. Specifically, it periodically retrieves data from the business database and compares it with the data in the cache and the data in each extended storage plugin of the extended storage layer. If at least one of the data in the cache or the data in each extended storage plugin of the extended storage layer is inconsistent with the data in the business database, the data in the cache and the data in each extended storage plugin of the extended storage layer are corrected based on the data in the business database.

[0078] In one optional embodiment, the method further includes: detecting whether final state data exists in the business database, wherein the final state data is data that receives business processing completion information sent by the business terminal; if the final state data exists in the business database, synchronizing the final state data to the corresponding extended storage plugin in the storage extension layer, and deleting the corresponding final state data in the business database.

[0079] As shown in Figure 7, an extended storage layer has been added this time, designed to replace the backup business database. At the same time, considering that the data in the business database can be further simplified and the capacity of the main business database can be reduced, the data in the business database that is not related to the business operation can be simplified and transferred to the extended storage layer.

[0080] Based on the previous analysis, and considering that task, plan, and job data occupy more than 70% of the extended storage layer's capacity, the design proposes to delete the final state task, plan, and job data from the extended storage layer while simultaneously writing the data back to the extended storage layer.

[0081] The business processing completion information, that is, the processing completion information corresponding to the task, plan, and job data, is sent from the business terminal to the business database.

[0082] The main process involves watching for data updates in the business database on the Engine side, deleting final-state data from the extended storage layer, and writing it back to the extended storage layer. Retry and idempotency logic for interfaces need to be considered here to ensure data consistency.

[0083] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0084] Based on the same inventive concept, this application also provides a cloud computing control plane storage expansion device for implementing the cloud computing control plane storage expansion method described above. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in one or more embodiments of the cloud computing control plane storage expansion device provided below can be found in the limitations of the cloud computing control plane storage expansion method described above, and will not be repeated here.

[0085] In an exemplary embodiment, as shown in FIG8, a cloud computing control plane storage extension device is provided, including: a general base class configuration module 801, an extended storage plug-in configuration module 802, a unified interface configuration module 803, and a read / write order configuration module 804, wherein:

[0086] The general base class configuration module 801 is used to determine the general base class of the storage extension layer based on data processing requirements. The general base class is used for calling various storage plugins in the storage extension layer.

[0087] Extended storage plugin configuration module 802 is used to configure extended storage plugins in the storage extension layer based on a common base class;

[0088] The unified interface configuration module 803 is used to generate a unified data read and write entry point for each extended storage plugin, business database and cache in the storage extension layer;

[0089] The read / write order configuration module 804 is used to configure the data read / write order of various extended storage plugins, business databases, and caches.

[0090] In one optional embodiment, the above apparatus further includes: a cache modification module, configured to configure the total amount of data stored in the cache; detect whether the amount of data already stored in the cache is greater than or equal to the total amount of data stored; and if the amount of data already stored in the cache is greater than or equal to the total amount of data stored, determine the target data to be deleted from the cache based on data deletion rules, and delete the target data to be deleted.

[0091] In one optional embodiment, the cache modification module is further configured to initialize the cached data in such a way that the cache is populated when data is queried.

[0092] In one optional embodiment, the above apparatus further includes: a monitoring module, configured to update the monitoring mode corresponding to the business database, the business database being oriented towards the business terminal to store the latest business data; when an update is detected in the business database, the updated data is synchronized to the corresponding extended storage plugin in the extended storage layer, and when the updated data is stored in the cache, the updated data is synchronized to the cache.

[0093] In one optional embodiment, the above apparatus further includes: an offline synchronization module, configured to periodically acquire data from the business database and compare the data in the business database with the data in the cache and the data in each extended storage plug-in of the extended storage layer; and, if at least one of the data in the cache and the data in each extended storage plug-in of the extended storage layer is inconsistent with the data in the business database, correct the data in the cache and the data in each extended storage plug-in of the extended storage layer based on the data in the business database.

[0094] In one optional embodiment, the above apparatus further includes: a transfer module, configured to detect whether final state data exists in the business database, wherein the final state data is data that receives business processing completion information sent by the business terminal; if the final state data exists in the business database, the final state data is synchronized to the corresponding extended storage plugin in the storage extension layer, and the corresponding final state data is deleted from the business database.

[0095] Each module in the aforementioned cloud computing control plane storage expansion device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.

[0096] In an exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram is shown in Figure 9. The computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is connected to the system bus via the I / O interfaces. The processor of the computer device provides computing and control capabilities. The memory of the computer device includes non-volatile storage media and internal memory. The non-volatile storage media stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The database of the computer device stores business data. The I / O interfaces of the computer device are used for exchanging information between the processor and external devices. The communication interface of the computer device is used for communication with external terminals via a network connection. When the computer program is executed by the processor, it implements a cloud computing control plane storage expansion method.

[0097] Those skilled in the art will understand that the structure shown in Figure 9 is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or may combine certain components, or may have different component arrangements.

[0098] In one exemplary embodiment, a computer device is provided, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to perform the following steps: determining a general base class for a storage extension layer based on data processing requirements; the general base class is used for calling various storage plugins in the storage extension layer; configuring extended storage plugins in the storage extension layer based on the general base class; generating a unified data read / write entry point for each extended storage plugin, business database, and cache in the storage extension layer; and configuring the data read / write order of each extended storage plugin, business database, and cache.

[0099] In one embodiment, when the processor executes the computer program, it further performs the following steps: configuring the total amount of data stored in the cache; detecting whether the amount of data already stored in the cache is greater than or equal to the total amount of data stored; and if the amount of data already stored in the cache is greater than or equal to the total amount of data stored, determining the target data to be deleted from the cache based on data deletion rules, and deleting the target data to be deleted.

[0100] In one embodiment, when the processor executes a computer program, it further performs the following steps: configuring the cached data initialization method to populate the cache in the event of a data query.

[0101] In one embodiment, when the processor executes the computer program, it further implements the following steps: configuring the monitoring mode corresponding to the update of the business database, the business database being oriented towards the business terminal to store the latest business data; when an update is detected in the business database, synchronizing the updated data to the corresponding extended storage plug-in in the extended storage layer, and synchronizing the updated data to the cache when the updated data is stored in the cache.

[0102] In one embodiment, when the processor executes the computer program, it further performs the following steps: periodically retrieves data from the business database and compares the data in the business database with the data in the cache and the data in each extended storage plug-in of the extended storage layer; if at least one of the data in the cache and the data in each extended storage plug-in of the extended storage layer is inconsistent with the data in the business database, it corrects the data in the cache and the data in each extended storage plug-in of the extended storage layer based on the data in the business database.

[0103] In one embodiment, when the processor executes the computer program, it further performs the following steps: detecting whether final state data exists in the business database, where the final state data is data that receives business processing completion information sent by the business terminal; if the final state data exists in the business database, synchronizing the final state data to the corresponding extended storage plugin in the storage extension layer, and deleting the corresponding final state data in the business database.

[0104] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, it performs the following steps: determining a general base class for the storage extension layer based on data processing requirements. The general base class is used for calling various storage plugins in the storage extension layer; configuring extended storage plugins in the storage extension layer based on the general base class; generating a unified data read / write entry point for each extended storage plugin, business database, and cache in the storage extension layer; and configuring the data read / write order for each extended storage plugin, business database, and cache.

[0105] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: configuring the total amount of data stored in the cache; detecting whether the amount of data already stored in the cache is greater than or equal to the total amount of data stored; if the amount of data already stored in the cache is greater than or equal to the total amount of data stored, determining the target data to be deleted from the cache based on data deletion rules, and deleting the target data to be deleted.

[0106] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: configuring the cached data initialization method to populate the cache in the event of a data query.

[0107] In one embodiment, when the computer program is executed by the processor, it further implements the following steps: configuring the monitoring mode corresponding to the update of the business database, the business database being oriented towards the business terminal to store the latest business data; when an update is detected in the business database, synchronizing the updated data to the corresponding extended storage plugin in the extended storage layer, and synchronizing the updated data to the cache when the updated data is stored in the cache.

[0108] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: periodically retrieves data from the business database and compares the data in the business database with the data in the cache and the data in each extended storage plug-in of the extended storage layer; if at least one of the data in the cache and the data in each extended storage plug-in of the extended storage layer is inconsistent with the data in the business database, corrects the data in the cache and the data in each extended storage plug-in of the extended storage layer based on the data in the business database.

[0109] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: detecting whether final state data exists in the business database, where the final state data is the data of receiving business processing completion information sent by the business terminal; if the final state data exists in the business database, synchronizing the final state data to the corresponding extended storage plug-in in the storage extension layer, and deleting the corresponding final state data in the business database.

[0110] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, performs the following steps: determining a general base class for a storage extension layer based on data processing requirements, the general base class being used for calling various storage plugins in the storage extension layer; configuring extended storage plugins in the storage extension layer based on the general base class; generating a unified data read / write entry point for each extended storage plugin, business database, and cache in the storage extension layer; and configuring the data read / write order for each extended storage plugin, business database, and cache.

[0111] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: configuring the total amount of data stored in the cache; detecting whether the amount of data already stored in the cache is greater than or equal to the total amount of data stored; if the amount of data already stored in the cache is greater than or equal to the total amount of data stored, determining the target data to be deleted from the cache based on data deletion rules, and deleting the target data to be deleted.

[0112] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: configuring the cached data initialization method to populate the cache in the event of a data query.

[0113] In one embodiment, when the computer program is executed by the processor, it further implements the following steps: configuring the monitoring mode corresponding to the update of the business database, the business database being oriented towards the business terminal to store the latest business data; when an update is detected in the business database, synchronizing the updated data to the corresponding extended storage plugin in the extended storage layer, and synchronizing the updated data to the cache when the updated data is stored in the cache.

[0114] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: periodically retrieves data from the business database and compares the data in the business database with the data in the cache and the data in each extended storage plug-in of the extended storage layer; if at least one of the data in the cache and the data in each extended storage plug-in of the extended storage layer is inconsistent with the data in the business database, corrects the data in the cache and the data in each extended storage plug-in of the extended storage layer based on the data in the business database.

[0115] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: detecting whether final state data exists in the business database, where the final state data is the data of receiving business processing completion information sent by the business terminal; if the final state data exists in the business database, synchronizing the final state data to the corresponding extended storage plug-in in the storage extension layer, and deleting the corresponding final state data in the business database.

[0116] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0117] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

[0118] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0119] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. A method for expanding storage in the cloud computing control plane, wherein, The method includes: A general base class for the storage extension layer is determined based on data processing requirements. This general base class is used for calling various storage plugins in the storage extension layer. Based on the aforementioned general base class, configure extended storage plugins in the storage extension layer; A unified data read / write entry point is generated for each extended storage plugin, business database, and cache in the storage extension layer; Configure the data read / write order of each of the aforementioned extended storage plugins, business databases, and caches.

2. The method according to claim 1, wherein, The method further includes: Configure the total amount of data stored in the cache; Detect whether the amount of data already stored in the cache is greater than or equal to the total amount of data stored. If the amount of data already stored in the cache is greater than or equal to the total amount of data stored, target data to be deleted is determined from the cache based on data deletion rules, and the target data to be deleted is deleted.

3. The method according to claim 1, wherein, The method further includes: Configure the cached data initialization method to populate the cache when data is queried.

4. The method according to claim 1, wherein, The method further includes: The monitoring mode corresponding to the update configuration of the business database is configured. The business database is oriented towards the business terminal to store the latest business data. If an update is detected in the business database, the updated data is synchronized to the corresponding extended storage plugin in the extended storage layer. If the updated data is stored in the cache, the updated data is synchronized to the cache.

5. The method according to claim 4, wherein, The method further includes: Periodically retrieve data from the business database and compare the data in the business database with the data in the cache and the data in each extended storage plug-in in the extended storage layer; If at least one of the data in the cache and the data in each extended storage plug-in of the extended storage layer is inconsistent with the data in the business database, the data in the cache and the data in each extended storage plug-in of the extended storage layer shall be corrected based on the data in the business database.

6. The method according to claim 1, wherein, The method further includes: Detect whether there is final state data in the business database, wherein the final state data is the data that receives the business processing end information sent by the business terminal; If final state data exists in the business database, the final state data is synchronized to the corresponding extended storage plugin in the storage extension layer, and the corresponding final state data in the business database is deleted.

7. A cloud computing control plane storage expansion device, wherein, The device includes: A general base class configuration module is used to determine the general base class of the storage extension layer based on data processing requirements. The general base class is used for calling each storage plugin in the storage extension layer. An extended storage plugin configuration module is used to configure extended storage plugins in the storage extension layer based on the general base class. The unified interface configuration module is used to generate a unified data read / write entry point for each extended storage plugin, business database, and cache in the storage extension layer. The read / write order configuration module is used to configure the data read / write order of each of the aforementioned extended storage plugins, business databases, and caches.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, wherein, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.

10. A computer program product comprising a computer program, wherein, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.