Cloud resource charging method and device based on public cloud technology and cloud management platform
By using a dynamic billing model, high discounts are applied when cloud resources are readily available, and low discounts are applied when resources are scarce. This solves the problems of high prices and easy interruptions in existing cloud resource billing methods, enabling low-cost and uninterrupted services, and improving cloud resource utilization and user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
- Filing Date
- 2022-04-29
- Publication Date
- 2026-06-05
AI Technical Summary
Existing cloud resource billing methods suffer from high prices and easy interruptions for on-demand billing, and random interruptions for auction billing. There is a lack of postpaid billing models that guarantee uninterrupted service while keeping costs lower than on-demand billing.
The system adopts a dynamic billing model, which uses high discount billing when cloud resources are available and low discount billing when resources are insufficient. It also avoids interruption and recovery of resources before tenants actively release them. By combining dynamic billing and on-demand billing, it provides low-cost and uninterrupted services.
It achieves reduced billing costs, improved cloud resource utilization and user experience while ensuring uninterrupted business operations, and dynamically adjusts discounts to adapt to changes in resource availability.
Smart Images

Figure CN117014238B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of cloud resource billing technology, and in particular to a cloud resource billing method, apparatus and cloud management platform based on public cloud technology. Background Technology
[0002] In recent years, cloud resources have developed rapidly. Currently, cloud users (such as enterprises and government agencies) can apply to cloud service providers for cloud resources (such as computing resources, storage resources, network resources, and various software services). Cloud service providers can then allocate the corresponding cloud resources to cloud users based on their applications and charge them accordingly.
[0003] Currently, there are two main post-billing models (where users are not charged when purchasing computing resources, but are charged when they finish using them): pay-as-you-go and spot billing. However, pay-as-you-go pricing is relatively expensive, and spot billing can lead to service interruptions when inventory is low. Therefore, there is an urgent need for a post-billing method that dynamically charges based on resource pool capacity and ensures that service is not randomly interrupted.
[0004] The information disclosed in this background section is intended only to enhance the understanding of the overall background of the invention and should not be construed as an admission or in any way implying that the information constitutes prior art known to those skilled in the art. Summary of the Invention
[0005] This invention provides a cloud resource billing method, device, and cloud management platform based on public cloud technology. By combining dynamic pricing and on-demand pricing, it can provide tenants with low-cost and uninterrupted services.
[0006] In a first aspect, embodiments of the present invention provide a cloud resource billing method based on public cloud technology, applied to a cloud management platform, comprising: providing a dynamic billing selection interface to a tenant, the dynamic billing selection interface being used to confirm that the cloud resource selected by the tenant for purchase and that the billing method for the cloud resource is a dynamic billing mode; billing the cloud resource according to the dynamic billing mode, wherein billing the cloud resource according to the dynamic billing mode includes: determining the resource availability of the cloud resource pool where the cloud resource is located, billing the cloud resource at a first discount during a period when the resource availability is sufficient, and billing the cloud resource at a second discount during a period when the resource availability is insufficient, wherein the first discount is lower than the second discount, and the cloud resource is not interrupted or reclaimed before the tenant actively releases the cloud resource.
[0007] This solution utilizes a dynamic billing model that adjusts discounts based on resource availability to provide tenants with low-cost services without business interruption.
[0008] In one possible implementation, when the tenant actively releases the cloud resources, the cloud management platform provides the tenant with a total fee, which is the sum of the fees charged for the cloud resources at a first discount during the period when the resource availability is sufficient and the fees charged for the cloud resources at a second discount during the period when the resource availability is insufficient.
[0009] In this implementation, billing is performed when the tenant actively releases cloud resources, eliminating the need for billing during the tenant's use of cloud resources. This reduces unnecessary billing transactions, improves billing efficiency, and ensures a better user experience.
[0010] In one possible implementation, the period when resource availability is sufficient is the evening period, and the period when resource availability is insufficient is the daytime period.
[0011] This implementation improves the utilization rate of cloud resources during evening hours by using lower discounts, i.e., lower billing prices.
[0012] In one possible implementation, the dynamic billing selection interface is an application programming interface (API), user configuration interface, or script template upload interface that the cloud management platform exposes to tenants.
[0013] In this implementation, data from user-programmed code, user-filled scripts, or user-configured settings are obtained through an interface, and various dynamic billing configuration methods are adopted to meet the needs of different users.
[0014] In one possible implementation, the cloud resources are computing resources, network resources, or storage resources provided to tenants for purchase and / or use in a public cloud service.
[0015] In this implementation, different cloud resources can all adopt dynamic billing methods, further improving the utilization rate of cloud resources.
[0016] In one possible implementation, the cloud management platform also provides tenants with an on-demand billing mode selection interface, which is used to confirm that the cloud resources selected by the tenant for purchase and the billing method for the cloud resources is on-demand billing mode.
[0017] This implementation method enables the coexistence of dynamic billing and on-demand billing for cloud resources by providing an interface for on-demand billing mode.
[0018] In one possible implementation, the cost of billing the cloud resources at the second discount during the period when resource availability is insufficient is less than or equal to the cost of billing the cloud resources using an on-demand billing model during the same period.
[0019] In this implementation, during periods of insufficient resources, the cost of dynamic billing is lower than that of on-demand billing, thus guiding users to choose the dynamic billing model and improving the utilization rate of cloud resources.
[0020] In a second aspect, embodiments of the present invention provide a cloud resource billing device based on public cloud technology, comprising: at least one memory for storing a program; and at least one processor for executing the program stored in the memory, wherein when the program stored in the memory is executed, the processor is used to execute the method provided in the first aspect.
[0021] In practical applications, the device includes several modules, which are used to execute various steps in the cloud resource billing method based on public cloud technology provided in the first aspect of the present invention. The division of modules is not limited here.
[0022] For example, it can be divided into an interface providing module and a billing module; wherein, the interface providing module is configured to provide a dynamic billing interface, and further, it can also provide an on-demand billing interface; the billing module is used to implement the billing of tenants' cloud resources according to the dynamic billing mode, and further, when the device provides an on-demand billing interface, it can also implement the billing of tenants' cloud resources according to the on-demand billing mode. For the specific functions performed by each module of this device and the beneficial effects achieved, please refer to the functions of each step of the cloud resource billing method based on public cloud technology provided in the first aspect of the embodiments of the present invention, which will not be repeated here.
[0023] For example, the device may be a chip or a processor.
[0024] In one example, the device may include a processor that can be coupled to memory, read instructions from the memory, and execute the methods provided in the first aspect according to those instructions. The memory may be integrated into the chip or processor, or it may be independent of the chip or processor.
[0025] For example, the device can be a cloud management platform.
[0026] Thirdly, embodiments of the present invention provide a computer storage medium storing instructions that, when executed on a computer, cause the computer to perform the method provided in the first aspect.
[0027] Fourthly, embodiments of the present invention provide a computer program product containing instructions that, when executed on a computer, cause the computer to perform the method provided in the first aspect. Attached Figure Description
[0028] Figure 1 This is a system architecture diagram of a cloud resource management system provided in an embodiment of the present invention;
[0029] Figure 2a This is a schematic diagram of a fluctuating resource availability curve provided in an embodiment of the present invention. Figure 1 ;
[0030] Figure 2b This is a schematic diagram of a fluctuating resource availability curve provided in an embodiment of the present invention;
[0031] Figure 2c This is a schematic diagram of a stable resource availability curve provided in an embodiment of the present invention;
[0032] Figure 2d This is a schematic diagram of a discount curve provided in an embodiment of the present invention. Figure 1 ;
[0033] Figure 2e This is a schematic diagram of a discount curve provided in an embodiment of the present invention;
[0034] Figure 3 This is a schematic diagram of the structure of a computer provided in an embodiment of the present invention;
[0035] Figure 4 This is a flowchart illustrating a virtual machine billing scheme provided in an embodiment of the present invention;
[0036] Figure 5 This is a flowchart illustrating a cloud resource billing method based on public cloud technology provided in an embodiment of the present invention;
[0037] Figure 6 This is a schematic diagram of the structure of a cloud resource billing device based on public cloud technology provided in an embodiment of the present invention. Detailed Implementation
[0038] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be described below with reference to the accompanying drawings.
[0039] In the description of the embodiments of the present invention, the words "exemplary," "for example," or "for instance" are used to indicate that they are examples, illustrations, or descriptions. Any embodiment or design that is described as "exemplary," "for example," or "for instance" in the embodiments of the present invention should not be construed as being more preferred or advantageous than other embodiments or designs. Rather, the use of the words "exemplary," "for example," or "for instance" is intended to present the relevant concepts in a specific manner.
[0040] In the description of the embodiments of this invention, the term "and / or" is merely a description of the association relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, B existing alone, and A and B existing simultaneously. Furthermore, unless otherwise stated, the term "multiple" means two or more. For example, multiple systems refer to two or more systems, and multiple terminals refer to two or more terminals.
[0041] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. The terms "comprising," "including," "having," and their variations all mean "including but not limited to," unless otherwise specifically emphasized.
[0042] Currently, as cloud applications become increasingly widespread, more and more enterprises are choosing cloud services from multiple cloud service providers (a model of adding, using, and interacting with internet-based services, typically involving the provision of dynamically scalable and often virtualized resources via the internet). Metering and billing of cloud resources is a commonly used function.
[0043] Currently, cloud resource billing is mainly divided into two categories: prepaid and postpaid models. The prepaid model means that users know the duration and operating mode of their business in advance and pay in advance when purchasing cloud resources. The postpaid model is suitable for users whose businesses have dynamic characteristics, with peak and off-peak periods where the demand for computing resources varies. Users are not charged when purchasing computing resources, but are charged only when they finish using them. The advantage of this payment model is that it charges on demand, allowing excess computing resources to be released at any time during off-peak periods to reduce costs.
[0044] Currently, cloud resource billing methods are divided into three models: per-cycle billing, on-demand billing, and spot billing.
[0045] Among them, periodic billing is suitable for scenarios where the business is relatively stable and the usage duration and patterns can be known in advance. However, many users migrate to the cloud to fully utilize the elastic scaling features of cloud resources. In other words, users' business processes are dynamic, and they need to use cloud resources on demand. During peak business periods, they purchase more computing resources to meet business needs, and when business is slow, they release excess computing resources to reduce costs.
[0046] The on-demand billing model has the advantage of not being interrupted by the system due to insufficient inventory, but the price is relatively high.
[0047] Spot billing has an interruption mechanism. When inventory resources are insufficient, or the market price of a spot instance exceeds the price cap, the instance (which can be understood as an independent computing unit) will be interrupted and reclaimed. Data backup is necessary in such cases. Spot instances are not suitable for services with extremely high stability requirements. While spot billing is cheaper than on-demand billing, it is subject to system interruption due to insufficient inventory. Most user businesses cannot accept such random interruptions, limiting its application scope. In other words, spot billing is cheaper than on-demand billing, but it suffers from random interruptions, affecting the stable operation of users' cloud services.
[0048] Currently, there is a lack of a postpaid billing model that can guarantee uninterrupted service while charging less than on-demand billing fees.
[0049] To address the aforementioned issues, this invention provides a dynamic billing model. This model applies a high discount when cloud resources are readily available and a low discount when cloud resources are insufficient, thus combining billing methods for both situations. Furthermore, under this dynamic billing model, cloud resources will not be interrupted or reclaimed if the tenant does not actively release them, thereby providing tenants with low-cost and uninterrupted services and improving user experience.
[0050] It should be noted that the cloud resources mentioned in the embodiments of this invention can be cloud resources in a public cloud. A public cloud refers to services provided by a third-party provider through a public network, available to anyone who wishes to use or purchase them. In these embodiments, individuals who have registered an account and password on a public cloud and wish to or have already purchased cloud resources are referred to as tenants. Furthermore, the cloud resources involved in these embodiments can be understood as any cloud product. Cloud resources include computing resources, network resources, and storage resources. Computing resources include, for example, virtual machines, containers, and bare-metal servers; network resources include, for example, bandwidth packages, elastic network interface cards (NICs), firewalls, and elastic network interface cards (ENCs); and storage resources include, for example, cloud disks and object storage buckets. Cloud resources also include cloud services for managing computing, network, or storage resources, such as scaling up or down computing resources. These embodiments do not specifically limit this; the specific service can be determined based on actual needs. If the cloud products are different, such as virtual machines of different specifications, they can be considered different types of cloud resources, i.e., multiple cloud resources. Of course, if cloud products can be purchased by quantity, then there can be multiple cloud resources, i.e., the quantity of cloud resources is multiple.
[0051] The following describes a cloud resource management system that implements a dynamic billing model. Figure 1 This is a system architecture diagram of a cloud resource management system provided in an embodiment of the present invention. For example... Figure 1 As shown, the system includes an inventory system, a resource pool planning system, a pricing system, a client, a cloud management platform, and a billing system.
[0052] The inventory system is used to build multiple resource pools and monitor these pools to obtain resource usage information. For example... Figure 1 As shown, cloud resources include computing resources, network resources, and storage resources. Correspondingly, multiple resource pools may include computing resource pools, storage resource pools, and network resource pools. This embodiment of the invention does not impose specific limitations on these resources. The number of resource pools can be designed according to actual needs. For example, a software resource pool can also be set up.
[0053] The computing resource pool can include multiple computing nodes (computers used for computing, such as servers; in some cases, a single computing node can deploy multiple computers) such as computing node 1, computing node 2, ... and cloud resources obtained by virtualizing these computing nodes, such as virtual machines, databases, and big data services.
[0054] The storage resource pool can include multiple storage nodes such as storage node 1, storage node 2, ... (storage devices used for storage, such as cloud disks; in some cases, a storage node can deploy multiple storage devices), as well as cloud resources obtained by virtualizing these storage nodes, such as cloud disks, distributed caching services, distributed messaging services, cloud backups, etc.
[0055] The network resource pool can include multiple network nodes such as network node 1, network node 2, ... (network devices used for data forwarding, such as gateways, switches, and routers), as well as cloud resources obtained by virtualizing these network nodes, such as bandwidth, gateways, traffic packets, cloud connections, and network cards.
[0056] Resource usage information describes the actual usage of cloud resources. For example, if the cloud resource is a virtual machine, the actual usage information could include the number of virtual machines currently in use, as well as the number of CPU cores used, memory usage, bandwidth usage, and cloud disk usage.
[0057] The resource pool planning system is used to create usage profiles for cloud resources based on resource usage information, determine the resource types of cloud resources, and thus determine the resource planning information for cloud resources, which is then published externally. This resource planning information can include the resource type and the available quantity of cloud resources, enabling the cloud management platform to sell cloud resources according to the available quantity and to set sales strategies based on resource type.
[0058] Resource type describes the fluctuation of cloud resource availability, such as volatile or stable. Volatile indicates that cloud resource availability fluctuates significantly over time. Figure 2a and Figure 2b This is a schematic diagram of a fluctuating resource availability curve provided by an embodiment of the present invention; the stable type indicates that the range of fluctuation in cloud resource availability over time is relatively small. Figure 2c This is a schematic diagram of a stable resource availability curve provided in an embodiment of the present invention.
[0059] The available resource quantity refers to the total amount of cloud resources that can be used within the resource pool where the cloud resource resides. This quantity changes as tenants utilize the cloud resources, and can be the difference between the total inventory of cloud resources and the amount already used. For example, if the cloud resource is a computing resource, such as a virtual machine, and the resource pool is a computing resource pool, then the available resource quantity for the virtual machine can be the remaining capacity of that virtual machine within the computing resource pool. Similarly, if the cloud resource is a storage resource, such as a cloud disk, and the resource pool is a storage resource pool, then the available resource quantity for the cloud disk can be the remaining capacity of that cloud disk within the storage resource pool, or the remaining storage capacity of the cloud disk. Finally, if the cloud resource is a network resource, such as bandwidth (the total amount of data that can pass through per unit time), and the resource pool is a network resource pool, then the available bandwidth resource quantity can be the remaining bandwidth within the network resource pool.
[0060] Resource planning information also includes idle periods for cloud resources. For example, a threshold can be set; when the available amount of cloud resources during a given period is greater than or equal to that threshold, the cloud resource can be considered idle. The cloud management platform can then set sales strategies based on the resource type and idle periods to promote the utilization rate of idle cloud resources.
[0061] The available supply of resources describes the total amount of cloud resources that can be sold externally, and it varies depending on tenant purchases. It is typically the total amount of cloud resources that can be sold to any tenant, planned after considering both the total inventory of cloud resources and the amount that must be reserved for certain periods. For example, it can be the difference between the total amount of cloud resources and the amount that must be reserved for a given period. Figures 2a to 2c As shown, the amount of resources available for sale is c4.
[0062] The pricing system is used to determine the initial billing price of cloud resources.
[0063] In one example, the initial billing price can be a usage price, i.e., the price for using cloud resources. For instance, when the cloud resource is a virtual machine, the usage price is the price for using one virtual machine. For instance, the initial billing price is typically the on-demand billing price for cloud resources.
[0064] In one example, the initial billing price can also be the sum of the billing prices for each billing item of the cloud resource. In practical applications, the billing prices for each billing item can be preset. For example, virtual CPU: A yuan / core / 1GHz / hour; virtual memory: B yuan / GB / hour; system disk storage: C yuan / GB / hour; if the virtual machine is configured with 4-core 1GHz virtual CPU, 8GB virtual memory, and 80GB system disk, and the billing items are virtual CPU, virtual memory, system disk, etc., then the corresponding initial billing price for the virtual machine is 4*A + 8*B + 80*C.
[0065] The cloud management platform manages cloud resources. More specifically, it stores data on the network and provides space for data processing. It offers tenants various purchasable cloud resources, and after a tenant purchases them, it releases those resources for their use, enabling them to perform different business operations. Furthermore, it can reclaim cloud resources after a tenant actively releases them. Here, the cloud management platform acts as the server, and tenants communicate with it through a client.
[0066] In practical applications, the cloud management platform acts as the server, publishing purchasable cloud resources to clients. The clients then display these resources to tenants, allowing them to access the available cloud resources. Tenants can either install the client on their user devices or install a browser and access the client by entering its URL.
[0067] For example, by entering a URL in a browser, the tenant accesses the client's login page, registers an account (either manually or with an assigned password from the cloud management platform), and obtains an account and password to access the client. The tenant then enters their account and password on the login page to access the client. Afterward, the tenant can view various cloud resources published by the cloud management platform through the client, purchase cloud resources, configure billing methods for these resources, and send this information to the cloud management platform. The cloud management platform releases the purchased cloud resources for the tenant's use and bills them according to the purchased billing method. Subsequently, the tenant can log back into the client with their account and password, release the purchased cloud resources, and send the released resource information to the cloud management platform. The cloud management platform then terminates the reclaiming of the released cloud resources.
[0068] Here, tenants can configure parameters when purchasing cloud resources. For example, if the cloud resource is a virtual machine, configurable parameters could include the number of virtual CPU cores, virtual memory capacity, hard disk capacity, and bandwidth. For instance, a virtual machine might have a 4-core CPU, 8GB of memory, a 100GB hard disk, and 1Mbps bandwidth. If the cloud resource is bandwidth, the configurable parameter could be the bandwidth size. Furthermore, the cloud management platform can determine the initial billing price of the cloud resource based on these configured parameters. For example, the cloud management platform sends the cloud resource configuration parameters to the pricing system. The pricing system uses these parameters as billing items and sums the billing prices of each item as the initial billing price. Alternatively, it can find the initial billing price of the same cloud resource based on the configuration parameters and return that initial billing price to the cloud management platform.
[0069] It is worth noting that the resource planning information received by the cloud management platform includes the idle time periods of cloud resources. Therefore, the platform publishes cloud resources during idle time periods to tenants and allows tenants to configure the billing mode of the cloud resources as dynamic billing mode. This not only improves the utilization rate of cloud resources, but also provides tenants with low-cost and uninterrupted services, thereby improving the user experience.
[0070] It should be noted that the cloud management platform provides interfaces to clients, who then call these interfaces to purchase cloud resources, configure the billing method for the purchased cloud resources, and send the purchased cloud resources and the configured billing method to the cloud management platform. For example, the billing modes provided in this embodiment of the invention may include on-demand billing, periodic billing (e.g., annual / monthly subscription), spot billing, and dynamic billing. Correspondingly, the cloud management platform can provide on-demand billing selection interfaces, periodic billing selection interfaces, spot billing selection interfaces, and dynamic billing selection interfaces.
[0071] The dynamic billing selection interface is used to confirm the cloud resources purchased by the tenant and whether the billing method for those cloud resources is dynamic billing mode. In practical applications, the cloud management platform provides the dynamic billing selection interface to the client, and the client calls the dynamic billing selection interface.
[0072] In one example, if the dynamic billing selection interface is an Application Programming Interface (API), then the tenant can operate the client to make the client call the API to generate an application programming interface. The tenant programs in the application programming interface to purchase cloud resources and configure the billing method of the cloud resources as dynamic billing mode.
[0073] In one example, if the dynamic billing selection interface is the user configuration interface, then the tenant operates the client to call the user configuration interface. The tenant then purchases cloud resources and configures the billing method for the cloud resources to be dynamic billing mode through the user configuration interface.
[0074] In one example, if the dynamic billing selection interface is the script template upload interface, then the tenant can operate the client to enter the script writing interface, write a script in the script writing interface, purchase cloud resources and configure the billing method of the cloud resources to be dynamic billing mode. After writing, the script template upload interface can be called to encapsulate the script written by the tenant and upload it to the cloud management platform.
[0075] It should be noted that in practical applications, the application programming interface and the script writing interface are usually a template. For example, the template can reserve the configuration parameters and billing methods for cloud resources to be filled in by the tenant, so the tenant only needs to fill in the configuration parameters and billing methods for the cloud resources, without having to rewrite the programming.
[0076] Additionally, the dynamic billing selection interface is linked to a specific area of the client's page. When a tenant interacts with that area, the dynamic billing selection interface is invoked. For example, suppose the client displays a purchase page, and a specific area of the purchase page shows cloud resources, indicated by icons 1, 2, and 3. Icon 1 is associated with the cloud resource's Application Programming Interface (API). In practice, when a tenant clicks icon 1, the client invokes the API for that cloud resource, accessing its API interface. Icon 2 is associated with the cloud resource's scripting interface. In practice, when a tenant clicks icon 2, the client invokes the scripting interface, accessing the scripting page for script writing. The scripting page has icon 4, which is associated with a script template upload interface. After writing the script, the tenant clicks icon 4 to invoke the script template upload interface, thus encapsulating the tenant's script and sending it to the cloud management platform. Icon 3 is associated with the user configuration interface. When a tenant clicks icon 3, the client accesses the user configuration page, where the tenant can configure cloud resources and their billing methods.
[0077] Other interfaces are similar and will not be elaborated further. Of course, in some possible implementations, the above interfaces can be the same. The specific design can be tailored to actual needs. For example, the user configuration page, script writing page, and application programming page can all be configured with on-demand billing mode, auction billing mode, subscription billing mode, and dynamic billing mode; in this case, the on-demand billing selection interface, subscription billing selection interface, auction billing selection interface, and dynamic billing selection interface can be the same.
[0078] In addition, the cloud management platform can also bill various cloud resources purchased by tenants under the dynamic billing model according to a pre-designed billing cycle. The billing cycle can be 1 second, 1 minute, 1 hour, 1 day, etc., and can be determined according to actual needs. This embodiment of the invention does not impose specific limitations on this.
[0079] First, the cloud management platform sets real-time prices according to a preset pricing cycle, such as 1 second, and obtains the discount for cloud resources within that pricing cycle. Here, the pricing cycle is the time period between the last pricing time and the current pricing time. The following describes in detail how cloud resources are priced.
[0080] In practical applications, the cloud management platform, based on resource usage information sent by the inventory system, can determine the availability of cloud resources, such as the difference between the total inventory and the used amount. Furthermore, at the time of pricing, the cloud management platform determines the available amount of cloud resources at that moment and, based on the available amount, determines the discount, which serves as the discount for the pricing period between that moment and the last pricing time. The discount is negatively correlated with the available amount of cloud resources; that is, the higher the available amount, the lower the discount. In some possible implementations, the above method can also be implemented by the pricing system.
[0081] According to one feasible implementation, the cloud management platform sets an availability threshold to determine whether the resource availability is sufficient, and determines a low discount when the resource availability is sufficient, such as 0.1, and a high discount when the resource availability is insufficient, such as 0.8.
[0082] Specifically, at the time of pricing, if the available resources at that time are greater than or equal to the available resources threshold, it indicates that the available resources are sufficient, and a low discount is used as the discount for the pricing period between that time and the last pricing time; otherwise, it indicates that the available resources are insufficient, and a high discount is used as the discount for the pricing period between that time and the last pricing time.
[0083] According to another feasible implementation, the cloud management platform sets up multiple resource availability ranges, as well as discounts for different resource availability ranges.
[0084] Specifically, at the time of pricing, the available resource quantity at that moment is determined from multiple resource availability intervals, and the discount corresponding to that interval is used as the discount for the pricing period between that moment and the last pricing moment.
[0085] It should be noted that the method for determining the discount in the embodiments of the present invention can refer to the bidding billing method.
[0086] Secondly, the cloud management platform can call the initial billing price of cloud resources stored in the pricing system. Based on this, and combined with the discounts for different pricing periods within the billing cycle, it can generate a pricing bill for the tenant within the billing cycle (indicating the billing price of various cloud resources purchased by the tenant in different pricing periods).
[0087] Specifically, the billing price for any pricing period is the result of multiplying the discount for that period by the initial billing price. Here, the discount refers to the discount percentage. For example, if the discount is 0.8, then the billing price = initial billing price × 0.8. Or, if the discount is 0.4, then the billing price = initial billing price × 0.4.
[0088] Furthermore, the cloud management platform can also consider the usage duration of cloud resources and determine a usage duration discount. The billing price of a cloud resource then = initial billing price * discount based on resource availability * usage duration discount. For example, if the usage duration discount is 0.8 and the discount based on resource availability is 0.1, then the final billing price of the cloud resource = initial billing price × 0.8 × 0.1.
[0089] Then, the cloud management platform can obtain dynamic billing details (indicating the usage of cloud resources) for tenants within the billing cycle based on the resource usage information sent in real time by the receiving inventory system.
[0090] For example, when cloud resources are computing resources, such as virtual machines, dynamic billing records include the tenant's identifier (usually the tenant ID), the identifiers of the various types of virtual machines purchased by the tenant, and the usage time and number of virtual machines of various types. Furthermore, it may also include the usage time and number of virtual CPU cores, the usage time, capacity, and number of virtual memory, the bandwidth used, traffic, etc.
[0091] For example, when the cloud resource is a storage resource, such as a cloud disk, the dynamic billing bill includes the tenant's identifier (usually the tenant ID) and the usage period of the various types of cloud disks purchased by the tenant.
[0092] For example, when cloud resources are network resources, such as bandwidth, dynamic billing records include the tenant's identifier (usually the tenant ID) and the traffic under various bandwidths purchased by the tenant.
[0093] It should be noted that the specific content of dynamic billing call detail records needs to be determined based on the actual situation, and this embodiment of the invention does not impose specific limitations.
[0094] Afterwards, the cloud management platform can perform billing based on the dynamic billing call details and pricing bills within the billing period, and determine the billing costs for each type of cloud resource purchased by the tenant within the billing period.
[0095] According to a feasible implementation method, when multiple cloud resources can be purchased, the cloud resources can be billed in the following way.
[0096] For cloud resources purchased by tenants, the usage quantity of the cloud resources in different pricing periods is determined based on dynamic billing bills; then, the billing cost of the cloud resources is obtained by multiplying the billing price and usage quantity of each pricing period in the billing bill and adding them together.
[0097] In this implementation, the cloud resource can be a virtual machine, cloud disk, traffic package, database, etc. This embodiment of the invention does not impose specific limitations on this; the specific method can be determined based on actual needs.
[0098] According to a feasible implementation method, cloud resources are billed based on whether they are used or not, and cloud resources can be billed in the following way.
[0099] For cloud resources purchased by tenants, different billing prices and billing periods for different billing prices are determined based on the pricing bill; the usage duration of the cloud resources in each billing period is determined based on the dynamic billing call detail record; then, the billing price and usage duration for each billing period are multiplied and added together to obtain the billing cost of the cloud resources.
[0100] In this implementation, the cloud resource can be cloud security services, software applications, etc. This embodiment of the invention does not impose specific limitations on this; the specific implementation can be determined based on actual needs.
[0101] According to a feasible implementation method, cloud resources are billed based on usage, which can be done in the following way.
[0102] For cloud resources purchased by tenants, different billing prices and billing periods for different billing prices are determined based on the pricing bill; the usage of the cloud resources in each billing period is determined based on the dynamic billing call detail record; then, the billing price and usage for each billing period are multiplied and added together to obtain the billing cost of the cloud resources.
[0103] In this implementation, the cloud resource can be storage or bandwidth, and the corresponding usage is storage capacity and traffic. This embodiment of the invention does not impose specific limitations on this; the specific usage can be determined based on actual needs.
[0104] Furthermore, the cloud resource management platform can also accumulate the billing costs of tenants' cloud resources in different billing cycles in real time.
[0105] Finally, the cloud management platform can also perform billing and settlement for cloud resources. For example, billing and settlement can be performed periodically, such as hourly, daily, or monthly. In some cases, when a tenant actively releases cloud resources, the cloud management platform will simultaneously interrupt and reclaim the released resources while simultaneously performing billing and settlement. Billing and settlement can be understood as the total cost incurred by the tenant during the use of cloud resources.
[0106] Optionally, the cloud management platform can send tenants' dynamic billing details and pricing information to the billing system, which will then handle billing and settlement. See the above for more details, which will not be repeated here.
[0107] The structure of the aforementioned computer will be described next.
[0108] Figure 3 A schematic diagram of the structure of a computer 300 is shown. (For example...) Figure 3 As shown, the computer 300 includes a processor 301, a memory 302, and a network interface 303. The processor 301, memory 302, and network interface 303 can be connected via a bus or other means. In this embodiment of the invention, the processor 301 is the computing and control core of the computer 110. For example, the processor 301 can process received data to fulfill different business requirements. The memory 303 is used to store programs and data, such as the test results mentioned above. The memory 303 may include volatile memory, such as high-speed random-access memory (RAM), and may also include non-volatile memory, such as at least one disk storage device. The network interface 303 is used to send and receive data, for example, to send data processed by the processor 301 to other computers 300, or to receive data sent by other computers 300.
[0109] It is understood that the processor in the embodiments of the present invention includes at least a central processing unit (CPU), and may also include other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The general-purpose processor may be a microprocessor or any conventional processor.
[0110] In addition, the resource pool planning system, pricing system, cloud management platform, and billing system are each formed by one or more computers. The structure of these computers is described in the aforementioned computer 300 and will not be repeated here. Furthermore, the structures of the aforementioned storage devices and network devices can also be found in the aforementioned computer 300.
[0111] The following will describe in detail the process. Figure 1 The cloud resource billing scheme of the cloud resource management system is shown. Figure 4 This illustrates a virtual machine billing scheme for a cloud resource management system. For example... Figure 4 As shown, the virtual machine billing scheme of the cloud resource management system includes:
[0112] Step 401: The inventory system monitors the computing resource pool to obtain resource usage information.
[0113] For details, please refer to the above text, which will not be repeated here.
[0114] It should be understood that the inventory system is monitored in real time, and the resource usage information obtained from the monitoring is sent to the cloud management platform and resource pool planning system in real time.
[0115] Step 402: The resource pool planning system obtains resource planning information based on resource usage information.
[0116] For details, please refer to the above text, which will not be repeated here.
[0117] The resource pool planning system receives resource usage information in real time and performs real-time planning. Based on a large amount of resource usage information, it analyzes the information to obtain resource planning information and sends the obtained resource planning information to the cloud management platform.
[0118] Step 403: The cloud management platform provides the client with an interface for purchasing cloud resources and dynamic billing selection based on resource planning information.
[0119] In one example, the cloud management platform publishes cloud resources that are available during off-peak hours.
[0120] Step 404: The client calls the dynamic billing selection interface to determine that the cloud resources purchased by the tenant and the billing method of the cloud resources are dynamic billing mode.
[0121] The dynamic billing selection interface can be an application programming interface (API), a user configuration interface, or a script template upload interface.
[0122] According to one feasible implementation, tenants access the client's login page, enter their username and password to log in, and upon confirmation, enter the client to view available cloud resources (i.e., cloud products). When purchasing cloud resources, tenants can perform operations as needed and view relevant information, such as billing rules for different billing methods and the billing methods supported by the cloud resources. On one hand, they can operate the purchase page, call the user configuration page, perform configuration operations in the user configuration interface to complete the configuration of cloud resources and billing modes, and send the configured information to the cloud management platform. On the other hand, operating the purchase page can redirect to a script writing page, where tenants can manually write the purchased cloud resources and billing modes using a scripting language, call the script template upload interface, encapsulate the completed script, and send it to the cloud management platform. The cloud management platform parses the script and determines that the user-configured cloud resources and the billing mode for those cloud resources are dynamic billing methods. Furthermore, operating the purchase page can call the Application Programming Interface (API) to enter the application programming page to program and configure the purchased cloud resources and billing modes, and encapsulate the configured information before sending it to the cloud management platform.
[0123] Here, tenants purchase cloud resources during off-peak hours.
[0124] Step 405: Based on resource usage information, the cloud management platform determines the discount information for various specifications of virtual machines purchased by the tenant under the dynamic billing model.
[0125] The discount information includes the discounts for virtual machines in different pricing periods. According to one feasible implementation, for any virtual machine of any size, the cloud management platform determines the discount for the virtual machine at the time of pricing based on the available resources at that moment. The discount is negatively correlated with resource availability, and represents the discount for the pricing period between that moment and the last pricing period.
[0126] The method for determining the discount is described above and will not be repeated here.
[0127] It is worth noting that if the virtual machine's resource type is the aforementioned stable type, the virtual machine will always be at a low discount; if the virtual machine's resource type is the aforementioned fluctuating type, the virtual machine has a higher configuration of computing resources, and the tenant's usage habits are high usage during the day and low usage at night, then the virtual machine can be offered at a high discount during the day and a low discount at night to promote the sale of idle resources at night.
[0128] Step 406: Based on resource usage information, the cloud management platform determines the dynamic billing call detail records (CDRs) of the tenant under the dynamic billing mode within the billing cycle.
[0129] Here, the billing period can be preset by the user, such as 1 minute, 1 hour, 1 day, half a month, etc. The specific period can be determined according to actual needs. This embodiment of the invention does not impose specific limitations on this.
[0130] Step 407: The cloud management platform determines the tenant's pricing order for the billing period based on the discount information of virtual machines of various specifications purchased under the dynamic billing mode and the initial billing price of virtual machines of various specifications sent by the pricing system.
[0131] The pricing system pre-stores the initial billing prices for virtual machines of different specifications. These initial billing prices can be on-demand billing prices or initial billing prices determined according to billing items. For details, please refer to the above text and will not be repeated here.
[0132] In addition, the pricing list includes the billing price for virtual machines of various specifications within the pricing period. Specifically, the billing price for a pricing period is the result of multiplying the discount for that pricing period by the initial billing price. Here, the billing price is the unit price of the virtual machine.
[0133] Step 408: The cloud management platform divides the billing period based on time granularity and determines multiple billing sub-periods.
[0134] Here, time granularity can be understood as the time interval between adjacent billing points, such as 1 second, 1 minute, 1 hour, etc. It can be set according to actual needs, and the embodiments of the present invention do not make specific limitations in this regard.
[0135] Step 409: Based on dynamic billing call records, the cloud management platform determines the first vector corresponding to each virtual machine of various specifications. The first vector indicates the usage quantity of the virtual machine of the corresponding specification in multiple billing sub-periods.
[0136] In practical applications, the various specifications of virtual machines purchased by the tenant are obtained, and they are categorized by time granularity and merged according to the same specification. For example, taking 1 hour as an example, assuming the tenant purchased 10 different specifications of virtual machines, when a 12-hour call detail record is needed, 10 first vectors are formed, each vector having a dimension of 12.
[0137] Specification 1: [1 2 2 2 2 2 2 2 0 0 0 0]
[0138] Specification 2: [2 3 3 3 3 3 3 3 3 2 2 2]
[0139] …
[0140] Specification 10: [4 5 5 5 5 5 5 5 5 5 3 3]
[0141] In this vector, each number represents the number of cloud resources of that specification used at that point in time. The same position in different first vectors represents the same point in time. Here, a vector can be understood as a special matrix with one row and multiple columns, and the position of the vector can be understood as the column number. For example, the first column of each first vector corresponds to the same point in time.
[0142] It should be noted that if the usage time of a virtual machine is short during a billing sub-period, it can be assumed that the virtual machine was not used during that period.
[0143] Step 410: Based on the pricing list, the cloud management platform determines the second vector corresponding to virtual machines of various specifications. The second vector indicates the billing price of the virtual machine of the corresponding specification in multiple billing sub-periods. The billing sub-periods corresponding to the same position of the first vector and the second vector are the same.
[0144] For example, obtain the billing prices for the above 10 specifications, and enter them according to the corresponding time and granularity (hour) to form 10 second vectors.
[0145] Specification 1: [0.1 0.1 0.1 0.2 0.2 0.1 0.1 0.1 0.1 0.1 0.1 0.1]
[0146] Specification 2: [0.15 0.15 0.15 0.2 0.2 0.13 0.13 0.13 0.13 0.13 0.13 0.13]
[0147] …
[0148] Specification 10: [0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2]
[0149] Each number represents the billing price, or usage price, for a single virtual machine of this specification at this point in time. The same position in different second vectors represents the same point in time.
[0150] If the duration of a billing sub-period is longer than the duration of a pricing cycle, the billing price for that sub-period can be the average of the billing prices for multiple pricing cycles within that period.
[0151] Clearly, the same position in the first vector and the second vector represents the same point in time.
[0152] Step 411: The cloud management platform calculates the billing cost of the tenant's virtual machine based on the first and second vectors of virtual machines of various specifications.
[0153] For example, the first vector of specification 1 and the transposed second vector of specification 1 are multiplied to obtain the calculation result of specification 1. Then, the calculation results of specifications 1 to 10 are summed to obtain the total billing price of cloud resources of 10 specifications, and the total cost of virtual machines for the billing period is obtained.
[0154] It should be noted that this invention introduces a holistic billing method for cloud resources such as virtual machines purchased by tenants. In practical applications, billing can be applied separately to each type of virtual machine. This embodiment of the invention does not impose specific limitations on this approach.
[0155] It should be understood that the virtual machine mentioned above is merely an example and does not constitute a specific limitation. For example, the virtual machine mentioned above can also be replaced by cloud disks, cloud databases, software, etc.
[0156] Therefore, in this embodiment, on the one hand, it can provide tenants with low-cost and uninterrupted services; on the other hand, it uses vector operations to achieve fast billing.
[0157] Next, based on the content described above, a cloud resource billing method based on public cloud technology provided by an embodiment of the present invention will be introduced. It is understood that this method is another expression of the content described above, and the two are combined. This method is proposed based on the content described above, and some or all of its content can be found in the above description.
[0158] Please see Figure 5 , Figure 5 This is a flowchart illustrating a cloud resource billing method based on public cloud technology provided by an embodiment of the present invention. It is understood that this method can be executed by any device, equipment, platform, or device cluster with computing and processing capabilities, such as the aforementioned cloud management platform. Figure 5 As shown, the cloud resource billing method includes:
[0159] Step 501: Provide the tenant with a dynamic billing selection interface. The dynamic billing selection interface is used to confirm the cloud resources selected by the tenant and the billing method for the cloud resources as dynamic billing mode.
[0160] In this step, the cloud management platform provides a dynamic billing selection interface to the tenant's client. The client calls the dynamic billing selection interface to purchase cloud resources and configure the billing method.
[0161] In one example, the dynamic billing selection interface is an Application Programming Interface (API). The client calls this API to generate an application programming page, and the tenant operates on this application programming page, programs using a programming language, purchases cloud resources, and sets the billing method to dynamic billing.
[0162] In one example, the dynamic billing selection interface is the user configuration page; then the client calls this interface to generate the user configuration page, and the tenant operates on the user configuration page to purchase cloud resources and set the billing method to dynamic billing mode.
[0163] In one example, the dynamic billing selection interface is the script template upload interface; then the client calls this interface to upload the script information programmed by the tenant to the cloud management platform. The cloud management platform parses the script information and determines that the cloud resources purchased by the tenant and the billing method of the cloud resources are dynamic billing mode.
[0164] Step 502: Bill cloud resources according to the dynamic billing model.
[0165] Specifically, the billing method for cloud resources under the dynamic billing model is as follows.
[0166] Determine the availability of resources in the cloud resource pool where the cloud resources are located. During periods when the resource availability is sufficient, the cloud resources are billed at a first discount, and during periods when the resource availability is insufficient, the cloud resources are billed at a second discount. The first discount is lower than the second discount, and the cloud resources are not interrupted or reclaimed before the tenant actively releases the cloud resources.
[0167] Resource availability refers to the total amount of cloud resources that can be publicly used within the resource pool where those resources reside. For example, if the cloud resource is a computing resource, such as a virtual machine, the resource pool is a computing resource pool. Similarly, if the cloud resource is a storage resource, the resource pool is a storage resource pool. And if the cloud resource is a network resource, the resource pool is a network resource pool. For more details, please refer to the description of resource availability above; it will not be repeated here.
[0168] In practical applications, cloud management platforms bill according to pre-designed billing cycles; within any billing cycle, they statistically analyze periods when resources are sufficient and periods when resources are insufficient.
[0169] According to one feasible implementation, the time periods with sufficient resource availability are the evening time periods, [22:00-24:00] and [0:00-9:00]; for example, the time periods with insufficient resource availability are the daytime time periods, such as [9:00-22:00].
[0170] In this implementation, the billing cycle can be 1 day, with the evening period considered as a period of sufficient resource availability and the daytime period considered as a period of insufficient resource availability.
[0171] One feasible implementation method is to manually set a threshold. Within the billing cycle, the time period when resource availability is greater than or equal to this threshold is considered a period of sufficient resource availability; otherwise, it is considered a period of insufficient resource availability.
[0172] like Figure 2a As shown, a threshold c1 is preset; time periods greater than or equal to c1 are considered periods with sufficient resource availability, which are t1 and t3; time periods less than c1 are considered periods with insufficient resource availability, which are t2 and t4.
[0173] The discount can be determined in the following way.
[0174] Multiple availability intervals representing sufficient resource availability, along with corresponding discounts for each interval, can be manually set. Similarly, multiple availability intervals representing insufficient resource availability, also with corresponding discounts, can be defined. Within a billing cycle, for any availability interval representing sufficient resource availability, the time period during which resource availability falls within that interval is considered the sufficient resource availability period, and the discount corresponding to that interval is used as the first discount for that period. For any availability interval representing insufficient resource availability, the time period during which resource availability falls within that interval is considered the insufficient resource availability period, and the discount corresponding to that interval is used as the second discount for that period.
[0175] like Figure 2bAs shown, three resource availability intervals are pre-defined: [c1, c2], [c2, c3], and [c3, c4]. The time period within the interval [c1, c2] is t5. The time period within the interval [c2, c3] is t2; and the time periods within the interval [c3, c4] are t1 and t3. Assuming the interval [c1, c2] represents insufficient resource availability, then the time period with insufficient resource availability is t5. Conversely, the intervals [c2, c3] and [c3, c4] represent sufficient resource availability, then the time period with sufficient resource availability is from t1 to t4. Here, the number of resource availability intervals is merely an example and does not constitute a specific limitation. The number of available intervals should be determined based on actual needs.
[0176] Figure 2d This is a schematic diagram of a discount curve provided in an embodiment of the present invention. Figure 1 .like Figure 2d As shown, cloud resources are sold at a higher discount during the day and a lower discount at night. If a cloud resource is in high demand and sells well during the day but is largely idle at night, then a discount may be applied. Figure 2d The discount curve shown illustrates a strategy of selling at higher discounts during the day and lower discounts at night to promote the sale of idle resources at night. Here, the cloud resources are typically of a fluctuating type.
[0177] Figure 2e This is a schematic diagram of a discount curve provided in an embodiment of the present invention. For example... Figure 2e As shown, cloud resources are sold at dynamic low discounts both day and night. If the cloud resources are older and overall sales are poor, then [a specific discount / discount] can be used. Figure 2e The discount curve shown illustrates a low discount applied throughout the day and night to promote the sale of older resources. Here, the cloud resources are typically of the stable type.
[0178] Furthermore, for any time period with sufficient resource availability, the usage of cloud resources and the initial billing price for that time period are determined; then, based on the first discount for that time period and the preset initial billing price of cloud resources, the billing price for that time period is determined; subsequently, based on the billing price and the usage of cloud resources within that time period, billing is performed to obtain the fee (for ease of description and distinction, it is referred to as the first fee).
[0179] In one example, if cloud resources are billed by quantity, such as a tenant purchasing 5 virtual machines of a certain specification and 5 network interface cards of a certain specification, then the usage of cloud resources includes the different quantities used and the duration of each used quantity. Assuming the usage includes quantity 1 and its corresponding duration 1, and quantity 2 and its corresponding duration 2, then the first charge is calculated as: Quantity 1 * Billing Price * Duration 1 + Quantity 2 * Billing Price * Duration. It should be noted that the billing price is typically XX yuan per duration.
[0180] In one example, if cloud resources are billed based on usage, and the corresponding usage includes data such as traffic and storage capacity, then the first charge is: usage * billing price * duration of a period when resources are readily available.
[0181] In one example, if cloud resources are billed based on whether they are used, such as when a tenant purchases software as a cloud resource; and the usage of cloud resources includes the duration of use; then the first cost is: usage duration * billing price.
[0182] The billing method for any period of insufficient resource availability is similar and will not be repeated here. For ease of description and distinction, the fee charged for any period of insufficient resource availability is called the second fee.
[0183] Furthermore, the cloud management platform needs to perform billing and settlement, and provide the settlement fees to the tenants.
[0184] According to a feasible implementation, the sum of all first and second fees within each billing cycle is provided to the tenant's client as the total fee (i.e., the settlement fee).
[0185] In one example, the cloud management platform performs billing settlements periodically. For this settlement, the sum of all first and second fees for each billing cycle since the last settlement is provided to the tenant's client as the total fee (i.e., the settlement fee).
[0186] In one example, billing is performed when a tenant actively releases cloud resources. Here, given that the time of the tenant's active release is uncertain, the cloud management platform can use the period between the time when the tenant actively releases the cloud resources and the time of the last billing as the billing cycle. Then, the sum of the first billing and the second charge within each billing cycle is provided to the tenant's client as the total charge (settlement charge). Alternatively, if the cloud management platform does not bill the cloud resources, the period between the time when the tenant actively releases the cloud resources and the time when the tenant starts using the cloud resources will be used as the billing cycle, and billing will be performed in the manner described above.
[0187] According to another feasible implementation method, for any billing period, the cloud management platform calculates the sum of all first and second fees within that billing period as the total fee for that period; then, the total fees of different billing periods are accumulated, and the final accumulated fee is used as the settlement fee during billing settlement.
[0188] The above describes the relevant content of the dynamic billing mode in detail. In practical applications, the cloud management platform can also provide tenants with an interface for selecting the on-demand billing mode. The on-demand billing mode selection interface is used to confirm the cloud resources that the tenant chooses to purchase and the billing method for the cloud resources as the on-demand billing mode.
[0189] In one example, the on-demand billing mode selects the Application Programming Interface (API) as the interface; then the client calls the API to generate an application programming page, the tenant operates on the application programming page, programs using a programming language, purchases cloud resources, and sets the billing method to on-demand billing.
[0190] In one example, the on-demand billing interface is selected as the user configuration page; then the client calls this interface to generate the user configuration page, and the tenant operates on the user configuration page to purchase cloud resources and set the billing method to on-demand billing mode.
[0191] In one example, the on-demand billing selection interface is the script template upload interface; then the client calls this interface to upload the script information programmed by the tenant to the cloud management platform. The cloud management platform parses the script information and determines that the cloud resources purchased by the tenant and the billing method of the cloud resources are on-demand billing mode.
[0192] It should be noted that the on-demand billing selection interface and the dynamic billing selection interface can be the same or different, and can be designed according to the specific requirements. This embodiment of the invention does not impose any specific limitations on this.
[0193] Furthermore, the cloud management platform can bill cloud resources according to an on-demand billing model. The difference between on-demand billing and dynamic billing is that on-demand billing uses an on-demand pricing model. For ease of description and distinction, the cost obtained under the on-demand billing model is referred to as the on-demand cost. Specifically, the cost incurred when cloud resources are billed at a second discount during periods of insufficient resource availability (the aforementioned second cost) is less than or equal to the cost incurred when cloud resources are billed under the on-demand billing model during periods of insufficient resource availability (the aforementioned on-demand cost); simultaneously, the cost incurred when cloud resources are billed at a first discount during periods of sufficient resource availability (the aforementioned first cost) is less than the cost incurred when cloud resources are billed under the on-demand billing model during periods of insufficient resource availability (the aforementioned on-demand cost). This facilitates guidance for users to choose the dynamic billing model, thereby providing tenants with low-cost and uninterrupted service, improving user experience.
[0194] Furthermore, when tenants select a billing model for cloud resources through the client, they can request to view the costs under the dynamic billing model and the on-demand billing model for a specific time period. The cloud management platform can then calculate the total cost of cloud resources under the dynamic billing model and the total cost under the on-demand billing model for that time period, and display the costs under both models on the client. This allows tenants to compare and find that dynamic billing is cheaper for the same user experience. As a result, tenants will naturally not choose on-demand billing. From a user psychology perspective, this changes the user's judgment question into a choice question, subconsciously leading them to choose the cheaper billing model.
[0195] Furthermore, if a tenant selects on-demand billing for cloud resources through the client, during billing and settlement—for example, when the tenant requests billing and settlement, actively releases cloud resources, or when the cloud management platform performs periodic billing and settlement—the cloud management platform can calculate the settlement costs for cloud resources under dynamic billing and on-demand billing. It can then display these costs to the tenant on the client and ask if they wish to change their billing mode. If the tenant does change, the settlement will be based on the new dynamic billing mode. This allows the tenant to compare and find that dynamic billing is cheaper for the same user experience. Consequently, the tenant will naturally prefer dynamic billing over on-demand billing, thus providing the platform with low-cost and uninterrupted service.
[0196] Figure 6 This is a structural example diagram of a cloud billing device based on public cloud technology provided in an embodiment of the present invention. The cloud billing device is used to perform... Figure 5 The method shown, wherein the cloud billing device includes:
[0197] The interface providing module 601 is configured to provide a dynamic billing selection interface to the tenant, the dynamic billing selection interface being used to confirm that the cloud resources selected by the tenant for purchase and the billing method for the cloud resources is dynamic billing mode.
[0198] Billing module 602 is configured to bill the cloud resources according to the dynamic billing mode, wherein the cloud management platform bills the cloud resources according to the dynamic billing mode; wherein billing the cloud resources according to the dynamic billing mode includes: determining the resource availability of the cloud resource pool where the cloud resource is located, billing the cloud resource at a first discount during the period when the resource availability is sufficient, and billing the cloud resource at a second discount during the period when the resource availability is insufficient, wherein the first discount is lower than the second discount, and the cloud management platform does not interrupt or reclaim the cloud resource before the tenant actively releases the cloud resource.
[0199] In one possible implementation, the billing module 602 is further configured to, in the event that the tenant actively releases the cloud resources, provide the tenant with a total fee consisting of the cost of billing the cloud resources at a first discount during the period when resource availability is sufficient and the cost of billing the cloud resources at a second discount during the period when resource availability is insufficient, for settlement.
[0200] In one possible implementation, the period when resource availability is sufficient is the evening period, and the period when resource availability is insufficient is the daytime period.
[0201] In one possible implementation, the dynamic billing selection interface is an application programming interface (API), user configuration interface, or script template upload interface that the cloud management platform exposes to tenants.
[0202] In one possible implementation, the cloud resources are computing resources, network resources, or storage resources provided to tenants for purchase and / or use in a public cloud service.
[0203] In one possible implementation, the interface providing module 601 is further configured to provide a billing mode selection interface to the tenant, the billing mode selection interface being used to confirm that the cloud resources selected by the tenant for purchase and the billing mode for the cloud resources are billing modes on demand.
[0204] In one possible implementation, the cost of billing the cloud resources at the second discount during the period when resource availability is insufficient is less than or equal to the cost of billing the cloud resources using an on-demand billing model during the same period.
[0205] In one possible implementation, the device is a cloud management platform.
[0206] It is understood that the processor in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.
[0207] The method steps in the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can reside in an ASIC.
[0208] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially as a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present invention are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted through the computer-readable storage medium. The computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).
[0209] It is understood that the various numerical designations used in the embodiments of this application are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application.
Claims
1. A cloud resource billing method based on public cloud technology, characterized in that, include: The cloud management platform provides tenants with a dynamic billing selection interface, which is used to confirm that the cloud resources selected by the tenant and the billing method for the cloud resources are dynamic billing mode. The cloud management platform bills the cloud resources according to the dynamic billing model, wherein the cloud management platform bills the cloud resources according to the dynamic billing model, including: The cloud management platform determines the resource availability of the cloud resource pool where the cloud resource is located, charges the cloud resource at a first discount during the period when the resource availability is sufficient, and charges the cloud resource at a second discount during the period when the resource availability is insufficient. The first discount is lower than the second discount, and the cloud management platform does not interrupt or reclaim the cloud resource before the tenant actively releases the cloud resource.
2. The method according to claim 1, characterized in that, The method further includes: When the tenant actively releases the cloud resources, the cloud management platform will provide the tenant with a total fee, which is the sum of the fees charged for the cloud resources at a first discount during the period when the resource availability is sufficient and the fees charged for the cloud resources at a second discount during the period when the resource availability is insufficient.
3. The method according to claim 1 or 2, characterized in that, The period with sufficient resource availability is the evening period, and the period with insufficient resource availability is the daytime period.
4. The method according to any one of claims 1 to 3, characterized in that, The dynamic billing selection interface is an application programming interface (API), user configuration interface, or script template upload interface that the cloud management platform provides to tenants.
5. The method according to any one of claims 1 to 4, characterized in that, The cloud resources mentioned are computing resources, network resources, or storage resources provided to tenants for purchase and / or use in public cloud services.
6. The method according to any one of claims 1 to 4, characterized in that, The cloud management platform also provides tenants with an on-demand billing mode selection interface, which is used to confirm that the cloud resources selected by the tenant and the billing method for the cloud resources are on-demand billing mode.
7. The method according to claim 6, characterized in that, The cost of billing the cloud resources at the second discount during the period when resource availability is insufficient is less than or equal to the cost of billing the cloud resources at the on-demand billing mode during the same period.
8. A cloud resource billing device based on public cloud technology, characterized in that, include: An interface providing module is configured to provide a dynamic billing selection interface to tenants, the dynamic billing selection interface being used to confirm that the cloud resources selected by the tenant for purchase and the billing method for the cloud resources is dynamic billing mode; The billing module is configured to bill the cloud resources according to the dynamic billing mode, wherein the cloud management platform bills the cloud resources according to the dynamic billing mode; wherein billing the cloud resources according to the dynamic billing mode includes: determining the resource availability of the cloud resource pool where the cloud resource is located, billing the cloud resource at a first discount during the period when the resource availability is sufficient, and billing the cloud resource at a second discount during the period when the resource availability is insufficient, wherein the first discount is lower than the second discount, and the cloud management platform does not interrupt or reclaim the cloud resource before the tenant actively releases the cloud resource.
9. The apparatus according to claim 8, characterized in that, The device further includes: The billing module is further configured to, in the event that the tenant actively releases the cloud resources, provide the tenant with a total fee, which is the sum of the fees charged for the cloud resources at a first discount during the period when the resource availability is sufficient and the fees charged for the cloud resources at a second discount during the period when the resource availability is insufficient, for settlement.
10. The apparatus according to claim 8 or 9, characterized in that, The period with sufficient resource availability is the evening period, and the period with insufficient resource availability is the daytime period.
11. The apparatus according to any one of claims 8 to 10, characterized in that, The dynamic billing selection interface is an application programming interface (API), user configuration interface, or script template upload interface that the cloud management platform provides to tenants.
12. The apparatus according to any one of claims 8 to 11, characterized in that, The cloud resources mentioned are computing resources, network resources, or storage resources provided to tenants for purchase and / or use in public cloud services.
13. The apparatus according to any one of claims 8 to 11, characterized in that, The interface providing module is also configured to provide tenants with an on-demand billing mode selection interface, which is used to confirm that the cloud resources selected by the tenant and the billing method for the cloud resources are on-demand billing mode.
14. The apparatus according to claim 13, characterized in that, The cost of billing the cloud resources at the second discount during the period when resource availability is insufficient is less than or equal to the cost of billing the cloud resources at the on-demand billing mode during the same period.
15. The apparatus according to claim 8, characterized in that, The device is a cloud management platform.
16. A cloud management platform, characterized in that, include: At least one memory for storing programs; At least one processor is configured to execute a program stored in the memory, wherein when the program stored in the memory is executed, the processor is configured to perform the method as described in any one of claims 1-7.
17. A cloud resource billing device based on public cloud technology, characterized in that, The device executes computer program instructions to perform the method as described in any one of claims 1-7.
18. A computer storage medium storing instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1-7.
19. A computer program product comprising instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1-7.