Methods and systems for building and managing dynamic rate cards for use with cloud service subscriptions.
Dynamic rate card management in cloud environments addresses the complexity of static rate cards by associating rate cards with contract pricing policies and updating them in real-time, optimizing pricing and reducing administrative burden.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- ORACLE INT CORP
- Filing Date
- 2024-04-25
- Publication Date
- 2026-06-19
AI Technical Summary
Existing cloud environments use static rate cards for customer subscriptions, which become cumbersome and complex when managing large numbers of customers and products, requiring frequent updates and complicating processes with currency variations.
Implement dynamic rate card management that associates rate cards with contract pricing policies and updates them just-in-time based on product pricing changes, using a migration service to convert subscriptions to a subscription pricing service model.
Optimizes rate card management by reducing the number of rate cards needed, enabling dynamic and customized pricing, and simplifying the process of managing price changes across multiple customers and products.
Smart Images

Figure 2026519963000001_ABST
Abstract
Description
【Technical Field】 【0001】 Copyright Information Part of the disclosure of this patent document contains materials subject to copyright protection. The copyright owner reserves all copyrights, without objection to anyone making a complete copy of the patent document or patent disclosure when it appears in the patent file or patent records of the Patent and Trademark Office, but otherwise, for any other purpose. 【0002】 Claims of Priority and Cross - References to Related Applications This application relates to U.S. Patent Provisional Application No. 63 / 462,878, “SYSTEM AND METHOD FOR PROVIDING DEDICATED CLOUD ENVIRONMENTS FOR USE WITH A CLOUD COMPUTING INFRASTRUCTURE,” filed on April 28, 2023, U.S. Patent Provisional Application No. 63 / 462,868, “SYSTEM AND METHOD FOR PROVIDING DEDICATED CLOUD ENVIRONMENTS FOR USE WITH A CLOUD COMPUTING INFRASTRUCTURE,” and U.S. Patent Provisional Application No. 63 / 462,875, “SYSTEM AND METHOD FOR PROVIDING DEDICATED CLOUD ENVIRONMENTS FOR USE WITH A CLOUD COMPUTING U.S. Patent Provisional Application No. 63 / 462,880, filed on April 28, 2023, "SYSTEM AND METHOD FOR PROVIDING DEDICATED CLOUD ENVIRONMENTS FOR USE WITH A CLOUD COMPUTING INFRASTRUCTURE", U.S. Patent Provisional Application No. 63 / 462,882, filed on April 28, 2023, "SYSTEM AND METHOD FOR PROVIDING DEDICATED CLOUD ENVIRONMENTS FOR USE WITH A CLOUD COMPUTING INFRASTRUCTURE", U.S. Patent Provisional Application No. 63 / 462,885, filed on April 28, 2023, "SYSTEM AND METHOD FOR PROVIDING DEDICATED CLOUD ENVIRONMENTS FOR USE WITH A CLOUD COMPUTING "INFRASTRUCTURE," and U.S. Patent Application No. 18 / 639 filed on April 18, 2024.Claiming priority to Patent No. 766, "METHOD AND SYSTEM FOR BUILDING AND MANAGING DYNAMIC RATE CARDS FOR USE WITH CLOUD SERVICE SUBSCRIPTIONS," each of the above applications and their contents are incorporated herein by reference. 【0003】 Technical field Embodiments described herein generally relate to systems and methods for providing a cloud environment for use by tenants of a cloud infrastructure environment, including systems and methods for building and managing dynamic rate cards related to tenant subscriptions to software products, services, or other offerings related to a cloud environment, in order to access software products, services, or other offerings related to a cloud environment. [Background technology] 【0004】 background Cloud computing environments can be used to provide access to a variety of complementary cloud-based components, such as software applications or services, enabling organizations or enterprise customers to operate applications and services within a highly available hosted environment. 【0005】 The benefits for organizations in migrating their application and service needs to a cloud environment include reducing the cost and complexity of designing, building, operating, and maintaining their own on-premises data centers, software application frameworks, or other information technology infrastructure, allowing them to instead focus on managing their day-to-day business. 【0006】 In some cloud environments, organizations may use rate cards as a mechanism to manage product inventory pricing for their end users or customers. Essentially, each customer subscription to a software application or service is associated with a rate card that sets the price of the service on the cloud service platform for each customer subscription. Such rate cards used by organizations to manage customer product inventory pricing are static, and the company defines pricing for each customer subscription. Rate cards may be modified to provide customers with the most up-to-date prices, regardless of whether individual product prices increase or decrease. Rate cards may also be modified to individually reflect price increases or decreases for individual product prices. 【0007】 The above method essentially uses a one-to-one rate card for each customer subscription relationship. While the one-to-one relationship between rate cards and subscriptions provides technical precision in managing and pricing the products supplied to an organization's end users or customers, this method can become extremely cumbersome when the software applications and / or service offerings are vast, and / or when the organization has a large number of end users or customers subscribing to those software applications and / or service offerings. 【0008】 For example, every price change in such a one-to-one rate card system can trigger the creation of a separate version of the rate card for each subscription present in the system. For instance, in a cloud system with 1,000 customers and 10,000 products, the static rate card methodology described would require maintaining 10 million price points for 1,000 rate cards. The launch of a new product might require updating all 1,000 rate cards. Price changes would also need to be updated if product prices increase or decrease based on the terms of various cloud service agreements. 【0009】 Managing rate cards for each customer across all products, dynamically adjusting them to subscription contract terms and price changes, is a complex process. For global organizations, adding a currency dimension to rate cards further complicates the process. [Overview of the project] 【0010】 overview The embodiments described herein generally relate to systems and methods for providing access to software products or services in a cloud computing environment or other computing environment, and in particular to systems and methods for building and managing dynamic rate cards for use with subscription-based products, services, or other offerings. 【0011】 According to the embodiments, optimized dynamic rate card management enables organizations to provide dynamic, customized pricing. The embodiments described herein generally optimize the number of rate cards to a manageable level, for example, rate cards can be associated with a type of contract pricing policy, subscriptions can be associated with applicable rate cards based on the contract pricing policy and contract date, and rate cards can be created and updated in a just-in-time manner based on the latest changes in the pricing of products in the system. 【0012】 According to the embodiments, in order to accommodate the use of dynamic rate cards, a migration service or migration process may be used to convert / migrate subscriptions originally created according to a conventional or prior subscription pricing model (SPM) and instead conform to a subscription pricing service (SPS) model for use with the various systems, methods, and features described herein. [Brief explanation of the drawing] 【0013】 [Figure 1] This figure shows a system for providing a cloud infrastructure environment according to an embodiment. [Figure 2] This figure further illustrates how a cloud infrastructure environment may be used to provide cloud-based applications or services according to the embodiment. [Figure 3] This figure shows an exemplary cloud infrastructure architecture according to an embodiment. [Figure 4] This figure shows another example of a cloud infrastructure architecture according to an embodiment. [Figure 5] This figure shows another example of a cloud infrastructure architecture according to an embodiment. [Figure 6] This figure shows another example of a cloud infrastructure architecture according to an embodiment. [Figure 7] This figure shows a system that provides dedicated or private label cloud environments for use by tenants or customers of a cloud infrastructure environment, according to an embodiment of the system. [Figure 8]FIG. Further illustrates the use of cloud realms for use by tenants or customers of a cloud infrastructure environment according to an embodiment. [Figure 9] FIG. Further illustrates the use of cloud realms for use by tenants or customers of a cloud infrastructure environment according to an embodiment. [Figure 10] FIG. illustrates a system for providing access to software products or services in a cloud computing environment or other computing environment according to an embodiment. [Figure 11] FIG. illustrates the use of a subscription pricing service for providing access to software products or services in a cloud computing environment according to an embodiment. [Figure 12] FIG. further illustrates the use of a subscription pricing service for providing access to software products or services in a computing environment according to an embodiment. [Figure 13] FIG. illustrates an exemplary use of managing a dynamic rate card in relation to a new subscription according to an embodiment. [Figure 14] FIG. illustrates an exemplary use of managing a dynamic rate card in relation to a price list addition according to an embodiment. [Figure 15] FIG. illustrates a table of exemplary subscription types and corresponding rate cards according to an embodiment. [Figure 16] FIG. illustrates an exemplary use of a dynamic rate card as applied to various subscription-based products, services, or other offerings according to an embodiment. [Figure 17] FIG. is a flowchart showing a method of using a dynamic rate card according to an embodiment. [Figure 18] FIG. is a flowchart showing a method of changing an at list price (ALP) rate card according to an embodiment. [Figure 19]A flowchart showing a method for changing a contract price (ACP: At Contract Price) rate card according to an embodiment. [Figure 20] A flowchart showing a method for changing the ALP rate card and ACP rate card of an added cloud computing service according to an embodiment. [Figure 21] A flowchart showing a method for processing a new subscription to a set of cloud computing services according to an embodiment. [Figure 22] A flowchart showing a method for using operator realms as proxies for subscription identification according to an embodiment. [Figure 23] A flowchart showing the processing of a new subscription to a set of subscriptions associated with an ACP rate card according to an embodiment. [Figure 24] A diagram showing an example of a cloud infrastructure architecture that provides rate card migration according to an embodiment. [Figure 25] A flowchart showing a method for migrating a conventional rate card to a cloud infrastructure environment according to an embodiment. [Figure 26] A flowchart showing a method for verifying the validity of a migrated conventional rate card according to an embodiment. [Figure 27] A flowchart showing a method for subscription migration in the context of operator realms. 【Mode for Carrying Out the Invention】 【0014】 Detailed Description A cloud computing or cloud infrastructure environment can be used to provide access to various complementary cloud-based components such as software applications or services that enable an organization or enterprise's customers to operate applications and services within a highly available hosted environment. 【0015】 The benefits for organizations in migrating their application and service needs to a cloud infrastructure environment include reducing the cost and complexity of designing, building, operating, and maintaining their own on-premises data centers, software application frameworks, or other information technology infrastructure, allowing them to instead focus on managing their day-to-day business. 【0016】 Cloud infrastructure environment Figures 1 and 2 show a system for providing a cloud infrastructure environment according to an embodiment. 【0017】 According to the embodiments, components and processes, such as those shown in Figure 1 and further described herein with respect to various embodiments, may be provided as software or program code that can be executed by a computer system or other type of processing device, such as a cloud computing system. 【0018】 The examples provided are intended to illustrate computing environments that may be used to provide a dedicated-label or private-label cloud environment for use by tenants of a cloud infrastructure in accessing subscription-based software products, services, or other offerings related to the cloud infrastructure environment. According to other embodiments, the various components, processes, and features described herein may be used in conjunction with other types of cloud computing environments. 【0019】 As shown in Figure 1, according to the embodiment, the cloud infrastructure environment 100 can operate on a cloud computing infrastructure 102 which includes hardware (e.g., processors, memory), software resources, and one or more cloud interfaces 104 or other application program interfaces (APIs) that provide access to cloud resources shared via one or more load balancers 106. 【0020】 According to the embodiment, the cloud infrastructure environment supports the use of availability domains, such as availability domains A180 and B182, which enables customers to create and access cloud networks 184 and 186 and run cloud instances A192 and B194. 【0021】 According to the embodiment, tenancies can be created for each cloud tenant / customer, for example, tenants A142, B144, thereby providing secure, isolated partitions within a cloud infrastructure environment where customers can create, organize, and manage cloud resources. Cloud tenants / customers can access each of their cloud instances by accessing availability domains and cloud networks. 【0022】 According to the embodiment, for example, a client device such as a computing device 160 having device hardware 162 (e.g., a processor, memory) and a graphical user interface 166 may enable administrators, other users, etc., to communicate with a cloud infrastructure environment via a network such as a wide area network, a local area network, or the internet to create or update cloud services. 【0023】 According to one embodiment, the cloud infrastructure environment provides access to shared cloud resources 140, for example, via a compute resource layer 150, a network resource layer 164, and / or a storage resource layer 170. Customers can launch cloud instances as needed to meet their compute and application requirements. After the customer provisions and launches the cloud instances, the provisioned cloud instances can be accessed, for example, from client devices. 【0024】 According to the embodiment, the compute resource layer may include resources such as, for example, bare metal cloud instances 152, virtual machines 154, graphical processing unit (GPU) compute cloud instances 156, and / or containers 158. The compute resource layer may be used, for example, to provision and manage bare metal compute cloud instances, as in an on-premises data center, or to provision cloud instances as needed to deploy and run applications. 【0025】 For example, according to one embodiment, the cloud infrastructure environment can provide control over physical host (bare metal) machines in the compute resource layer that run directly as compute cloud instances on bare metal servers without using a hypervisor. 【0026】 According to one embodiment, the cloud infrastructure environment may also provide control over virtual machines in a compute resource tier that can be launched from an image, for example, and the type and amount of resources available to a virtual machine cloud instance may be determined based on the image from which the virtual machine was launched. 【0027】 According to one embodiment, the network resource layer may include multiple network-related resources, such as a virtual cloud network (VCN) 165, a load balancer 167, an edge service 168, and / or connectivity service 169. 【0028】 According to one embodiment, the storage resource layer may include multiple resources, such as a data / block volume 172, file storage 174, object storage 176, and / or local storage 178. 【0029】 As shown in Figure 2, according to the embodiment, the cloud infrastructure environment may include various complementary cloud-based components as cloud infrastructure applications and services 200, for example, enabling customers of an organization or enterprise to operate applications and services in a highly available hosted environment. 【0030】 For example, according to the embodiment, a self-contained cloud region can be provided as a complete, for example, Oracle Cloud Infrastructure (OCI)-dedicated region within an organization's data center, providing data center operators with the agility, scalability, and cost-effectiveness of the public cloud while maintaining complete control over data and applications to meet security, regulatory, or data residency requirements. 【0031】 For example, according to one embodiment, such an environment may include racks physically managed by the cloud infrastructure provider, customer racks, access for cloud operators for configuration and hardware support, power and cooling for the customer's data center, customer floor space, area for customer data center personnel, and physical access cages. 【0032】 According to the embodiment, a dedicated region provides tenants / customers with the same set of IaaS (infrastructure-as-a-service), PaaS (platform-as-a-service), and SaaS (software-as-a-service) products or services available within the cloud infrastructure provider's public cloud region, such as ERP, Financials, HCM, and SCM. Customers can seamlessly upscale and shift their traditional workloads using the cloud infrastructure provider's services (e.g., bare metal computing, VMs, and GPUs), database services (e.g., autonomous databases), or container-based services (e.g., Kubernetes container engines). 【0033】 According to one embodiment, the cloud infrastructure environment can operate according to an IaaS (infrastructure-as-a-service) model that enables the environment to provide virtualized computing resources over a public network (e.g., the internet). 【0034】 In the IaaS model, a cloud infrastructure provider can host infrastructure components (e.g., servers, storage devices, network nodes (e.g., hardware), deployment software, platform virtualization (e.g., hypervisor layer)). In some cases, the cloud infrastructure provider may also provide various services that accompany those infrastructure components (examples of services include billing software, monitoring software, logging software, load balancing software, or clustering software). Therefore, since these services can be policy-driven, IaaS users may implement policies to drive load balancing and maintain application availability and performance. 【0035】 According to the embodiment, an IaaS customer may access resources and services via a wide area network (WAN), such as the internet, and install the remaining elements of their application stack using the services of a cloud infrastructure provider. For example, a user can log into an IaaS platform, create virtual machines (VMs), install operating systems (OS) on each VM, deploy middleware such as databases, create storage buckets for workloads and backups, and also install enterprise software on those VMs. The customer can then use the provider's services to perform a variety of functions, including balancing network traffic, troubleshooting application issues, monitoring performance, or managing disaster recovery. 【0036】 In some embodiments, the cloud infrastructure provider may, but does not have to be, a third-party service specializing in providing IaaS (e.g., providing, leasing, selling). The entity may also choose to deploy a private cloud and become its own provider of infrastructure services. 【0037】 In one embodiment, IaaS deployment is the process of placing a new application or a new version of an application onto a prepared application server, etc. This process may also include the process of preparing the server (e.g., installing libraries or daemons). This process is often managed by the cloud infrastructure provider under the hypervisor layer (e.g., servers, storage, network hardware, and virtualization). Thus, the customer may be responsible for handling the deployment of the OS, middleware, and / or applications (e.g., on self-service virtual machines, etc., which can be spun up on demand). 【0038】 In some embodiments, IaaS provisioning may also refer to acquiring computers or virtual hosts for use and installing any necessary libraries or services on those computers or virtual hosts. In most cases, deployment does not include provisioning, and provisioning may need to be performed first. 【0039】 Depending on the embodiment, the challenges of IaaS provisioning include the first challenge of provisioning an initial set of infrastructure before anything is done. Secondly, there is the challenge of developing the existing infrastructure after everything has been provisioned (e.g., adding new services, modifying services, or removing services). In some cases, these two challenges may be addressed by allowing the configuration of the infrastructure to be defined declaratively. In other words, the infrastructure (e.g., which components are needed and how those components interact) can be defined by one or more configuration files. In this way, the entire topology of the infrastructure (e.g., which resources depend on which resources and how each of those resources works together) can be described declaratively. In some cases, after the topology is defined, a workflow may be generated to create and / or manage the various components described in the configuration files. 【0040】 In some embodiments, the cloud infrastructure may include many interconnected elements. For example, there may be one or more virtual private clouds (VPCs), also known as core networks (e.g., configurable and / or shared computing resources, possibly on-demand pools). In some examples, there may also be one or more inbound / outbound traffic group rules provisioned to define how inbound and / or outbound traffic on the network is configured, as well as one or more virtual machines (VMs). Other infrastructure elements such as load balancers and databases may also be provisioned. The infrastructure can evolve gradually as more infrastructure elements are desired and / or added. 【0041】 In some embodiments, continuous deployment techniques may be employed to enable the deployment of infrastructure code across various virtual computing environments. Furthermore, the techniques described can enable infrastructure management within these environments. In some examples, a service team may write code that is desirable to be deployed to one or more, but often many, different production environments (e.g., across various different geographical locations). However, in some examples, the infrastructure to which the code is deployed must be configured first. In some cases, provisioning may be performed manually, and provisioning tools may be used to provision resources, and / or deployment tools may be used to deploy the code after the infrastructure has been provisioned. 【0042】 Figure 3 shows an exemplary cloud infrastructure architecture according to an embodiment. 【0043】 As shown in Figure 3, according to the embodiment, the service operator 202 can be communicably coupled to a secure host tenancy 204 which may include a virtual cloud network (VCN) 206 and a secure host subnet 208. 【0044】 In some cases, a service operator may use one or more client computing devices, which may be portable handheld devices (e.g., telephones, computing tablets, personal digital assistants (PDAs)) or wearable devices (e.g., head-mounted displays) running software such as Microsoft Windows and / or various mobile operating systems such as iOS®, Android®, and having the Internet, email, short message service (SMS), or other communication protocols enabled. Alternatively, a client computing device may be a general-purpose personal computer, including, for example, personal computers and / or laptop computers running various versions of the Microsoft Windows®, Apple Macintosh®, and / or Linux® operating systems. A client computing device may also be a workstation computer running any of various commercially available UNIX® or UNIX-like operating systems, including, but not limited to, various GNU / Linux operating systems such as Chrome®. Alternatively or additionally, the client computing device may be any other electronic device, such as a thin client computer, an internet-enabled gaming system (e.g., a Microsoft Xbox® game console), and / or a personal messaging device, that can communicate over a network and / or the Internet that has access to the VCN. 【0045】 According to the embodiment, the VCN may include an LPG 210 which can be communicatively coupled to an SSH VCN 212 via a local peering gateway (LPG) included in the Secure Shell (SSH) VCN. The SSH VCN may include an SSH subnet 214, and the SSH VCN may be communicatively coupled to a control plane VCN 216 via an LPG included in the control plane VCN. The SSH VCN may also be communicatively coupled to a data plane VCN 218 via an LPG. The control plane VCN and the data plane VCN may be included in a service tenancy 219 which may be owned and / or operated by a cloud infrastructure provider. 【0046】 According to the embodiment, the control plane VCN may include a control plane demilitarized zone (DMZ) layer 220 that functions as a perimeter network (e.g., part of the corporate network between the corporate intranet and the external network). Servers based on the DMZ may have limited responsibilities that help contain potential breaches. Furthermore, the DMZ layer may include a control plane application layer 224 that may include one or more load balancer (LB) subnets 222 and application subnets 226, and a control plane data layer 228 that may include database (DB) subnets 230 (e.g., a front-end DB subnet and / or a back-end DB subnet). The LB subnets included in the control plane DMZ layer may be communicably coupled to application subnets and an internet gateway 234 included in the control plane application layer which may be included in the control plane VCN, and the application subnets may be communicably coupled to DB subnets included in the control plane data layer, as well as a service gateway 236 and a network address translation (NAT) gateway 238. The control plane VCN may include service gateways and NAT gateways. 【0047】 According to one embodiment, the control plane VCN may include a data plane mirror application layer 240 which may include application subnets. The application subnets included in the data plane mirror application layer may include virtual network interface controllers (VNICs) on which compute instances can run. The compute instances can communicately connect the application subnets of the data plane mirror application layer to application subnets that may be included in the data plane application layer. 【0048】 According to the embodiment, the data plane VCN may include a data plane application layer 246, a data plane DMZ layer 248, and a data plane data layer 250. The data plane DMZ layer may include an application subnet of the data plane application layer and an LB subnet that can be communicatively coupled to the internet gateway of the data plane VCN. The application subnet may be communicatively coupled to the service gateway of the data plane VCN and the NAT gateway of the data plane VCN. The data plane data layer may also include a DB subnet that can be communicatively coupled to the application subnet of the data plane application layer. 【0049】 According to the embodiment, the internet gateways of the control plane VCN and the data plane VCN may be communicably coupled to a metadata management service 252 which may be communicably coupled to the public internet 254. The public internet may be communicably coupled to the NAT gateways of the control plane VCN and the data plane VCN. The service gateways of the control plane VCN and the data plane VCN may be communicably coupled to a cloud service 256. 【0050】 According to the embodiment, a service gateway of a control plane VCN or a data plane VCN can make application programming interface (API) calls to a cloud service without traversing the public internet. API calls from the service gateway to the cloud service can be one-way, with the service gateway making the API call to the cloud service and the cloud service sending the requested data to the service gateway. Generally, the cloud service does not need to initiate the API call to the service gateway. 【0051】 According to the embodiment, a secure host tenancy can be directly connected to a service tenancy, or otherwise may be isolated. A secure host subnet can communicate with an SSH subnet via an LPG, which can enable bidirectional communication on otherwise isolated systems. Connecting a secure host subnet to an SSH subnet may give the secure host subnet access to other entities within the service tenancy. 【0052】 According to one embodiment, the control plane VCN may allow users of the service tenancy to configure or otherwise provision the desired resources. The desired resources provisioned within the control plane VCN may be deployed or otherwise used in the data plane VCN. In some examples, the control plane VCN can be separated from the data plane VCN, and the data plane mirror application layer of the control plane VCN can communicate with the data plane application layer of the data plane VCN via VNICs that may be included in the data plane mirror application layer and the data plane application layer. 【0053】 According to the embodiment, a user or customer of the system can perform requests, such as create, read, update, or delete (CRUD) operations, over the public internet, which can transmit the requests to a metadata management service. The metadata management service can transmit the requests to the control plane VCN via an internet gateway. The requests may be received by an LB subnet included in the control plane DMZ layer. The LB subnet may determine that the request is valid, and in response to this determination, the LB subnet may send the request to an application subnet included in the control plane application layer. If the validity of the request is confirmed and the request requires a call to the public internet, the call to the internet may be sent to a NAT gateway capable of making internet calls. The metadata to be stored by the request may be stored in a DB subnet. 【0054】 According to the embodiment, the data plane mirror application layer can facilitate direct communication between the control plane VCN and the data plane VCN. For example, it may be desirable that changes, updates, or other appropriate modifications to the configuration be applied to the resources contained in the data plane VCN. Using the VNIC, the control plane VCN can communicate directly with the resources contained in the data plane VCN, thereby enabling changes, updates, or other appropriate modifications to the configuration of the resources. 【0055】 According to this embodiment, the control plane VCN and the data plane VCN may be included in the service tenancy. In this case, the system user or customer does not have to own or operate either the control plane VCN or the data plane VCN. Instead, the cloud infrastructure provider may own or operate the control plane VCN and the data plane VCN, both of which may be included in the service tenancy. This embodiment can enable network isolation, which can prevent the user or customer from interacting with the resources of other users or other customers. This embodiment may also enable the system user or customer to store databases privately without having to rely on the public internet for storage, which may not provide the desired level of threat protection. 【0056】 According to this embodiment, the LB subnet included in the control plane VCN may be configured to receive signals from the service gateway. In this embodiment, the control plane VCN and the data plane VCN may be configured to be invoked by the cloud infrastructure provider's customers without calling the public internet. The cloud infrastructure provider's customers may desire this embodiment because the databases they use may be controlled by the cloud infrastructure provider and stored in a service tenancy that can be isolated from the public internet. 【0057】 Figure 4 shows another example of a cloud infrastructure architecture according to an embodiment. 【0058】 As shown in Figure 4, according to this embodiment, the data plane VCN may be included in the customer tenancy 221. In this case, the cloud infrastructure provider may provide a control plane VCN for each customer, and the cloud infrastructure provider may configure a unique compute instance included in the service tenancy for each customer. Each compute instance may enable communication between the control plane VCN included in the service tenancy and the data plane VCN included in the customer tenancy. The compute instance may enable resources provisioned within the control plane VCN included in the service tenancy to be deployed, or otherwise used, in the data plane VCN included in the customer tenancy. 【0059】 In one embodiment, a customer of a cloud infrastructure provider may have a database that is managed and operates within the customer's tenancy. In this example, the control plane VCN may include a data plane mirror app layer that may include app subnets. The data plane mirror app layer may reside in the data plane VCN, but does not have to be provided in the data plane VCN. That is, the data plane mirror app layer may have access rights to the customer's tenancy, but does not have to reside in the data plane VCN, and does not have to be owned or operated by the customer. The data plane mirror app layer may be configured to make calls to the data plane VCN, but does not have to be configured to make calls to any entities contained within the control plane VCN. The customer may want to deploy, or otherwise use, resources in the data plane VCN that are provisioned within the control plane VCN, and the data plane mirror app layer can facilitate the customer's desired deployment or other use of resources. 【0060】 In one embodiment, a customer of a cloud infrastructure provider can apply filters to data plane VCNs. In this embodiment, the customer can determine which data plane VCNs are accessible, and may restrict access from data plane VCNs to the public internet. The cloud infrastructure provider does not need to be able to apply filters or otherwise control access of data plane VCNs to any external network or database. Applying filters and controls to data plane VCNs included in the customer's tenancy can help isolate the data plane VCNs from other customers and from the public internet. 【0061】 According to the embodiment, a cloud service may be invoked by a service gateway to access services that may not exist on the public internet, a control plane VCN, or a data plane VCN. The connection between the cloud service and the control plane VCN or data plane VCN does not have to be continuous. The cloud service may reside on different networks owned or operated by the cloud infrastructure provider. The cloud service may be configured to receive calls from the service gateway and not to receive calls from the public internet. Some cloud services may be isolated from others, and the control plane VCN may be isolated from cloud services that may not be in the same region as the control plane VCN. 【0062】 For example, according to one embodiment, the control plane VCN may be located in "Region 1," and the cloud service "Deployment 1" may be located in both Region 1 and "Region 2." When a service gateway included in the control plane VCN located in Region 1 makes a call to Deployment 1, this call may be sent to Deployment 1 within Region 1. In this example, the control plane VCN, or Deployment 1 within Region 1, may or may not communicate with Deployment 1 within Region 2. 【0063】 Figure 5 shows another example of a cloud infrastructure architecture according to an embodiment. 【0064】 As shown in Figure 5, according to the embodiment, a trusted application subnet 260 can be communicatively coupled to a service gateway included in the data plane VCN, a NAT gateway included in the data plane VCN, and a DB subnet included in the data plane data layer. An untrusted application subnet 264 can be communicatively coupled to a service gateway included in the data plane VCN and a DB subnet included in the data plane data layer. The data plane data layer may include a DB subnet that can be communicatively coupled to a service gateway included in the data plane VCN. 【0065】 According to one embodiment, an untrusted application subnet may include one or more primary VNICs (1) to (N) that can be communicatively coupled to tenant virtual machines (VMs). Each tenant VM may be communicatively coupled to each application subnet 267 (1) to (N) that may be included in each container exit VCN 268 (1) to (N) that may be included in each customer tenancy 270 (1) to (N). Each secondary VNIC can facilitate communication between the untrusted application subnet included in the data plane VCN and the application subnet included in the container exit VCN. Each container exit VCN may include a NAT gateway that can be communicatively coupled to the public internet. 【0066】 According to the embodiment, the public internet may be communicatively coupled to a NAT gateway, which is included in the control plane VCN and the data plane VCN. A service gateway, which is included in the control plane VCN and the data plane VCN, may be communicatively coupled to a cloud service. 【0067】 According to one embodiment, the data plane VCN can be integrated with a customer's tenancy. This integration may be useful or desirable for a cloud infrastructure provider's customer when they may require additional support when executing code. For example, a customer may provide code that could potentially be destructive, communicate with other customers' resources, or otherwise cause undesirable consequences. 【0068】 According to one embodiment, a customer of a cloud infrastructure provider may request the cloud infrastructure provider to grant temporary network access privileges and the ability to connect to the data plane application layer. The code for performing this function may run in a VM and may not be configured to run elsewhere on the data plane VCN. Each VM may be connected to one customer's tenancy. Each container (1) to (N) contained within a VM may be configured to run the code. In this case, a double isolation may exist (e.g., the container running the code, the container may be contained in at least one VM that is in an untrusted application subnet), which can help prevent incorrect or otherwise undesirable code from damaging the cloud infrastructure provider's network or the networks of different customers. The containers may be communicatively coupled to the customer's tenancy and may be configured to send or receive data to or from the customer's tenancy. The containers may not be configured to send or receive data to or from any other entities within the data plane VCN. Upon completion of code execution, the cloud infrastructure provider may discard the containers. 【0069】 In one embodiment, a trusted application subnet may execute code that may be owned or operated by the cloud infrastructure provider. In this embodiment, the trusted application subnet may be communicatively joined to a DB subnet and configured to perform CRUD operations within the DB subnet. An untrusted application subnet may be communicatively joined to a DB subnet and configured to perform read operations within the DB subnet. Containers that may be contained within each customer's VM and can execute code from the customer do not need to be communicatively joined to the DB subnet. 【0070】 In some embodiments, the control plane VCN and the data plane VCN do not need to be directly communicatively coupled, or direct communication between the control plane VCN and the data plane VCN is not required. However, communication can occur indirectly, and a LPG (Landing Platform) may be established by the cloud infrastructure provider to facilitate communication between the control plane VCN and the data plane VCN. In another example, the control plane VCN or the data plane VCN can make calls to cloud services via a service gateway. For example, a call from the control plane VCN to a cloud service may include a request to a service that can communicate with the data plane VCN. 【0071】 Figure 6 shows another example of a cloud infrastructure architecture according to an embodiment. 【0072】 As shown in Figure 6, according to the embodiment, a trusted application subnet can be communicatively coupled to a service gateway included in the data plane VCN, a NAT gateway included in the data plane VCN, and a DB subnet included in the data plane data layer. An untrusted application subnet can be communicatively coupled to a service gateway included in the data plane VCN and a DB subnet included in the data plane data layer. The data plane data layer may include a DB subnet that can be communicatively coupled to a service gateway included in the data plane VCN. 【0073】 According to one embodiment, an untrusted application subnet may include a primary VNIC that can be communicatively coupled to tenant virtual machines (VMs) residing within the untrusted application subnet. Each tenant VM may execute code within its respective container and may be communicatively coupled to an application subnet that may be included in a dataplane application layer 281, which may be included in a container exit VCN 280. Each secondary VNIC 282(1)-(N) can facilitate communication between the untrusted application subnet included in the dataplane VCN and the application subnet included in the container exit VCN. The container exit VCN may include a NAT gateway that can be communicatively coupled to the public internet. 【0074】 According to the embodiment, an internet gateway included in the control plane VCN and included in the data plane VCN may be communicatively coupled to a metadata management service which may be communicatively coupled to the public internet. The public internet may be communicatively coupled to a NAT gateway included in the control plane VCN and included in the data plane VCN. A service gateway included in the control plane VCN and included in the data plane VCN may be communicatively coupled to a cloud service. 【0075】 In this embodiment, the pattern shown in Figure 6 may be considered an exception to the pattern shown in Figure 5, which may be desirable for a customer when the cloud infrastructure provider cannot communicate directly with the customer (e.g., a disconnected region). Each container contained within a VM for each customer may be accessible in real time by the customer. The container may be configured to make calls to each secondary VNIC contained within the application subnet of the data plane application layer, which may be contained within the container exit VCN. The secondary VNIC may send the call to a NAT gateway, which may send the call to the public internet. In this example, the container, which may be accessible in real time by the customer, can be isolated from the control plane VCN and from other entities contained within the data plane VCN. The container may also be isolated from other customers' resources. 【0076】 In another example, a customer can use a container to invoke a cloud service. In this example, the customer may execute code within a container that requests a service from the cloud service. The container can send this request to a secondary VNIC, which can send it to a NAT gateway, which can send it to the public internet. The public internet can be used to send this request to an LB subnet included in the control plane VCN via an internet gateway. In response to deciding that this request is valid, the LB subnet can send this request to an application subnet, which can send this request to the cloud service via a service gateway. 【0077】 It should be understood that the IaaS architecture shown in the above diagram may include components other than those shown. Furthermore, the embodiments shown in the diagram are merely examples of cloud infrastructure systems that may incorporate embodiments of this disclosure. In some other examples, the IaaS system may include more or fewer components than those shown in the diagram, may combine two or more components, or may have different configurations or arrangements of components. 【0078】 In one embodiment, the IaaS system described herein may include the provision of a set of applications, middleware, and database services that are self-service, subscription-based, elastically scalable, reliable, highly available, and securely delivered to the customer. 【0079】 Cloud environment According to the embodiment, the cloud infrastructure environment may be used to provide a dedicated cloud environment, for example, as one or more private label cloud environments, for use by tenants of the cloud infrastructure environment in accessing subscription-based software products, services, or other offerings associated with the cloud infrastructure environment. 【0080】 Figure 7 illustrates how the system can provide a dedicated label cloud environment or private label cloud environment for use by tenants or customers of a cloud infrastructure environment, according to the embodiment. 【0081】 While the various examples described herein illustrate different systems, methods, and / or techniques that may be used in the context of providing a private label cloud (PLC) environment, according to different embodiments, the systems, methods, and techniques described herein may be used within or in conjunction with other types of cloud environments. 【0082】 As shown in Figure 7, according to the embodiment, a cloud infrastructure provider can provide one or more cloud environments (e.g., PLC environments) or realms to an operator 320, for example, a customer of the cloud infrastructure acting as a reseller. The operator / reseller can then customize and extend the cloud environments for use by the customer 330 (of the operator / reseller) to use in accessing subscription-based software products, services, or other offerings associated with the cloud infrastructure environment. 【0083】 For illustrative purposes, examples of such subscription-based products, services, or other offerings may include various cloud infrastructure software products, such as Oracle Fusion Applications products, or other types of products or services that allow customers to subscribe to use those products or services. 【0084】 Figure 8 further illustrates the use of a cloud realm for use by a tenant or customer of a cloud infrastructure environment, according to an embodiment. 【0085】 As shown in Figure 8, according to the embodiments, the system may include a cloud subscription service or component called a subscription manager in some embodiments herein, which exposes one or more subscription management APIs to onboard new customers or to create orders used to create subscriptions and to initiate workflows to coordinate billing and pricing services or other components for use with Cloud Realm 400. 【0086】 According to one embodiment, when an operator (e.g., a PLC operator) or an operator's customer requests a cloud environment, the system creates realms for use within regions 402, 404, along with tenancies 416 owned by one or more providers. These tenancies enable the regions to function with the required service infrastructure and are managed by the cloud infrastructure provider. 【0087】 According to one embodiment, the first step in the process is to create an operator tenancy 406 for the operator before the region and associated realms are handed over to the operator for subsequent management. The operator then becomes the administrator of this tenancy, within which the operator can view and manage everything that happens within that region, including customer accounts and the usage of cloud resources by those customers 412. 【0088】 Generally, after a region is handed over to or provided to an operator, the cloud infrastructure provider cannot access the data within the operator tenancy, for example, to troubleshoot any issues that may arise, unless the operator allows the cloud infrastructure provider to access the data within the operator tenancy. 【0089】 According to the embodiment, the operator can then create additional internal tenancies 408 intended for the operator's own internal use, for example, to evaluate what the end-user or customer experience will be like, or to provide sales demo tenancies, or to operate a database for the operator's own internal use. The operator can also create one or more customer tenancies 410, where the end-user or customer becomes the administrator of the customer tenancies 410. Cloud infrastructure usage, such as compute, storage, and other infrastructure resources, is aggregated by the operator reflecting both the operator's usage and the operator's customers' usage and reported to the cloud infrastructure provider. 【0090】 Depending on the embodiment, a user interface or console may be provided that allows the operator to manage their customer accounts and the services provided by the customer. The cloud infrastructure provider may also use a cloud infrastructure tenancy, such as a Fusion Applications tenancy, to install any infrastructure services required for use by the operator and the operator's customers. 【0091】 Figure 9 further illustrates the use of a cloud realm for use by a tenant or customer of a cloud infrastructure environment, according to an embodiment. 【0092】 As shown in Figure 9, according to the embodiment, a service or component of the subscription manager 424 exposes one or more subscription management APIs to onboard new customers or to create orders used to create subscriptions and initiate workflows to coordinate billing and pricing services or other components. 【0093】 According to one embodiment, the system may also include a billing service 428 or component that operates on subscription and preferred billing accounts or logical containers used to generate invoices for customers. 【0094】 According to one embodiment, the system may also include a subscription pricing service (SPS) 426 or component which operates on a product catalog defining products that can be purchased by a customer and may be used to provide a price list (e.g., rate cards) which the pricing service also possesses. 【0095】 According to the embodiment, products may be selected from the product hub to support the sales process in realms 420 and 422 in which subscriptions are created. After an order is created via the subscription service 430, the subscription is created in the subscription manager, which then manages the lifecycle of that subscription and provisions what needs to be provisioned in downstream services. The SPS component then manages pricing and usage aspects for use in billing the operator for final costs or in its ability to bill the customer. Usage events are forwarded to the billing service or component, an invoice is created according to the subscription billing preference, and sent to the accounts receivable component. 【0096】 According to one embodiment, services provided in the realm report their usage to a metering service or component 432, but such usage is not associated with any price. The valuation process determines the cost of each specific event, for example by applying a rate card, determines the unit and cost of that subscription, associates this cost with the record, and then forwards it to the billing service or component. 【0097】 As further shown in Figure 9, according to the embodiment, the operator may control multiple realms A, B, for example, an operator operating in multiple countries may want to operate a completely isolated data center for the United States and another completely isolated data center for Europe to address, for example, management or regulatory requirements. According to the embodiment, usage associated with these multiple realms may be aggregated for use by the central subscription manager 435 and, where applicable, the prime billing service 436 in billing to the operator (434). 【0098】 The various system examples presented above are provided to illustrate computing environments that may be used to provide a dedicated label cloud environment or private label cloud environment for use by tenants of a cloud infrastructure in accessing subscription-based software products, services, or other offerings related to the cloud infrastructure environment. According to other embodiments, the various components, processes, and features described herein may be used in conjunction with other types of cloud computing environments. 【0099】 Cloud Subscription Figure 10 shows an embodiment of a system for providing access to software products or services in a cloud computing environment or other computing environment. 【0100】 As shown in Figure 10, according to the embodiments, the system may be provided as a cloud computing environment or other computing environment, referred to as a platform in some embodiments herein, which supports the use of subscription-based products, services, or other offerings. 【0101】 Examples of such subscription-based products, services, or other offerings may include software products or services for various cloud infrastructures that allow customers to subscribe to use those products or services. 【0102】 According to the embodiment, the environment may include several components provided as operator singletons 438, realm singletons 439, and regional services 440, as further described below. 【0103】 Depending on the embodiment, a subscription may include artifacts such as products, commits, billing models, and states. A subscription manager service or component may expose one or more subscription management APIs to onboard new customers or to create orders used to create subscriptions and initiate workflows that coordinate the creation of appropriate footprints in billing and pricing services or components, as further described below. 【0104】 According to the embodiment, the billing service or component operates on subscription and preferred billing accounts or logical containers used to generate invoices. Each billing account generates one invoice per billing cycle. The billing service includes a first pipeline that receives usage and costs from the metering service or component via a REST API, and includes a first pipeline in which billing writes usage to a database and billing workers aggregate from this database to calculate balances, and a second pipeline that receives aggregated usage and commitments and is responsible for calculating charges over billing intervals. 【0105】 According to the embodiment, the Subscription Pricing Service (SPS) 426 or component operates on a product catalog that defines the products that can be purchased by a customer. The product catalog forms the backbone of a price list (i.e., rate cards) which the Pricing Service also owns. The rate cards are modeled as pricing rules on top of public list prices. The Pricing Service maintains a single price list for all products, and new product prices can be added and existing prices can be changed. The price list has a complete history, and the latest version is the current rate card. Since some contracts may require a snapshot of the rate cards to be taken, the Pricing Service handles this by recording the time when the customer's rate card was created and then querying the price list at that point in time. 【0106】 According to the embodiment, the SPS or pricing service communicates with the product and pricing hub 421 and is responsible for providing information about products, the overall price list, and price lists and discounts specific to the end user or customer's subscription. For example, according to the embodiment, the SPS can synchronize product information from the product hub with the overall price list from the pricing hub. 【0107】 According to the embodiment, the subscription manager service or component acts as an upstream service for receiving new order requests from the order management component 423, for example, from an Oracle Fusion Order Management environment. The subscription manager service or component can provide the SPS service with subscription information, including configured estimated time or subscription type (commitment, PayG), to help the SPS determine the effective base price (rate card) of the subscription. The subscription manager service or component can also send subscription discounts received from the order management component, which the SPS stores as entities of pricing rules. 【0108】 According to the embodiment, the SPS service runs as a background process for managing the rate card service or component, which is responsible for generating rate cards for new subscriptions and updating those rate cards when new price changes occur. The SPS service can provide APIs for accessing rate cards and pricing rules. The measurement inline evaluation engine can use these APIs to retrieve rate cards and pricing rules specific to a subscription and then use this data for cost calculation. 【0109】 According to the embodiment, additional SPS components may include, for example, a pricing / product hub integration component that enables an operator entity providing subscription-based products, services, or other offerings within the environment to manage product and price lists, such as those provided by a product hub and a pricing hub, respectively. 【0110】 For example, in such an embodiment, the SPS product integration flow can listen for create / update events in the product hub and make calls to the SPS product API. Similarly, the SPS pricing integration flow can retrieve new price list creations from the pricing hub and call the respective SPS pricing API. 【0111】 According to one embodiment, the system may also include an SPS core module that manages pricing entities and provides APIs for accessing them. Pricing entities can be accessed by internal services, such as an inline valuation engine. 【0112】 According to the embodiment, the system may also include a rate card manager component. The SPS service maintains a single base price for a product at a given point in time. However, the product price for a subscription depends on the base price and price list change policy attributes at the time the subscription is estimated and configured. The SPS service uses these properties to internally maintain the prices used for subscriptions. All such price lists are grouped into rate cards. The rate card manager can create and maintain rate cards, listen for price list changes and update existing rate cards with the new prices, and listen for new subscriptions and assign rate cards based on the subscription properties. 【0113】 According to the embodiment, the SPS service is responsible for managing subscription pricing rules, including discounts offered to end users or customers. Eligibility for pricing rules can be based on product attributes, such as discount groups, product categories, or specific SKUs. The SPS needs to internally identify a list of products to which these rules apply. To achieve this, a rule decoder engine can compile pricing rules in a format that allows an inline evaluation engine to use the information for cost calculations. This compilation process may occur when a product or pricing rule is created or updated. 【0114】 As shown in Figure 10 as an example, according to the embodiment, in 441, product and pricing information managed in, for example, Fusion Applications is sent to the SPS component. 【0115】 In step 442, the order is sent to the Subscription Manager component to create the subscription, rate card, and billing account. 【0116】 In step 443, the pricing configuration and pricing rules for the new order are sent to SPS. 【0117】 In version 444, the Subscription Manager component is used to configure billing accounts in the billing service or component. 【0118】 In step 445, the Subscription Manager component exposes events to the Subscription Manager Streaming component. 【0119】 In step 446, the billing data is sent to the accounts receivable component 425 in order to generate an invoice. 【0120】 In step 447, the Subscription Manager component consumes reclaim and subscription lifecycle (RASL) events from the Subscription Manager Streaming. 【0121】 At 448, Activation Service 427 reads the Subscription Manager event stream. 【0122】 In step 449, the customer obtains activation data from the activation portal 429. 【0123】 In 450, Tenancy Lifecycle Services 461 provision the tenancy as part of the subscription activation. 【0124】 In 451, the tenancy lifecycle service creates the account footprint within the account component 463 during account provisioning. 【0125】 In 452, the Tenancy Lifecycle Service configures the restriction template during account provisioning within the Restriction Service 467. 【0126】 In version 453, the account component functions as a downstream RASL client for handling the legacy reuse and subscription lifecycle in version 465. 【0127】 In step 454, the aggregated costs and usage are sent to the billing service 428 or component. 【0128】 In version 455, organizations can create child tenancies using the Tenancy Lifecycle Service. 【0129】 In step 456, the measurement service 432 or component retrieves subscription mapping data. 【0130】 In step 457, the subscription service 430 retrieves organizational data 469 for subscription mapping. 【0131】 At step 458, the RASL component reads the subscription manager event stream. 【0132】 In 459, the subscription service reads the subscription manager event stream, and in 460, the metering service or component retrieves ratecard data for each subscription, which can then be used in billing the operator or the customer for the final cost. 【0133】 The above examples are provided for illustrative purposes only to illustrate computing environments that may be used to provide a dedicated label cloud environment or private label cloud environment for use by tenants of a cloud infrastructure in accessing subscription-based software products, services, or other offerings related to the cloud infrastructure environment. According to other embodiments, the various components, processes, and features described herein may be used in conjunction with other types of cloud computing environments. 【0134】 Building and managing dynamic rate cards for subscriptions As mentioned earlier, using a one-to-one rate card scheme based on subscription relationships to provide access to software products or services in a cloud computing environment or other computing environment can be inconvenient, inefficient, and cost-ineffective. 【0135】 For example, every price change in such a system can trigger the creation of a new version of the rate card for each subscription present in the system. In the case of a cloud system with 1,000 customers and 10,000 products, a customized rate card methodology would need to maintain 10 million price points for 1,000 rate cards. The launch of a new product might require all 1,000 rate cards to be updated. 【0136】 According to the embodiment, a system and method are provided for building and managing dynamic rate cards for cloud service subscriptions, which enable rate cards to be associated with multiple subscriptions, allowing operators to provide customized dynamic pricing and optimize the number of rate cards within easily manageable parameters. 【0137】 According to the embodiment, the operator may use a single base price per product for a specific currency at a specific time. The effective base price for a subscription may be determined based on the contract date and the subscription pricing policy. Subscriptions created under the "Current Date Base Price" policy will result in the creation of rate cards that ensure these customers are always billed at the most recent base price. Subscriptions created under the "Contract Date Contract Price" policy will result in the creation of rate cards that ensure these customers are billed at the base price that existed on the contract date. Subscriptions created under the "Lowest of Contract Price or Discount" policy will result in the creation of rate cards that ensure these customers are billed at the minimum of the base price that existed on the contract date or the most recent discount price. 【0138】 According to the embodiment, a system and method are provided that leverages these groups to aggregate subscriptions into different groups and use those groups to determine a base price for any one or more specific customers, thereby reducing the complexity of rate card management while also providing the flexibility of custom pricing. 【0139】 According to one embodiment, the system can provide dynamic management of cost assessments for the use of services in a cloud environment. The system may include a cloud environment deployed within a realm and controlled by a tenant operator, a cloud subscription service, a manager, or components for managing subscriptions to cloud services, a subscription pricing service (SPS) configured to dynamically determine subscription ratecard information, and metering services. 【0140】 According to one embodiment, the cloud environment deployed within the realm and controlled by the operator may include software products and / or services provided as the vendor's cloud products and / or services. 【0141】 According to one embodiment, a cloud subscription manager can be configured to receive requests from end users to order one or more cloud products and / or services and to fulfill the orders by creating a subscription, which includes subscription pricing attributes. 【0142】 According to one embodiment, the subscription pricing service may be configured to respond to a pricing event and dynamically determine the subscription's rate card information based on the subscription pricing attribute. 【0143】 According to one embodiment, the measurement service may be configured to receive rate card information from a subscription pricing service and end-user consumption information from a cloud service, wherein the end-user consumption information represents the use of the cloud service by an end-user, and to determine the usage cost to the end-user for the use of the cloud service by the end-user based on the rate card information and the end-user consumption information. 【0144】 According to one embodiment, the subscription pricing service can operate to determine subscription rate card information based on subscription pricing attributes, which include one or more of the price on the contract date and / or the current price, and / or the contract price and / or the discounted price. 【0145】 According to the embodiment, the measurement service can operate to determine the usage costs of multiple end users based on end-user consumption information and rate card information for each of the multiple end users, the rate card information being based on subscription pricing attributes common to each of the multiple end users. 【0146】 According to the embodiment, the subscription pricing service may include a product integration tool service operable to retrieve product information data from a product hub operablely coupled to the system, wherein the product information data represents parameters of a cloud service; a pricing integration tool service operable to retrieve product pricing information data from a pricing hub operablely coupled to the system, wherein the product pricing information data represents pricing for a cloud service; and a pricing control plane operable with the product integration tool service and the pricing integration tool service. 【0147】 According to one embodiment, the product integration tool service may be controlled by a system operator to modify product information data representing functional parameters of the cloud service, and / or to add additional product information data representing additional parameters of the cloud product and / or service. 【0148】 According to one embodiment, the pricing integration tool service may be controlled by the system operator to modify product pricing information data representing the pricing of the cloud service and / or to add additional product pricing information data representing additional pricing for the cloud service. 【0149】 According to one embodiment, the cloud environment may be deployed within a realm controlled by an operator that includes multiple regions. 【0150】 According to the embodiment, one or more of the cloud products and / or services may be offered in each of multiple regions. 【0151】 Subscription pricing service Figure 11 illustrates the use of a subscription pricing service to provide access to software products or services in a cloud computing environment, according to an embodiment. 【0152】 As shown in Figure 11, according to the embodiment, the subscription pricing service is responsible for providing information about products, an overall price list, and price lists and discounts specific to the end customer's subscription. 【0153】 For example, according to one embodiment, the subscription pricing service operates to synchronize (sync) product information from the product hub 421A portion of the product and pricing hub 421 (as shown in Figure 10) with the overall price list from the pricing hub 421B portion of the product and pricing hub 421. 【0154】 According to one embodiment, the cloud subscription manager acts as an upstream service for receiving new order requests, for example, from the order management component 423. The cloud subscription manager can provide subscription information to the subscription pricing service (SPS). For example, subscription details such as configured estimated time and subscription type (commitment, PayG) help the SPS determine the effective base price (rate card) of the subscription. The cloud subscription manager can also send subscription discounts, for example, received from the order management component, which the SPS stores as entities of pricing rules. 【0155】 According to the embodiment, the subscription pricing service runs as a background process for managing the rate card service or component, which is responsible for generating rate cards for new subscriptions and updating them when new price changes occur. The subscription pricing service can expose APIs for accessing rate cards and pricing rules. The measurement inline evaluation engine 540 can use these APIs to retrieve rate cards and pricing rules specific to a subscription and use this data for cost calculations. 【0156】 According to the embodiment, the additional SPS component may include, for example, a pricing / product hub integration component 500 that enables an operator entity (e.g., a PLC operator) to provide subscription-based products, services, or other offerings within the environment, as well as to manage product and price lists, such as those provided by a product hub and a pricing hub, respectively. 【0157】 For example, according to one embodiment, the SPS product integration flow can listen for creation / update events in the product hub 421A and make calls to the SPS product API. Similarly, the SPS pricing integration flow can retrieve new price list creations from the pricing hub 421B and call the respective SPS pricing API. 【0158】 According to one embodiment, the subscription pricing service 426 may include a product integration tool service 521A that is operable to retrieve product information data from a product hub 421A operablely coupled to the system, wherein the product information data represents parameters of a cloud service; a pricing integration tool service 521B that is operable to retrieve product pricing information data from a pricing hub 421B operablely coupled to the system, wherein the product pricing information data represents pricing for a cloud service; and a pricing control plane that can operate in conjunction with the product integration tool service and the pricing integration tool service. 【0159】 According to one embodiment, the product integration tool service 521A is operable by a system operator to modify product information data representing functional parameters of a cloud service, and / or to add additional product information data representing additional parameters of the cloud product and / or service. The modified product information data and / or additional product information data are registered via the control plane master region 520. 【0160】 According to one embodiment, the pricing integration tool service 521B is operable by a system operator to modify product pricing information data representing the pricing of the cloud service and / or to add additional product pricing information data representing additional pricing for the cloud service. The modified product pricing information data and / or additional product pricing information data are registered via the control plane master region 520. 【0161】 According to the embodiment, a user interface or console 530 may be provided that enables the operator to manage the customer's account and the services provided by the customer. The cloud infrastructure provider may also use a cloud infrastructure tenancy, for example, a Fusion Applications tenancy, to install any infrastructure services required for use by the operator and the operator's customers. 【0162】 Figure 12 further illustrates the use of a subscription pricing service to provide access to software products or services in a computing environment, according to an embodiment. 【0163】 As shown in Figure 12, according to the embodiment, the additional SPS component may include, for example, a pricing / product hub (e.g., OCI) integration component 500, which enables an operator or entity providing subscription-based products, services, or other offerings within the environment to manage product and price lists, such as those provided by, for example, a product and pricing hub component 421. 【0164】 For example, according to one embodiment, the SPS product integration flow can listen for create / update events in the product hub 421 (e.g., OCI) and make calls to the SPS product API. Similarly, the SPS pricing integration flow can retrieve new price list creations from the pricing hub 421 (e.g., OCI) and call the respective SPS pricing API. 【0165】 According to one embodiment, the system may also include an SPS core module 502 that manages pricing entities and provides APIs for accessing them. Pricing can be accessed by internal services, such as an inline valuation engine. 【0166】 According to the embodiment, the system may also include a rate card manager component 504. The subscription pricing service maintains a single base price for a product at a given point in time. However, the product price for a subscription depends on the base price and price list change policy attributes at the time the subscription is estimated and configured. The subscription pricing service uses these properties to internally maintain the prices used for subscriptions. All such price lists are grouped into rate cards. The rate card manager can create and maintain rate cards, listen for changes in the price list, and update existing rate cards with the new prices. The rate card manager can also operate to listen for new subscriptions and assign rate cards based on the properties of the subscription. 【0167】 In some embodiments, the system may also include a rule decoder engine 506. The subscription pricing service is responsible for managing subscription pricing rules. These pricing rules include discounts offered to end customers. Eligibility for pricing rules may be based on product attributes, such as discount groups, product categories, or specific SKUs. In some embodiments, the subscription pricing service internally identifies a list of products to which these rules are applicable. To achieve this, the rule decoder engine can compile the pricing rules in a format that can be used by an inline evaluation engine for cost calculation. This compilation process may occur when a product or pricing rule is created / updated. 【0168】 According to the embodiment, synchronous operations are performed in the SPS. In this regard, in 520, a new product is added to the product hub. Similarly, in 520, a new price list may be added to the pricing hub. Then, in 522, a new product event and / or a new pricing event is indicated to the pricing / product hub integration component 500. 【0169】 The pricing / product hub integration component 500 makes API calls using the SPS core 502 at 524. At 526, the new products and / or new prices are inserted into the product table and / or price table in the SPS database 510. 【0170】 At 528, SPS uses API calls to SPS Core 502 to create subscription pricing configuration data and / or pricing rules, and a cloud subscription service, manager, or component 424 exposes one or more subscription management APIs to onboard new customers or create orders used to create subscriptions and trigger workflows to coordinate billing and pricing services or other components. Then, at 531, SPS Core 502 inserts the configuration data and / or pricing rules into the SPS database 510. 【0171】 According to the embodiment, the system enables an operator to perform various tasks, including, for example, reading pricing rules, price lists, and rate cards on the operator console 530, 532, and selectively creating pricing rules. 【0172】 Operator console 530, on 534, makes an API call to retrieve a list and / or create pricing rules. 【0173】 The measurement inline evaluation engine module 511 can operate according to an exemplary embodiment to make an API call at 536 to retrieve rate cards and / or pricing rules read at 538 from the SPS database 510. 【0174】 In addition to the above, depending on the embodiment, the system may perform one or more different asynchronous background operations. In this regard, a new subscription may be read from the SPS database 510 to the rate card manager 504 at 540. Furthermore, the rate card manager 504 may insert the price list of the generated rate cards into the SPS database 510 at 541. 【0175】 Furthermore, in addition to the above, depending on the embodiment, the system may perform one or more additional asynchronous background operations. In this regard, a new pricing rule may be read from the SPS database 510 to the rule decoder engine 506 in 542. Furthermore, the rule decoder engine 506 may insert the new pricing rule into the SPS database 510 in 543. 【0176】 Dynamic Rate Card Management According to the embodiment, optimized dynamic rate card management enables organizations to provide customized or dynamic pricing, optimize the number of rate cards to a manageable level, for example, rate cards can be associated with a type of contract pricing policy, subscriptions can be associated with applicable rate cards based on the contract pricing policy and contract date, and rate cards can be created and updated in a just-in-time manner based on the latest price changes of products in the system. 【0177】 For example, according to one embodiment, the system may use rate cards to group similar price lists of similar types of subscriptions in order to optimize API calls from the meter. Care must be taken to ensure that the correct rate cards are mapped to the correct subscriptions and that the correct list of price lists is maintained for each rate card; otherwise, the meter may receive incorrect charges, effectively resulting in incorrect billing. 【0178】 Figure 13 illustrates an exemplary use of managing dynamic rate cards in relation to a new subscription, according to an embodiment. 【0179】 As shown in Figure 13, according to the embodiment, a new rate card can be generated when a new subscription is created, and there is no rate card for the latest price list. 【0180】 Figure 14 shows an exemplary use of managing dynamic rate cards in relation to adding price lists, according to an embodiment. 【0181】 As shown in Figure 14, according to this embodiment, a new price list may be added when the price of an existing product changes or when a new product is added. Price changes of existing products do not affect rate cards of type CONTRACT_RATE. The addition of a new product affects all rate cards. The rate card manager is responsible for updating rate cards when the price list changes. 【0182】 According to the embodiment, an organization can use a single base price per product for a specific currency at a specific time. The effective base price of a subscription is determined based on the contract date and the subscription pricing policy, e.g., (1) current date (list price), (2) contract date (contract price), and (3) (of the two) lowest value (contract price - discount). According to the embodiment, these form three groups of subscription types, and the system can then use these groups to place subscriptions into specific groups and use these groups to determine the base price. The three groups include current date (list price), contract date (contract price), and (of the two) lowest value (contract price - discount). 【0183】 According to this embodiment, a current date (list price) type subscription will always be billed using the latest base price. 【0184】 According to the embodiment, a contract-date (contract price) type subscription is billed using the base price on the contract date. 【0185】 According to an exemplary embodiment, a minimum-value (contract price - discount) type subscription is billed using the minimum of the base price on the contract date or the most recent price. 【0186】 Figure 15 shows Table 550 of exemplary subscription types and corresponding rate cards according to the embodiment. 【0187】 According to embodiments herein, cloud computing environments may be used to provide access to a variety of complementary cloud-based components, such as software applications or services, enabling an organization's or enterprise's customers to operate applications and services within a highly available hosted environment. 【0188】 According to the embodiment, the system enables guest operators or client operators, such as service providers, integrators, and independent software vendors (ISVs) partnered with the cloud operator, to become private label cloud providers and thereby directly deliver a wide range of applications and services to end customers that can be tailored by the operator to specific industry, market, and regulatory or government requirements. 【0189】 Such guest operators or client operators may develop their own unique / proprietary infrastructure and platform services, which would otherwise not be available in a public cloud environment, but their customers may find that these infrastructure and platform services have special value to specific industries, markets, and regulatory policies. 【0190】 To enhance value for the operator, the embodiments herein enable the provision of infrastructure and platform services, along with the operator's ability to fully control terms of trade, customer relationships, and touchpoints in accordance with the operator's specific branding. This includes control over pricing strategies, including pricing the operator's own unique / proprietary infrastructure and platform services. 【0191】 As mentioned earlier, organizations have previously used static rate cards as one way to manage product inventory pricing for customers, with rate cards defining pricing for each customer subscription. Essentially, each customer subscription was associated with a rate card that set the price of the platform's services for that customer. Dynamic rate cards were also used, ensuring that customers were always provided with the latest prices, regardless of whether individual product prices went up or down. 【0192】 According to embodiments herein, customer behavior may be driven by locking the price on the contract date, or, in some cases, by locking it to the price on the contract date or the latest price, whichever is smaller, instead of simply using the latest catalog price. However, using this technique, along with the previously available rate card scheme described above, which has one rate card per subscription (a one-to-one relationship), results in an excessive number of rate cards to manage by the system and therefore imposes a significant overhead burden on the operator. 【0193】 According to the embodiment, the development of the subject matter provides a method and system for building and managing dynamic rate cards for cloud service subscriptions, which enable rate cards to be associated with multiple subscriptions. 【0194】 Therefore, the improvement that should be investigated is, at the highest level, the ability to associate rate cards with multiple (N) subscription relationships (1 to N), whereas previously each subscription relationship was associated with its own unique rate card (1 to 1). 【0195】 The proposed solution's one-to-many relationship scheme between rate cards and subscriptions offers several advantages over the previous one-to-one relationship scheme. The first advantage is that significantly fewer rate cards need to be maintained by the system. Another advantage is the reduction of the processing required to update the system's rate cards in response to any changes in subscription pricing, such as price increases or discounts. The new one-to-many scheme requires far fewer rate cards to be updated to account for pricing changes across all subscription relationships. Furthermore, the system's metric component evaluating the cost of subscriptions for cloud product use only needs to refer to a much smaller set of rate cards, rather than having to examine the complete rate card allocation in the old one-to-one relationship scheme. 【0196】 According to the embodiment, the operator uses a single base price per product for a specific currency at a specific time. The effective base price for a subscription is determined based on the contract date and the subscription pricing policy. 【0197】 Subscriptions purchased in accordance with the current date's fixed-price policy result in a rate card that ensures these customers are always billed at the current base price. Herein, in accordance with the current date's fixed-price policy (a one-to-many relationship), a single rate card may be used with or associated with the same number of existing or potentially existing subscriptions that have been purchased or are to be purchased. 【0198】 As shown in the example in Table 550 of Figure 15, product prices are changed every three months as an example. In Figure 15, product prices are changed every three months as an example, but it should be understood that product prices may change on any schedule or randomly, as desired and / or as needed. Therefore, the example in Figure 15 is not intended to limit the exemplary embodiments and is presented as a non-limiting example. 【0199】 In this embodiment, as shown in the example in Figure 15, for a subscription type with a fixed price (ALP), there is a single rate card ALP-0000 for all subscriptions. Price changes add new entries to this rate card. This is shown in the “Fixed Price” column of Table 550, and as shown in the figure, a single rate card ALP-0000 is used for all of the indicated subscriptions (e.g., PayGSubQ1-1 to PayGSubQ4-3). In this example, price changes on January 1, 2022, April 1, 2022, July 1, 2022, and October 1, 2022 simply result in new entries being added to the single rate card ALP-0000. This one-to-many relationship between a rate card and many subscriptions is highly efficient compared to the previous one-to-one scheme where a rate card was associated with each subscription. 【0200】 In the embodiment, as shown in the example in Figure 15, for the contract price (ACP) subscription type, a price change generates a new rate card but does not affect existing rate cards. All subscriptions created during the time frame of these changes use the same rate card. 【0201】 In this embodiment, subscriptions purchased according to the contract pricing policy on the contract date result in rate cards that, in this example, ensure these customers are billed at the base price on the contract date. In this scheme, price changes generate new rate cards but do not affect existing rate cards. 【0202】 This is shown in the "Contract Price" column of Table 550 in Figure 15, and as shown in the figure, a single rate card ACP-010122 is used for all indicated subscriptions (e.g., ContractPriceSubQ1-1 to ContractPriceSubQ1-3) purchased during the timeframe from January 1, 2022 to April 1, 2022. Similarly, as shown below the "Contract Price" column in the table, a single additional rate card ACP-040122 is used for all indicated subscriptions (e.g., ContractPriceSubQ2-1 to ContractPriceSubQ2-3) purchased during the timeframe from April 1, 2022 to July 1, 2022. Similarly, the third rate card ACP-070122 is used for all indicated subscriptions (e.g., ContractPriceSubQ3-1 to ContractPriceSubQ3-3) purchased during the timeframe from July 1, 2022 to October 1, 2022, and the fourth rate card ACP-100122 is used for all indicated subscriptions (e.g., ContractPriceSubQ4-1 to ContractPriceSubQ4-3) purchased during the timeframe after the price change that occurred on October 1, 2022. The A-to-N relationship between the rate cards (four in the example) and the many subscriptions that may be created within the timeframe between price changes is far more efficient compared to the previous one-to-one scheme where each rate card was associated with a specific subscription. 【0203】 In the exemplary embodiments herein, instead of needing to use 12 rate cards (one per subscription, as in previous systems), the new dynamic rate card technology of this disclosure requires the use of only 4 rate cards. Thus, there is a one-to-many relationship between a rate card and the subscriptions created within the time frame between price changes. There is also an A-to-N relationship between a rate card and all subscriptions, where A < the total number of subscriptions. These one-to-N and A-to-N relationships between a rate card and many subscriptions are far more efficient than the previous one-to-one scheme in which each subscription is associated with a rate card. 【0204】 In the embodiment, as shown in the example in Figure 15, in the case of an At Contract Price-Price Drop (ACPPD) model, a single rate card is used for subscriptions created within the same price timeframe. If the price changes, a new ACPPD rate card is generated, and if the product price decreases, the existing rate card is updated. 【0205】 In this embodiment, subscriptions purchased under a contract price or a minimum discount policy result in a rate card that guarantees these customers will be billed at the minimum of the base price or the most recent price on the contract date. In this scheme, a single rate card is used for subscriptions created during the same pricing timeframe. If a price increase occurs, a new rate card is created, and if a price decrease occurs, the existing rate card is updated with the new lower price. This is shown under the "Contract Price - Discount" column in the table, and as shown in the figure, a single rate card ACPPD-010122 is used for all of the indicated subscriptions (e.g., CPPriceDropSubQ1-1 to CPPriceDropSubQ1-3) purchased during the timeframe from January 1, 2022 to April 1, 2022. 【0206】 Similarly, as shown in the "Contract Price - Price Reduction" column of Table 550 in Figure 15, a single additional rate card ACPPD-040122 will be used for all indicated subscriptions (e.g., CPPriceDropSubQ2-1 to CPPriceDropSubQ2-3) purchased during the timeframe from April 1, 2022 to July 1, 2022. In the example, the price may be reduced on July 1, 2022. In this case, rate card ACPPD-040122 will be updated with the new lower price, and all new subscriptions (e.g., CPPriceDropSubQ3-1 to CPPriceDropSubQ3-3) purchased during the timeframe from July 1, 2022 to October 1, 2022 will use the same rate card ACPPD-040122 with the adjusted lower pricing information. The third rate card, ACPPD-100122, will be used for all indicated subscriptions (e.g., CPPriceDropSubQ4-1 to CPPriceDropSubQ4-3) purchased during the time frame following the price change that occurred on October 1, 2022. The A-to-N relationship between the rate cards (three in the example) and the many subscriptions that may be created within the time frame between price changes is significantly more efficient than the previous one-to-one scheme where each rate card was associated with a specific subscription. 【0207】 In this example, instead of needing to use 12 rate cards (one per subscription, as in the previous system), the new dynamic rate card technology requires only 3 rate cards. Therefore, for subscriptions created within the time frame between price changes, there is a one-to-many relationship between rate cards and subscriptions. There is also an A-to-N relationship between rate cards and all subscriptions, where A < the total number of subscriptions. These one-to-N and A-to-N relationships between rate cards and many subscriptions are far more efficient than the previous one-to-one system where each subscription was associated with a rate card. 【0208】 In the table shown in Figure 15, product prices are changed every three months as an example. Here, the fixed-price subscription type includes a single rate card ALP-0000 for all subscriptions. Price changes add new entries to this rate card. For contract-price subscription types, price changes generate new rate cards but do not affect existing rate cards. All subscriptions created during these change timeframes use the same rate card. For contract-price reductions, a single rate card is used for subscriptions created during the same price timeframe. If the price changes, a new rate card is added, and if the product price decreases, existing rate cards are updated. 【0209】 Embodiments in this specification leverage these groups to aggregate subscriptions into different groups and use those groups to determine a base price for any particular customer, thereby reducing the complexity of rate card management while also providing the flexibility of custom pricing. 【0210】 Figure 16 illustrates an exemplary use of a dynamic rate card, as applicable to various subscription-based products, services, or other offerings, according to an embodiment. 【0211】 As shown in Figure 16, according to the embodiment, in the case of the set of examples described above in relation to Figure 15, the price changed every three months. In this example, an organization with 10,000 subscriptions might typically require 10,000 rate cards to support custom pricing, but the method described herein reduces this to nine rate cards. Thus, the embodiment herein using dynamic rate cards according to the embodiment is highly beneficial compared to a system that does not have the advantages of dynamic rate cards. 【0212】 Rate card generation According to the embodiment, since rate cards are associated with subscriptions, a new subscription triggers the rate card generation workflow. Creating or updating new prices does not trigger rate card generation because the rate card would be useless unless a new subscription is created during that timeframe. The system responds to new subscription events and price update events. 【0213】 New Subscription Event According to one embodiment, in the case of a new subscription event, the system responds for each type of subscription as described below. 1. List price (ALP): a. Assign existing ALP-0000 rate cards to the new subscription. 2. Contract Price (ACP): a. Find the most recent time of price change before the subscription contract date and set it to T max It is called that. b. TimeEffective = T max Check if an ACP-rated card exists. i. If an ACP rate card exists, assign it to the new subscription. ii. If it does not exist, 1. Create a new ACP rate card, T max Add all valid product price points to its new ACP rate card. 2.T max Set this as the TimeEffective for the new ACP rate card. 3. Renew your subscription using the newly generated ACP rate card. 3. Contract Price - Price Reduction (ACPPD): a. The ACPPD type method is the same as the ACP rate card described above, but only the type of rate card changes to ACPPD. 【0214】 According to the embodiment, in the above flow, rate card generation occurs only when ACP type and ACPPD type rate cards are missing. 【0215】 New product launch According to one embodiment, the system can be configured to respond to new product launches by adding new price entries to all rate cards in the system to reflect the launch of the new product. According to another embodiment, the system can be configured to respond to new product launches by using variations of the above configuration based on one or more policies that may be adopted and / or required by the organization. 【0216】 Product discontinuation According to one embodiment, the system responds to product discontinuation by performing the removal of product pricing from all relevant rate cards within the system. 【0217】 Price changes for existing products According to the embodiment, in the case of a change to an existing product, the system responds for each type of subscription as described below. 1. List price (ALP): a. Add the new price entry to the product's ALP-0000 rate card. 2. Contract Price (ACP): a. Since the price remains the same according to the contract, no changes are necessary. 3. Contract Price - Price Reduction (ACPPD): a. Search for all rate cards of type ACPPD. b. For each rate card, i. Find the latest price of the product as of the contract date. ii. If applicable, check whether (the price of the new product < the price on the contract date). 1. If true, add a new entry containing the new updated price for the ACPPD rate card. 2. If not true, update the product price according to the contract date. iii. If it does not exist, find the first price of the product after the contract date. 1. If (the price of the new product < the original price of the product), add a new entry containing the new, updated price for the ACPPD rate card. 2. Otherwise, update the product price according to the initial price. 【0218】 Custom pricing (discounts) exceeding the standard rate card. Depending on the embodiment, the methods described herein may be used to help an organization support custom rate cards. Organizations can further extend their custom pricing by offering discounts in addition to custom rate card prices. For example, an organization may add discount policies, such as "10% discount on subscription A for all products." The effective base price may be a combined value of the rate card price and the discount offered on the subscription. Organizations can maintain such discount rules outside of the base rate card and make them available for cost calculation. The use of such custom rate cards and discounts presents organizations with an opportunity to offer competitive pricing. 【0219】 Rate cards stored in mutable and semi-immutable data structures According to the embodiment, the rate cards are stored in a non-transient memory device with mutable and semi-immutable data structures. For example, an ALP rate card may be stored in a mutable data structure, and an ACP rate card may be stored in a semi-immutable data structure. 【0220】 According to the embodiment, products may be selected from the product hub to support the sales process in which subscriptions are created in the realm. After an order is created via the cloud subscription manager, a subscription is created in the cloud subscription manager, which then manages the lifecycle of that subscription and provisions what needs to be provisioned in downstream services. The SPS component then manages pricing and usage aspects for use in billing the operator for the final cost or in its ability to bill the customer. Usage events are forwarded to the billing service or component, an invoice is created according to the subscription billing preference, and sent to the accounts receivable component. 【0221】 According to one embodiment, services provided within a realm report their usage to a metering service or component, but such usage is not associated with any price. The valuation process determines the cost of each specific event, for example by applying a rate card, determines the subscription unit and cost, associates this cost with the record, and then forwards it to the billing service or component. 【0222】 According to the embodiment, the subscription pricing service runs as a background process for managing a rate card service or component, which is responsible for generating rate cards for new subscriptions and updating those rate cards when new price changes occur. The subscription pricing service can provide APIs for accessing rate cards and pricing rules. The instrumentation inline evaluation engine can use these APIs to retrieve rate cards and pricing rules specific to a subscription and then use this data for cost calculation. 【0223】 Using a dynamic rate card Figure 17 is a flowchart illustrating a method 600 using a dynamic rate card according to an embodiment. 【0224】 As shown in Figure 17, according to the embodiment, in 602, multiple usage rates are identified, and each of the multiple usage rates corresponds to a multiple cloud computing service. In the exemplary embodiment, the values of the multiple usage rates are changeable over time. These values may be a process for the use of services within the cloud environment. 【0225】 In 604, a mutable data structure is generated that references a first set of values for a first set of corresponding usage rates among multiple usage rates. In an exemplary embodiment, the mutable data structure is modified in response to determining that a change has occurred in at least one value of the first set of usage rates. In the example, the mutable data structure generated in 604 may be, for example, an ALP rate card that references the current set of values for a first set of corresponding usage rates among multiple usage rates. 【0226】 In 606, a semi-immutable data structure is generated that references a second set of values for a second set of corresponding usage rates among multiple usage rates. In an exemplary embodiment, all or part of the semi-immutable data structure remains unchanged in response to a determination that a change has occurred in any of the values in the second set of usage rates. In the example, the semi-immutable data structure generated in 606 may be, for example, an ACP rate card that references a second set of values for a second set of corresponding usage rates among multiple usage rates. 【0227】 In 608, the mutable data structure is associated with a first group of memberships in a first one-to-many relationship. In an exemplary embodiment, in 608, the mutable data structure is associated with a first group of memberships that include, for example, a first group of subscriptions in a first one-to-many relationship. 【0228】 In 610, the semi-immutable data structure is associated with a second plurality of belongings in a second one-to-many relationship. In an exemplary embodiment, in 610, the semi-immutable data structure is associated with a second plurality of belongings, for example, which includes a second plurality of subscriptions in a second one-to-many relationship. 【0229】 In 612, a mutable data structure is referenced to determine a first set of values applicable to service usage associated with usage by a first multiple affiliation of multiple cloud computing services, based on a first set of usage rates. In an exemplary embodiment, the reference to the mutable data structure in 612 may include referencing the mutable data structure to determine a first set of cost values applicable to user tenants in a cloud environment for service usage associated with usage by a first multiple subscription to multiple cloud computing services, based on a first set of usage rates. 【0230】 In 614, a semi-immutable data structure is referenced to determine each second set of values applicable to service usage associated with a second multiple affiliation of multiple cloud computing services, based on a second set of usage rates. In an exemplary embodiment, the reference to the semi-immutable data structure in 614 may include referencing the semi-immutable data structure to determine each second set of cost values applicable to a user tenant of a cloud environment for service usage associated with usage by a second multiple subscription to multiple cloud computing services, based on a first set of usage rates. 【0231】 Change of List Price (ALP) rate card Figure 18 is a flowchart illustrating a method 620 for changing the list price (ALP) rate card according to an embodiment. 【0232】 As shown in Figure 18, according to the embodiment, in 622, an updated value is identified for one of the first expired values in the first set of usage rates. 【0233】 In 624, the mutable data structure is updated to add an updated usage rate corresponding to one of the first sets of usage rates. According to the embodiment, the updated usage rate in the modified mutable data structure refers to the updated value. 【0234】 Changes to Contract Price (ACP) rate cards Figure 19 is a flowchart illustrating a method 630 for changing an ACP rate card according to an embodiment. 【0235】 As shown in Figure 19, according to the embodiment, in 632, an updated value is identified for one of the first expired values of the second set of usage rates. 【0236】 In step 634, a new semi-immutable data structure is generated. According to one embodiment, the new semi-immutable data structure generated in step 634 includes a semi-immutable data structure to which an updated usage rate corresponding to one of the first of a second set of usage rates is added. According to one embodiment, the updated usage rate in the new semi-immutable data structure refers to an updated value. 【0237】 Changes to ALP / ACP rate cards for newly added cloud computing services Figure 20 is a flowchart illustrating a method 640 for modifying the ALP rate card and ACP rate card of a cloud computing service added to a cloud computing environment, according to an embodiment. 【0238】 As shown in Figure 20, according to the embodiment, a new usage rate for the new cloud computing service is identified in 641. In the exemplary embodiment, the new cloud computing service is not included in any of the multiple cloud computing services already present in the cloud computing environment. 【0239】 In 642, the mutable data structure is modified to add a new usage rate corresponding to the usage of the new cloud computing service. According to the embodiment, the new usage rate in the modified mutable data structure refers to the new usage rate value for the new cloud computing service. 【0240】 In step 643, a new semi-immutable data structure is generated, which includes an ACP rate card for the semi-immutable data structure, to which a new usage rate corresponding to the usage of the new cloud computing service is added. According to one embodiment, the new usage rate in the new semi-immutable data structure refers to a new usage rate value for the new cloud computing service. 【0241】 In version 644, the modified mutable data structure is referenced to determine the new usage rate value for the new cloud computing service for the service usage associated with the first multiple affiliations of the new cloud computing service. 【0242】 In 645, a semi-immutable data structure is referenced to determine the value of a new usage rate for the new cloud computing service for the service usage associated with the use of the new cloud computing service by the first multiple affiliations. 【0243】 New subscription for cloud services Figure 21 is a flowchart illustrating a method 650 for handling a new subscription to a set of cloud computing services, according to an embodiment. 【0244】 As shown in Figure 21, according to the embodiment, a new membership is received in 652, and the new membership is associated with one of several cloud computing services in the cloud infrastructure environment. In an exemplary embodiment, the new membership may include a new subscription associated with one of the several cloud computing services. 【0245】 In 654, method 650 determines whether the usage rate value for access resulting from a new affiliation with one of several cloud computing services includes one or more values from a first or second set of usage rates. 【0246】 In versions 655 and 656, the new affiliation is associated with either a mutable or semi-immutable data structure. 【0247】 In an embodiment, in 655, the new membership is associated with a mutable data structure based on the usage rate value of access by the new membership to one of several cloud computing services, which includes one or more of a first set of usage rates. In an embodiment, in 656, the new membership is associated with a semi-immutable data structure based on the usage rate of access by the new membership to one of several cloud computing services, which includes one or more of a second set of usage rates. 【0248】 In the embodiment, 655, a new membership including a new subscription to a cloud service is associated with a mutable data structure based on the value of the usage rate for access by the new membership to one of several cloud computing services, which includes one or more of a first set of usage rates. 【0249】 In the embodiment, 656, a new membership including a new subscription to a cloud service is associated with a semi-immutable data structure based on the usage rate of access by the new membership to one of several cloud computing services including one or more of a second set of usage rates. 【0250】 Operator realm as a proxy for subscription identification Figure 22 is a flowchart illustrating a method 660 of using an operator realm as a proxy for subscription identification, according to an embodiment. 【0251】 As shown in Figure 22, according to the embodiment, in 662, method 660 determines that a first membership among a plurality of first memberships is associated with a mutable data structure based on the characteristics of a first subscription of a first membership to a plurality of cloud computing services deployed on a cloud computing infrastructure. 【0252】 In an exemplary embodiment, method 660 determines, based on the characteristics of the first subscription of a first membership to a plurality of cloud computing services deployed on a cloud computing infrastructure, that the first membership containing the first subscription of a plurality of first memberships is associated with a mutable data structure. 【0253】 In an exemplary embodiment, 662, method 660 determines that a first subscription with a first plurality of affiliations is associated with a mutable data structure based on the characteristics of the first subscription, which includes an operator realm associated with the service usage of the first subscription for a plurality of cloud computing services deployed on a cloud computing infrastructure. 【0254】 Continuing to refer to Figure 22, in 664, method 660 determines that the second of multiple second belongings is associated with a mutable data structure based on the characteristics of the second subscription of the second belonging to multiple cloud computing services deployed on the cloud computing infrastructure. 【0255】 In an exemplary embodiment, method 664 determines that a second membership containing a second subscription among a plurality of second memberships is associated with a mutable data structure, based on the characteristics of the second subscription of the second membership to a plurality of cloud computing services deployed on a cloud computing infrastructure. 【0256】 In an exemplary embodiment, method 660 determines that a second subscription with a second multiple affiliation is associated with a mutable data structure based on the characteristics of the second subscription, which includes an operator realm associated with the service usage of the second subscription for a plurality of cloud computing services deployed on a cloud computing infrastructure. 【0257】 Processing new subscriptions associated with ACP rate cards Figure 23 is a flowchart illustrating a method 670 for handling new subscriptions to a set of subscriptions associated with an ACP rate card, according to an embodiment. 【0258】 As shown in Figure 23, according to the embodiment, a new affiliation is received in 672, and the new affiliation is associated with one of several cloud computing services of the cloud computing infrastructure. According to the embodiment, the new affiliation received in 672 may include a new subscription to one of several cloud computing services of the cloud computing infrastructure, etc. 【0259】 At 674, method 670 determines whether the value of the usage rate of access by a new subscription to one of a plurality of cloud computing services includes one or more of the first or second set of usage rates. 【0260】 At 676, a new semi-invariant data structure is generated based on the determined usage rate of access by a new subscription to one of a plurality of cloud computing services that is not either the first set or the second set of usage rates. 【0261】 Rate Card Migration According to an embodiment, to accommodate the use of dynamic rate cards, a migration service or process can be used to convert / migrate a subscription originally created according to a conventional or previous subscription pricing model (SPM) to instead conform to a subscription pricing service (SPS) model for use with the various systems, methods, and features described herein. 【0262】 The so-called conventional rate card or SPM rate card, which is generally described, is filled out for each end customer by a salesperson at the time of subscription order. Thus, each end customer subscription to a cloud application service product is associated with a conventional rate card, providing a one-to-one relationship between the rate card and the product subscription in the SPM pricing model. In the SPM, by definition, each rate card reflects the unit selling price of a particular subscription, and all discounts are already applied at the time of order. 【0263】 Such traditional subscriptions are generally static, with companies defining pricing on a per-customer basis. However, SPM rate cards can be considered somewhat dynamic insofar as they can be used to provide the latest prices to selected customers, regardless of overall changes in individual product prices. To support this, the SPM model uses pricing policies in relation to traditional rate cards, and the combination of the pricing policy and the rate card's subscription price is used to determine the cost to the end customer. 【0264】 As mentioned above, depending on the embodiment, to address the technical challenges in maintaining end-user subscriptions, the system may include a Subscription Pricing Service (SPS) that implements and maintains a base price-centric dynamic rate card. That is, the SPS uses a single overall base price per product for a given currency at a given time. In the SPS model, the effective base price of a subscription is determined based on the contract date and subscription pricing rules, which are (1) the current date (list price), (2) the contract date (contract price), and (3) the lowest of the two (contract price - discount). Unlike the traditional one-to-one mapping between rate cards and subscriptions in the SPM subscription model, the new SPS subscription model essentially has a one-to-many mapping between rate cards and end-user subscriptions. 【0265】 The one-to-many subscription model offered by SPS reduces pricing complexity and supports up-to-date pricing trends through base price modeling and discounts, but requires migrating existing traditional rate cards using a one-to-one approach to the SPS pricing model which uses dynamic rate cards in a one-to-many approach. 【0266】 According to one embodiment, the system includes a rate card migrator component or migration service or migration process (referred to as an RC migrator in some embodiments herein) that migrates existing subscription and product-specific conventional rate cards, such as those used in an SPM model, to dynamic rate cards used in an SPS model. 【0267】 According to one embodiment, the rate card migration process uses the configuration / creation date of the SPM rate card to determine the base price applicable to the legacy (SPM) rate card or subscription of the contractual subscription in SPS. 【0268】 According to one embodiment, the rate card migration process then determines a discount to be applied to each subscription based on the difference between the base price determined in the SPS and the original product selling price of the subscription in the SPM. This difference is reflected in the (primary) SPS pricing rule applied to the base price of the SPS rate card for a particular subscription. 【0269】 According to the embodiment, special pricing policies supported by conventional (SPM) rate cards or subscriptions are addressed in the rate card migration process by generating additional (secondary) pricing rules that apply to the subscription in combination with the overall base price that was in effect on the configuration / creation date of each primary SPS pricing rule and SPM rate card. 【0270】 Figure 24 shows an example of a cloud infrastructure architecture 700 that provides rate card migration according to an embodiment. 【0271】 According to one embodiment, Figure 24 generally illustrates how the SPM rate card 701 is transitioned to the SPS rate card 703. Overall, the SPS pricing model uses a single overall base price for the product, which can be synchronized from the product pricing hub to the SPS system. 【0272】 In version 702, historical data from the start of SPM is synchronized with SPS. In step 704, the system inserts the product and price list data into the SPS system. 【0273】 In 706, the legacy (SPM) rate card or subscription is delivered to the migration service (RC migrator) 707, or read by the migration service (RC migrator) 707 in 706. 【0274】 In step 708, the system determines a base price that applies to a contract rate type subscription, as determined by a configure, price, quote (CPQ) system or application 705, for example, which helps a seller configure a product or service with a quote to meet customer requirements. 【0275】 According to the embodiment, SPS requires the subscription's quoteConfigureDate to determine the base price applicable to subscriptions of type CONTRACT_RATE. SPS retrieves this quoteConfigureDate information from the CPQ / source channel for all subscriptions. The SPS system generates a price list item on a rate card for a given quoteConfigureDate, priceChangePolicy combination. This price list item on the rate card includes only the base price without any discounts. Furthermore, SPS rate cards are common to subscriptions that have the same quoteConfigureDate and priceChangePolicy. 【0276】 In step 710, the rate card migrator 707 creates an order in the cloud subscription service, manager, or component, and in step 712, the cloud subscription service, manager, or component creates subscription pricing configuration information in the SPS system. The subscription pricing configuration includes the subscription's quotation date and price list change policy information. According to the embodiment, the SPS can generate rate cards based on this information. 【0277】 According to one embodiment, in 714, the system creates pricing rules in accordance with the discounts listed on the SPM rate card for a particular subscription, and in addition, creates additional pricing rules based on the SPS rate card and pricing rules and delivers them to the SPS. 【0278】 According to one embodiment, a validator 709 is provided for reading an SPM rate card at 716 and an SPS rate card at 718 in order to perform a comparison and verify the validity of the result of the rate card migration from SPM to SPS. 【0279】 RC Migrator Process According to one embodiment, the rate card transfer service or process operates according to a two-step method for creating pricing rules. 【0280】 Phase 1: SPM RC discount In the first stage, the system reads the SPM rate card for each subscription and generates a discount. Internally, the system performs the following steps to generate a discount for a particular subscription: 1. Obtain the subscription creation date in SPM. 2. Read all rate cards from the SPM for the subscription creation date that have a reason code that is empty. These rate cards must exactly match the rate cards from the quotes created by the sales representative. 3. These rate cards include the unitPriceDiscount (discretionaryDiscount) required for the rate card transition service or process to generate pricing rules in SPS. a. Group all products in similar discount categories. b. Determine the minimum discount in each group. c. Create pricing rules using the minimum discount value for the discount category of this group. d. Subtract the category discount from each product within the group. If the remaining discount is greater than 0, create a product-specific pricing rule. 4. Use the standard discount rate from SPM (usually the mapping of (DiscountCategory + CommitmentModel (Annual, Monthly, Quarterly) → Discount Percentage)) to create pricing rules for ALL_SUBSCRIPTIONS. 5. Retrieve the SPS rate cards and pricing rules created from the SPS system. 6. Perform a validity check on the SPM unitPrice of all rate cards for a specific subscription from order creation to the present. 7. Identify all SPM rate cards where the final price does not match between SPS and SPM. Execute the second stage for all such rules. 【0281】 Second Stage: Additional Discounts In the second stage, the rate card transition service or process generates additional pricing rules to match the final unitPrice between the SPM model and the SPS model by performing the following tasks. 1. Read all non-matching rate cards from the first stage in order of creation. 2. For each non-matching rate card, the following sub-steps should be executed. a. Determine the difference between the unit price of the SPM RC and SPS (rate card - all discounts applied to the product). b. Create pricing rules for current products and subscriptions using the differences identified in step 2.a. c. These additional pricing rules should have start and end dates that are the same as the corresponding mismatched SPM rate cards. 【0282】 According to one embodiment, for example, there are situations where a rate card transfer service or process needs to handle the start and end dates of these pricing rules. 【0283】 Generalized pricing rules should be applicable according to the start and end dates of the SPM subscription. 【0284】 When a subscription is renewed or replenished, the start and end dates of those pricing rules are populated from the SPM subscription, so the previous set of rules should be processed automatically. 【0285】 In cases of non-matching situations, those pricing rules should have the same start and end dates as the corresponding non-matching rate cards. 【0286】 Transition from conventional rate cards Figure 25 is a flowchart illustrating a method 720 for migrating a conventional rate card to a cloud infrastructure environment, according to an embodiment. 【0287】 As shown in Figure 25, according to the embodiment, in 722, method 720 includes identifying a plurality of usage rates corresponding to a plurality of cloud computing services, and the values of the plurality of usage rates are modifiable over time for use with mutable and semi-immutable data structures. According to the embodiment, identifying a plurality of usage rates in 722 includes identifying a plurality of usage rates, and the values including the prices of the plurality of usage rates are modifiable over time for use with mutable and semi-immutable data structures. 【0288】 According to one embodiment, the mutable data structure refers to a first set of values for a first set of corresponding usage rates among a plurality of usage rates. According to one embodiment, the mutable data structure is modified in response to a determination that a change has occurred in at least one value among the first set of usage rates. According to one embodiment, the mutable data structure is associated with a first plurality of belongings in a one-to-many relationship. 【0289】 According to one embodiment, the semi-immutable data structure refers to a second set of values for a second set of corresponding usage rates among a plurality of usage rates. According to one embodiment, the semi-immutable data structure remains unchanged in response to a determination that a change has occurred in any of the values in the second set of usage rates. According to one embodiment, the semi-immutable data structure is associated with a second plurality of belongings in a set of one-to-many relationships. 【0290】 Continuing to refer to Figure 25, in 724, method 720 includes receiving a new membership related to one of a plurality of cloud computing services. According to the embodiment, receiving a new membership in 724 includes receiving a new membership that includes a new subscription related to one of a plurality of cloud computing services. 【0291】 In 726, method 720 includes identifying a legacy usage rate value corresponding to access to one of several cloud computing services through a new affiliation. 【0292】 In 728, method 720 further includes creating a rule based on a conventional usage rate and one selected from a plurality of usage rates. According to an embodiment, creating a rule in 728 includes creating a pricing / discount rule based on a conventional usage rate and one selected from a plurality of usage rates. 【0293】 In 730, method 720 further includes generating one of a new mutable data structure or a new semi-immutable data structure based on the newly received affiliation. According to the embodiment, the new mutable data structure or semi-immutable data structure refers to a determined value of the corresponding usage rate for access to one of a plurality of cloud computing services. According to the embodiment, the determined value is based on a rule and a selected one of a plurality of usage rates. 【0294】 Figure 26 is a flowchart illustrating a method 740 for verifying the validity of a migrated conventional rate card according to an embodiment. 【0295】 As shown in Figure 26, according to the embodiment, validating the subscription migration includes validating the determined value referenced in the new data structure by receiving a conventional value associated with the usage of one of the multiple cloud computing services in 741 and comparing it with a migrated usage value associated with the usage of one of the multiple cloud computing services in 742. 【0296】 According to one embodiment, the method 740 for validating a migrated conventional rate card includes validating the determined value referenced in the new data structure by comparing the conventional value associated with the usage of one of the multiple cloud computing services, by applying the conventional usage rate, with the migrated usage value associated with the usage of one of the multiple cloud computing services, by applying the determined value. 【0297】 Figure 27 is a flowchart illustrating Subscription Migration Method 750 in the context of an Operator Realm. 【0298】 As shown in Figure 27, according to the embodiment, in 751, instructions are received regarding the characteristics of the legacy subscription of the computing service deployed to the cloud computing service. In 752, a new mutable or semi-immutable data structure is generated based on the characteristics of the legacy subscription of the new affiliation to multiple cloud computing services deployed to the cloud computing service. 【0299】 In 752, according to the embodiment, the new mutable or semi-immutable data structure is generated based on the characteristics of a traditional subscription, which includes an operator realm associated with the service usage of the new affiliation for multiple cloud computing services deployed in the cloud computing service. 【0300】 According to various embodiments, the teachings herein may be implemented using one or more computers, computing devices, machines, or microprocessors, including one or more processors, memory, and / or computer-readable storage media, programmed in accordance with the teachings herein. Appropriate software coding can be readily prepared by a skilled programmer based on the teachings herein, as will be apparent to those skilled in the art of software technology. 【0301】 In some embodiments, the teachings herein may include a computer program product which is a non-temporary computer-readable storage medium containing instructions that can be used to program a computer to perform any of the processes of these teachings. Examples of such storage media may include, but are not limited to, hard disk drives, hard disks, fixed disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, or other types of storage media or devices suitable for the non-temporary storage of instructions and / or data. 【0302】 The foregoing description is provided for illustrative and explanatory purposes only. It is not intended to be exhaustive or to limit the scope of protection to the exact form disclosed. Further modifications and variations will be apparent to those skilled in the art. 【0303】 The embodiments have been selected and described to best illustrate the teaching principles and their practical application herein, thereby enabling those skilled in the art to understand the various embodiments, along with various modifications suitable for specific intended uses. This scope is intended to be defined by the following claims and their equivalents.
Claims
[Claim 1] It is a method, This includes identifying multiple usage rates corresponding to multiple cloud computing services, wherein the values of the multiple usage rates are changeable over time. The method further includes generating a mutable data structure that references a first set of values for a first set of corresponding usage rates among the plurality of usage rates, wherein the mutable data structure is modified in response to determining that a change has occurred in at least one value of the first set of usage rates. The method further includes generating a semi-immutable data structure that references a second set of values for a second set of corresponding usage rates among the plurality of usage rates, wherein the semi-immutable data structure remains unchanged in response to a determination that a change has occurred in any of the values in the second set of usage rates. The method involves associating the mutable data structure with a first group of belongings in a first one-to-many relationship, The aforementioned semi-invariant data structure is associated with a second set of belongings in a second one-to-many relationship, Based on the first set of usage rates, referencing the modifiable data structure to determine each first set of values applicable to the service usage associated with the usage of the multiple cloud computing services by the first multiple affiliations, A method further comprising referring to the semi-immutable data structure to determine, based on the second set of usage rates, a second set of values applicable to the service usage associated with the second plurality of affiliations of the plurality of cloud computing services. [Claim 2] Identifying a first updated value or change from the first set of the aforementioned usage rates, The method according to claim 1, further comprising modifying the mutable data structure to add an updated usage rate corresponding to one of the first sets of usage rates, wherein the updated usage rate in the modified mutable data structure refers to the updated value. [Claim 3] Identifying one updated value or change in the first of the second set of the aforementioned usage rates, The method according to claim 1, further comprising generating a new semiimmutable data structure which includes the semiimmutable data structure to which an updated usage rate corresponding to one of the first of a second set of usage rates is added, wherein the updated usage rate in the new semiimmutable data structure refers to the updated value. [Claim 4] The aforementioned method, To identify new usage rates for new cloud computing services that are not included in the aforementioned multiple cloud computing services, The further includes modifying the mutable data structure to add the new usage rate corresponding to the usage of the new cloud computing service, wherein the new usage rate in the modified mutable data structure refers to the value of the new usage rate for the new cloud computing service. The method further includes generating a new semi-immutable data structure which includes an ACP rate card for the semi-immutable data structure to which the new usage rate corresponding to the usage of the new cloud computing service is added, wherein the new usage rate in the new semi-immutable data structure refers to the value of the new usage rate for the new cloud computing service. The method involves referring to the modified mutable data structure in order to determine the value of the new usage rate for the new cloud computing service with respect to the service usage associated with the use of the new cloud computing service by the first plurality of affiliations, The method according to claim 1, further comprising referring to the semi-immutable data structure to determine the value of the new usage rate of the new cloud computing service with respect to the service usage associated with the use of the new cloud computing service by the first plurality of affiliations. [Claim 5] Receiving a new affiliation or subscription related to one of the aforementioned multiple cloud computing services, Determining whether the usage rate value of access to one of the aforementioned multiple cloud computing services due to the new affiliation includes one or more of the values from the first or second set of usage rates, Associating the new affiliation with the mutable data structure based on the value of the usage rate for the new affiliation's access to one of the multiple cloud computing services, which includes one or more of the first set of usage rates, or The method according to claim 1, further comprising associating the new affiliation with the semi-immutable data structure based on the usage rate of the new affiliation's access to one of the multiple cloud computing services, which includes one or more of the second set of usage rates. [Claim 6] Based on the characteristics of the first subscription associated with the service usage of the first belonging to the plurality of cloud computing services deployed on the cloud computing infrastructure, it is determined that the first belonging or subscription among the first plurality of belongings is associated with the mutable data structure, The method according to claim 1, further comprising determining that a second membership or subscription among the multiple second memberships is associated with the semi-immutable data structure, based on the characteristics of the second subscription of the second membership to the multiple cloud computing services deployed on the cloud computing infrastructure. [Claim 7] Receiving a new affiliation related to one of the aforementioned multiple cloud computing services, Determining whether the usage rate value of access to one of the aforementioned multiple cloud computing services due to the new affiliation includes one or more of the first or second sets of usage rates, The method according to claim 1, further comprising generating a new semi-immutable data structure based on the determined usage rate of access by the new affiliation to one of the plurality of cloud computing services, which is neither the first set nor the second set of usage rates. [Claim 8] One or more computers, each equipped with one or more microprocessors, A cloud environment running on one or more computers, Multiple services deployed within one or more realms of the aforementioned cloud environment, A system comprising a rate card service that can operate within a realm of the cloud environment controlled by a cloud infrastructure provider, wherein the rate card service is It is capable of identifying multiple usage rates corresponding to multiple cloud computing services, and the values of these multiple usage rates can be changed over time. The rate card service is further operable to generate a mutable data structure that references a first set of values for a first set of corresponding usage rates among the plurality of usage rates, the mutable data structure is modified in response to determining that a change has occurred in at least one value of the first set of usage rates. The rate card service is further operable to generate a semi-immutable data structure that references a second set of values for a second set of corresponding usage rates among the plurality of usage rates, the semi-immutable data structure remains unchanged in response to a determination that a change has occurred in any of the values in the second set of usage rates. The rate card service associates the mutable data structure with a first number of affiliations in a first one-to-many relationship. The aforementioned semi-invariant data structure is associated with a second set of belongings in a second one-to-many relationship, Based on the first set of usage rates, the modifiable data structure is referenced to determine each first set of values applicable to the service usage associated with the usage of the multiple cloud computing services by the first multiple affiliations, A system that can further operate to refer to the semi-immutable data structure in order to determine, based on the second set of usage rates, a second set of values applicable to each of the service usage associated with the second plurality of affiliations of the plurality of cloud computing services. [Claim 9] The aforementioned rate card service is Identify a first updated value or change from the first set of the aforementioned usage rates, The system according to claim 8, further operable to modify the mutable data structure to add an updated usage rate corresponding to one of the first sets of usage rates, wherein the updated usage rate in the modified mutable data structure refers to the updated value. [Claim 10] The aforementioned rate card service is For one of the first expired values in the second set of the aforementioned usage rates, identify the updated value. The system according to claim 8, further operable to generate a new semiimmutable data structure which includes the semiimmutable data structure to which an updated usage rate corresponding to one of the first of a second set of usage rates is added, wherein the updated usage rate in the new semiimmutable data structure refers to the updated value. [Claim 11] The aforementioned rate card service is Identify new usage rates for new cloud computing services that are not included in the aforementioned multiple cloud computing services, The modifiable data structure is further operable to modify the modifiable data structure to add the new usage rate corresponding to the usage of the new cloud computing service, wherein the new usage rate in the modified modifiable data structure refers to the value of the new usage rate for the new cloud computing service. The rate card service is further operable to generate a new semi-immutable data structure, which includes an ACP rate card for the semi-immutable data structure, to which the new usage rate corresponding to the usage of the new cloud computing service is added, wherein the new usage rate in the new semi-immutable data structure refers to the value of the new usage rate for the new cloud computing service. The rate card service refers to the modified mutable data structure in order to determine the value of the new usage rate for the new cloud computing service with respect to the service usage associated with the use of the new cloud computing service by the first plurality of affiliations, The system according to claim 8, further operable to refer to the semi-immutable data structure to determine the value of the new usage rate of the new cloud computing service with respect to the service usage associated with the use of the new cloud computing service by the first plurality of affiliations. [Claim 12] The aforementioned rate card service is Upon receiving a new affiliation or subscription related to one of the aforementioned multiple cloud computing services, Determine whether the usage rate value for access to one of the aforementioned cloud computing services by the new affiliation includes one or more of the values from the first or second set of usage rates. Associating the new affiliation with the mutable data structure based on the value of the usage rate for the new affiliation's access to one of the multiple cloud computing services, which includes one or more of the first set of usage rates, or The system according to claim 8, further operable to associate the new affiliation with the semi-immutable data structure based on the usage rate of the new affiliation's access to one of the multiple cloud computing services, which includes one or more of the second set of usage rates. [Claim 13] The aforementioned rate card service is Based on the characteristics of the first subscription of the first belonging to the plurality of cloud computing services deployed on the cloud computing infrastructure, it is determined that the first belonging among the first plurality of belongings is associated with the mutable data structure. The system according to claim 8, further operable to determine that the second of the multiple second memberships is associated with the semi-immutable data structure, based on the characteristics of the second subscription of the second membership to the multiple cloud computing services deployed on the cloud computing infrastructure. [Claim 14] The aforementioned rate card service is Upon receiving a new affiliation related to one of the aforementioned multiple cloud computing services, Determine whether the usage rate value for access to one of the aforementioned multiple cloud computing services due to the new affiliation includes one or more of the first or second sets of usage rates. The system according to claim 8, further operable to generate a new semi-immutable data structure based on the determined usage rate of access by the new affiliation to one of the plurality of cloud computing services, which is neither the first set nor the second set of usage rates. [Claim 15] A non-temporary computer-readable storage medium containing instructions, wherein, when executed in a computer system including a processor, the instructions cause the computer to execute a method, and the method is This includes identifying multiple usage rates corresponding to multiple cloud computing services, wherein the values of the multiple usage rates are changeable over time. The method further includes generating a mutable data structure that references a first set of values for a first set of corresponding usage rates among the plurality of usage rates, wherein the mutable data structure is modified in response to determining that a change has occurred in at least one value of the first set of usage rates. The method further includes generating a semi-immutable data structure that references a second set of values for a second set of corresponding usage rates among the plurality of usage rates, wherein the semi-immutable data structure remains unchanged in response to a determination that a change has occurred in any of the values in the second set of usage rates. The method involves associating the mutable data structure with a first group of belongings in a first one-to-many relationship, The aforementioned semi-invariant data structure is associated with a second set of belongings in a second one-to-many relationship, Based on the first set of usage rates, referencing the modifiable data structure to determine each first set of values applicable to the service usage associated with the usage of the multiple cloud computing services by the first multiple affiliations, A non-temporary computer-readable storage medium, further comprising referring to the semi-immutable data structure to determine, based on a second set of usage rates, a second set of values applicable to the service usage associated with the second plurality of affiliations of the plurality of cloud computing services.