Cloud product data processing method and device, electronic equipment and readable storage medium

CN115730019BActive Publication Date: 2026-09-18ALIBABA CLOUD COMPUTING CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211406177.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-10
Publication Date
2026-09-18
Estimated Expiration
2042-11-10

AI Technical Summary

Technical Problem

[0004]本申请实施例提供了云产品数据处理方法、装置、电子设备和可读存储介质,以至少解决现有技术中云产品成本评估依靠人工进行所导致的效率低以及准确率难以保证的问题

Benefits of technology

[0009] In this embodiment, the following methods are employed: obtaining the specifications of a first cloud product used by a user, wherein the specifications indicate the attributes of the cloud resources used by the cloud product; obtaining the amount of cloud resources used by the user when using the first cloud product; searching for a second cloud product among the cloud products provided by the cloud vendor that matches the specifications of the first cloud product, wherein the second cloud product can be used to replace the first cloud product; calculating data under the condition that the second cloud product is used and generates the stated usage, and displaying the data, wherein the data indicates the information required by the user after using the second cloud product. This application solves the problems of low efficiency and difficulty in guaranteeing accuracy caused by relying on manual cloud product cost assessment in the prior art, thereby improving the efficiency and accuracy of cloud product cost assessment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115730019B_ABST
    Figure CN115730019B_ABST
Patent Text Reader

Abstract

The application discloses a cloud product data processing method and device, electronic equipment and a readable storage medium. The method comprises the following steps: acquiring the specification of a first cloud product used by a user, wherein the specification is used for indicating the attribute of the cloud resource used by the cloud product; acquiring the use amount of the cloud resource generated when the user uses the first cloud product; searching for a second cloud product matching the specification of the first cloud product in the cloud product provided by a cloud manufacturer, wherein the second cloud product can be used to replace the first cloud product; calculating data under the condition that the second cloud product is used and generates the use amount, and displaying the data, wherein the data is used for indicating the information required by the user after using the second cloud product. The application solves the problems of low efficiency and difficult-to-ensure accuracy caused by manual cloud product cost evaluation in the prior art, and further improves the efficiency and accuracy of cloud product cost evaluation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of cloud technology, and more specifically, to cloud product data processing methods, apparatus, electronic devices, and readable storage media. Background Technology

[0002] With the continuous development of cloud computing technology, cloud products and applications based on cloud products are also increasing. Cloud products refer to cloud-related products such as cloud terminal services, computing cloud platforms, industry cloud platforms, social cloud platforms, storage cloud platforms, transaction cloud platforms, and testing cloud platforms. These cloud products all utilize cloud resources and provide cloud servers. Cloud product pricing methods include pay-as-you-go, where users pay based on actual usage. For example, a billing order is generated hourly based on the user's cloud product instance configuration, and the corresponding amount is deducted from the account balance.

[0003] Cloud products used by users typically come from cloud service providers. Users may need to switch cloud products or service providers, and cost is a crucial factor in this decision. Currently, cloud product cost assessment involves multiple stages, and the entire assessment process is currently completed manually offline, resulting in a lengthy and inefficient process. Furthermore, cloud product cost assessment requires a high level of expertise; relying solely on manual assessment means the accuracy depends heavily on the assessor's professional capabilities, making it difficult to guarantee the accuracy of cloud product cost assessments. Summary of the Invention

[0004] This application provides cloud product data processing methods, apparatus, electronic devices, and readable storage media to at least solve the problems of low efficiency and difficulty in guaranteeing accuracy caused by relying on manual cloud product cost assessment in the prior art.

[0005] According to one aspect of this application, a cloud product data processing method is provided, wherein the cloud product is a product that uses cloud resources and provides cloud services, the method comprising: obtaining the specifications of a first cloud product used by a user, wherein the specifications are used to indicate the attributes of the cloud resources used by the cloud product; obtaining the amount of cloud resources used by the user when using the first cloud product; searching for a second cloud product among cloud products provided by a cloud vendor that matches the specifications of the first cloud product, wherein the second cloud product can be used to replace the first cloud product; calculating data under the condition that the second cloud product is used and generates the usage, and displaying the data, wherein the data is used to indicate the information required by the user after using the second cloud product.

[0006] According to another aspect of this application, a cloud product data processing apparatus is also provided. The cloud product is a product that uses cloud resources and provides cloud services. The apparatus includes: a first acquisition module, configured to acquire the specifications of a first cloud product used by a user, wherein the specifications are used to indicate the attributes of the cloud resources used by the cloud product; a second acquisition module, configured to acquire the amount of cloud resources used by the user when using the first cloud product; a search module, configured to search for a second cloud product among cloud products provided by a cloud vendor that matches the specifications of the first cloud product, wherein the second cloud product can be used to replace the first cloud product; and a processing module, configured to calculate data under the condition that the second cloud product is used and generates the usage, and display the data, wherein the data is used to indicate the information that the user needs to pay after using the second cloud product.

[0007] According to another aspect of this application, an electronic device is also provided, including a memory and a processor; wherein the memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the above-described method steps.

[0008] According to another aspect of this application, a readable storage medium is also provided, on which computer instructions are stored, wherein the computer instructions, when executed by a processor, implement the above-described method steps.

[0009] In this embodiment, the following methods are employed: obtaining the specifications of a first cloud product used by a user, wherein the specifications indicate the attributes of the cloud resources used by the cloud product; obtaining the amount of cloud resources used by the user when using the first cloud product; searching for a second cloud product among the cloud products provided by the cloud vendor that matches the specifications of the first cloud product, wherein the second cloud product can be used to replace the first cloud product; calculating data under the condition that the second cloud product is used and generates the stated usage, and displaying the data, wherein the data indicates the information required by the user after using the second cloud product. This application solves the problems of low efficiency and difficulty in guaranteeing accuracy caused by relying on manual cloud product cost assessment in the prior art, thereby improving the efficiency and accuracy of cloud product cost assessment. Attached Figure Description

[0010] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:

[0011] Figure 1 This is a schematic diagram illustrating a user selecting a cloud product according to an embodiment of this application;

[0012] Figure 2This is a flowchart of a cloud product data processing method according to an embodiment of this application;

[0013] Figure 3 This is a structural block diagram of a cloud product data processing device according to an embodiment of this application;

[0014] Figure 4 This is an interface diagram for cloud product evaluation according to an embodiment of this application;

[0015] Figure 5 This is an interface diagram of creating a task according to an embodiment of this application; and,

[0016] Figure 6 This is a schematic diagram of the interface for resource matching according to an embodiment of this application. Detailed Implementation

[0017] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.

[0018] It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.

[0019] First, the technical data involved in the following embodiments will be explained.

[0020] Euclidean distance

[0021] In mathematics, the Euclidean metric is the "ordinary" (i.e., straight-line) distance between two points in Euclidean space. The Euclidean metric (also called Euclidean distance) is a commonly used definition of distance, referring to the true distance between two points in m-dimensional space, or the natural length of a vector (i.e., the distance from that point to the origin). In two-dimensional and three-dimensional space, the Euclidean distance is simply the actual distance between two points.

[0022] Relational database services

[0023] Relational Database Service (RDS) is a ready-to-use, stable, reliable, and scalable online database service. It features multiple security measures, a robust performance architecture, and professional database backup, recovery, and optimization solutions.

[0024] cloud server

[0025] A cloud server is a server created using cloud resources. Users can create cloud servers according to their needs. For example, they can make different choices regarding the size of the storage space, the number of virtual processor cores, and the amount of memory to create a cloud server that meets their specific requirements.

[0026] cloud products

[0027] Cloud products can be understood as a type of cloud service, provided based on cloud resources. These cloud resources can be real physical resources, such as storage space, or virtual resources built upon physical resources, such as virtualized central processing units (vCPUs). In the following embodiments, any resource that can be used by cloud products is referred to as a cloud resource. Therefore, the cloud products involved in the following embodiments are products that use cloud resources and provide cloud services. Common cloud products typically provide corresponding cloud services based on the internet. For example, cloud products can provide streaming media services, log services, table storage services, database services, big data development and governance services, big data computing services, etc. From an application scenario perspective, cloud products can provide e-commerce services, payment services, travel services, internet data center operation services, etc.

[0028] Cloud products are provided by cloud vendors (also known as cloud service providers), and users can choose the cloud products that meet their needs from a variety of cloud products offered by cloud vendors. Figure 1 This is a schematic diagram illustrating a user selecting a cloud product according to an embodiment of this application, such as... Figure 1 As shown, a cloud provider can establish a web server that users can access through their terminal devices. This web server can then display the cloud products offered by the provider to users via web pages. After a user selects a cloud product, that product uses cloud resources to provide the corresponding cloud services. The cloud provider can then charge users for using its cloud products. Figure 1In cloud computing, cloud providers can use billing servers for billing. During the billing process, cloud providers can set several billing items for a cloud product and write billing rules related to these items. Then, they charge the user based on these billing rules and the user's usage data (referred to as usage). This usage data can include the usage of various cloud resources, and billing is then based on the usage of each resource and the corresponding billing rules. For example, storage services can be billed in gigabytes (GB), and computing services can be billed based on the number of processor cores used. It should be noted that usage can also include usage time, which facilitates billing based on usage time. For example, cloud databases are billed hourly, cloud servers are billed half-days, and named entity recognition services are billed daily. For cloud products billed by time, the time the user uses the cloud product is directly used as usage data.

[0029] Each cloud product has its own specifications, which refer to the attributes of the cloud resources used by the cloud product. Taking a cloud server as an example, users can choose different options such as storage space size, number of virtual processor cores, and memory size to create a cloud server that meets their needs. The cloud server created by the user can be called an instance. The cloud resources used by this instance include basic components such as vCPU, memory, operating system, network, and disk. Therefore, the specifications of this instance can include the number of vCPU cores, memory size, and network performance. Different cloud products have different specifications, and the billing methods for different specifications may also differ.

[0030] Even for cloud products of the same specifications, billing rules can differ depending on the user's nature. For example, billing rules may differ between individual and enterprise users, as well as between users in different regions. Furthermore, the price of cloud products purchased at different times may vary. These price factors are one of the reasons why users switch cloud products. In addition, there are multiple cloud providers offering cloud products, and the prices of their cloud products also differ. Based on factors such as price or service quality, users may migrate from one cloud provider to another. Whether switching to different cloud products from the same provider or switching to a different cloud provider, the cost of cloud products is a crucial factor for users. In the following implementation, the cost incurred in switching cloud products is referred to as the Total Cost of Ownership (TCO).

[0031] Total Cost of Ownership (TCO) assessment is a crucial step for users switching cloud products, especially when migrating from one cloud provider to another. TCO assessment involves researching user cloud resource usage, selecting cloud products with matching specifications, and calculating resource usage and costs. Currently, TCO cost assessment relies entirely on manual work, resulting in a lengthy and inefficient assessment process. Furthermore, it requires a high level of expertise, making it difficult to guarantee the accuracy of manual assessments.

[0032] The following implementation provides a cloud product data processing method. Figure 2 This is a flowchart of a cloud product processing method according to an embodiment of this application, such as... Figure 2 As shown below, Figure 2 The methods and steps involved will be explained.

[0033] Step S202: Obtain the specifications of the first cloud product used by the user, wherein the specifications are used to indicate the attributes of the cloud resources used by the cloud product.

[0034] Cloud products utilize cloud resources to provide corresponding cloud services. Cloud vendors pre-configure a range of cloud products for users to choose from. These cloud products use different cloud resources depending on the user's needs. To differentiate these cloud products, specifications are defined. For example, for database services, specification A includes 500GB of storage, 4 virtual CPU cores, and 1GB of memory, while specification B includes 800GB of storage, 4 virtual CPU cores, and 1GB of memory. This demonstrates that even a single difference in cloud resource attributes can result in different specifications for cloud products. Furthermore, different types of databases can also be classified as different specifications for cloud products. For instance, specifications C and D may have the same storage space, number of virtual CPU cores, and memory size, but specification C supports database type one, while specification D supports database type two. After a user selects a cloud product, the cloud vendor records its specifications in detail. Users can also obtain the specifications of their chosen cloud product through the vendor's provided interface.

[0035] Step S204: Obtain the amount of cloud resources used by the user when using the first cloud product.

[0036] After a user selects a cloud product, the cloud provider will bill them based on their usage. For example, the cloud product of specification A mentioned above includes 500GB of storage space, 4 virtual CPU cores, and 1GB of memory. Billing for this specification is based on usage time, such as the number of hours or days used. This represents the user's usage of cloud resources. In another example, a cloud product offering a database service of specification E is provided. This product has 4 virtual CPU cores and 1GB of memory. Its storage space is not fixed and is billed based on the amount of storage space used, such as N yuan per GB used. In this example, the amount of storage space used by the user represents the cloud resource usage incurred when the cloud product is used.

[0037] Step S206: Find a second cloud product among the cloud products provided by the cloud vendor that matches the specifications of the first cloud product, wherein the second cloud product can be used to replace the first cloud product.

[0038] In this step, users may need to migrate from one cloud provider to another, or from one cloud product to another. In this case, it's necessary to find a cloud product that can replace the first one offered by the cloud provider. Since the specifications of a cloud product directly reflect its characteristics, searching for a second cloud product based on its specifications is more accurate. Because the second cloud product is intended to replace the first, it's considered that their specifications match if the second cloud product can replace the first. The specifications of the second cloud product don't necessarily have to be exactly the same as the first; for example, the attributes of individual cloud resources in the second cloud product's specifications may be higher or better than those in the first cloud product.

[0039] Step S208: Calculate data under the condition that the second cloud product is used and generates the usage, and display the data. The data is used to indicate the information that the user needs to pay after using the second cloud product. It should be noted that when a user uses the second cloud product and generates the usage, the user needs to pay a certain cost to the cloud provider. The data here can be understood as cost. In the following embodiments, data can also be understood as cost; for example, the first data is the first cost, and the second data is the second cost.

[0040] After acquiring the second cloud product, a quote for it can be obtained. The cost of using the second cloud product is then calculated based on the user's usage of the first cloud product. Therefore, this process changes the manual cost assessment method, allowing for the search for a matching cloud product based on the original one and using actual usage to calculate costs. This solves the problems of low efficiency and inaccuracy caused by manual cost assessment in existing technologies, improving the efficiency and accuracy of cloud product cost assessment.

[0041] The above steps involve the user's cloud resource usage when using the first cloud product. If the user is switching cloud products within the same cloud provider, the usage of the first cloud product can be directly obtained through the interface provided by that cloud provider. However, if the user is migrating from one cloud provider to another (i.e., the first cloud product is provided by the first cloud provider, and the second cloud product is provided by the second cloud provider), the user's usage when using the first cloud product with the first cloud provider may not be directly obtainable through the second cloud provider.

[0042] In one alternative implementation, the evaluation is based on a resource snapshot taken at a specific point in time. This snapshot captures the amount of various cloud resources used by the first cloud product at that exact moment. For example, if the first cloud product uses 7 Mbps of bandwidth at 0:00, this 7 Mbps is taken as the network resource usage, and the cost of switching to the second cloud product is then evaluated based on this usage. However, this evaluation method doesn't consider that resource usage is not constant but fluctuates over time. Therefore, simply considering a snapshot at a single point in time will result in a significant deviation from the actual usage. To address this issue, multiple time points can be selected, such as obtaining resource snapshots at hourly intervals. The average of the resource usage obtained at each time point is then used as the user's resource usage for the first cloud product. Compared to using a single time point, this method of averaging can improve accuracy to some extent. However, if each time point happens to be a time point with relatively high or low resource usage, there will be a significant deviation between the resource usage obtained in this way and the actual resource usage consumed.

[0043] To address the discrepancy between the resource usage at a given time point or the average resource usage and the actual resource usage of the cloud product, and considering that each cloud vendor needs to provide users with detailed bills and cloud resource prices, an optional implementation can use the bill to calculate the cloud resource usage incurred by the user when using the first cloud product. The cloud vendor will also provide an interface to obtain the bill, through which the user's cost of using the first cloud product (i.e., the first cost incurred by the user) can be obtained, along with the cloud resource price. The cloud resource usage can then be calculated using the first cost and the cloud resource price. Specifically, in this optional implementation, obtaining the cloud resource usage incurred by the user when using the first cloud product includes: obtaining the first cost incurred by the user when using the first cloud product; calculating the cloud resource usage incurred when using the first cloud product based on the first cost and the cloud resource data of the first cloud product; wherein, the cloud resource data of the first cloud product indicates the information that the user needs to pay for each unit of cloud resource usage, i.e., the price of the cloud resources of the first cloud product. For example, the first cloud product is a network storage service. This network storage service includes two types of cloud resources: the first is storage space, which is billed in GB (gigabytes) at a price of X yuan per GB; the second is network traffic, which is billed in megabytes (MB) at a price of Y yuan per MB. The bill incurred when using this network storage service is divided into two parts: the first part is the storage space bill: A yuan, and the second part is the network traffic bill: B yuan. Therefore, the storage space usage of the first cloud product is A / X, in GB; the network traffic usage of the first cloud product is B / Y, in MB.

[0044] The bill also provides more precise billing rules. Taking the first cloud product as an example of network storage service, the network traffic bill is divided into two parts: the first part is the bill from 0:00 to 7:59, priced at B1 yuan, with a price of Y1 yuan per MB; the second part is the bill from 8:00 to 23:59, priced at B2 yuan, with a price of Y2 yuan per MB. This bill not only provides the specific network traffic within the two time periods but also reveals the different billing rules for each period. These rules can serve as a reference when choosing a second cloud product. In another example, the user uses a cloud server as the first cloud product, which is billed based on usage time. The bill is divided into two parts: the first part is the bill from 8:00 to 9:00, priced at C1 yuan; the second part is the bill from 9:00 to 10:00, priced at C2 yuan. Analysis of the bills reveals that both bills show usage for one hour, but the costs differ. The cloud server specifications can be determined from the bills: between 8:00 and 9:00, one virtual CPU core was used, while between 9:00 and 10:00, two virtual CPU cores were used. This difference in cloud server specifications leads to the cost discrepancy. Therefore, the bills can provide further information on the cloud product's specifications. In the above optional implementation, the user bill serves as a starting point, reflecting the user's actual resource usage across various dimensions. Furthermore, combining resource configuration information can supplement the product's specifications, especially those crucial to pricing. By combining product specifications with usage data, the cost of migrating to a second cloud product can be more accurately assessed.

[0045] To facilitate users' viewing of cost changes after migrating from a first cloud product to a second cloud product, the first cost can be compared with the second cost under the condition that the second cloud product is used and generates the specified usage, and then the comparison result can be displayed. This optional implementation allows users to clearly see cost changes. A common application scenario for this optional implementation is when users need to switch cloud providers, i.e., users want to migrate from a first cloud product of a first cloud provider to a second cloud product of a second cloud provider. The second cloud provider can provide a user interface through which users can input information about the first cloud product or an interface for obtaining that information, and then find a second cloud product that matches the first cloud product. Since the second cloud provider prefers users to use their own cloud products, if the cost of the second cloud product is higher than that of the first cloud product, it is not conducive to the user's decision to migrate. In this case, if the cost of the found second cloud product is higher than the first cost, other cloud products with specifications matching the first cloud product can be searched again, and the cost under the condition that the other cloud products are used and generate the specified usage can be calculated; until a third cloud product with a cost lower than the first cost under the condition that it is used and generates the specified usage is found; the cost of the third cloud product is then displayed.

[0046] Besides price advantages, the quality of cloud products is also a crucial factor for users when choosing cloud products. The quality of a cloud product is directly reflected in the attributes of various cloud resources in its specifications. Therefore, the attributes of various cloud resources in the specifications of the second cloud product should be the same as or similar to those in the specifications of the first cloud product. In one optional implementation, finding a second cloud product that matches the specifications of the first cloud product may include the following steps: obtaining the attributes of various cloud resources in the specifications of the first cloud product; finding a cloud product whose attributes are all the same or most similar to those in the specifications of the first cloud product; and using the found cloud product as the second cloud product that matches the specifications of the first cloud product. It should be noted that, to attract users, as a preferred option, a cloud product with some or all of its resource attributes higher than the first cloud product can be recommended as the second cloud product. After considering price and quality advantages, the resource configuration should first be the same as or slightly higher than the user's current configuration. In fact, if the resource configuration is met, products with competitive pricing can be recommended. In this way, corresponding products for each type of cloud product are found among the second cloud vendors, and combined with resource usage, a better purchasing method can be provided to help users reduce costs.

[0047] There are many ways to determine whether the similarity of various cloud resource attributes of the first cloud product and the second cloud product meets the requirements. In one optional implementation, the first cloud product can be represented in a multi-dimensional coordinate system according to its specifications. The number of resource types in the specifications of the first cloud product is the same as the number of dimensions in the multi-dimensional coordinate system, and the value of each cloud resource in the specifications of the first cloud product is used as the coordinate value of one dimension of the multi-dimensional coordinate system. Other cloud products to be compared with the first cloud product are represented in the multi-dimensional coordinate system according to their specifications. The cloud product with the shortest Euclidean distance to the first cloud product in the multi-dimensional coordinate system is selected as the second cloud product. For example, the specifications of the first cloud product can be represented by two cloud resources: storage space size and memory space size. The first cloud product has a storage space size of 10GB and a memory space size of 128MB. If represented using a two-dimensional coordinate system, the corresponding coordinate point is (10, 128), where 10 represents 10GB of storage space and 128 represents 128MB of memory space. At this point, multiple cloud products of the same type are searched, and their cloud resource attributes are cloud product A (10, 129), B (12, 128), and C (11, 127). The Euclidean distance is calculated using the following formula: Where (X1, Y1) are the coordinates of the first coordinate point, and (X2, Y2) are the coordinates of the second coordinate point. From this formula, we can see that the Euclidean distance from cloud product A to the first cloud product is 1, the Euclidean distance from cloud product B to the first cloud product is 2, and the Euclidean distance from cloud product C to the first cloud product is... Among them, the Euclidean distance from cloud product A to the first cloud product is the shortest, so cloud product A is designated as the second cloud product.

[0048] In the above example, changes in memory size have a significant impact on the Euclidean distance. However, in practical applications, cloud providers prefer that memory and storage space be weighted equally. To address this issue, in another optional implementation, the values ​​of various cloud resources can first be normalized before calculating the Euclidean distance. Representing the first cloud product and the other cloud products in the multi-dimensional coordinate system can include the following steps: normalizing the values ​​of various cloud resources in the specifications of the first cloud product and the other cloud products; and representing the first cloud product and the other cloud products in the multiple coordinate systems based on the normalized values. After normalization, the values ​​of different resources have the same impact on the calculated Euclidean distance, which is more conducive to selecting a second cloud product that matches the first cloud product. There are many ways to normalize the data of various cloud resources. For example, the maximum and minimum values ​​of each cloud resource in the first cloud product and the other cloud product specifications can be obtained, and the first difference can be obtained by subtracting the maximum and minimum values. For each cloud resource, the following operation is performed: after subtracting the minimum value from the value of the cloud resource in the first cloud product and the other cloud product specifications, the difference is used as the numerator and the first difference is used as the denominator to obtain the fraction, which is the value obtained after normalization.

[0049] Let's continue with the example of a cloud product that includes both storage and memory resources. The first cloud product has 10GB of storage and 128MB of memory. Represented using a two-dimensional coordinate system, the corresponding coordinates are (10, 128), where 10 represents 10GB of storage and 128 represents 128MB of memory. Now, let's look at multiple cloud products of the same type. Their cloud resource attributes are: Cloud Product A (20, 138), B (15, 148), and C (13, 150). Without normalization, the Euclidean distance of Cloud Product A is... The Euclidean distance of cloud product B is approximately 14. The Euclidean distance of cloud product C is approximately 21. The value is approximately 22. At this point, cloud product A is selected as the second cloud product.

[0050] The attribute values ​​of the cloud resources of the above cloud products are normalized below. The storage space sizes of the first cloud product, cloud product A, cloud product B, and cloud product C are 10, 20, 15, and 13 respectively, with a minimum value of 10 and a maximum value of 20. 20-10=10. Subtracting the minimum value of 10 from the storage space of each cloud product yields 0, 10, 5, and 6 respectively. Then, dividing by the difference between the maximum and minimum values ​​(10) gives the normalized values: 0, 1, 0.5, and 0.3. Similarly, the memory sizes of these cloud products are 128, 138, 148, and 150 respectively, with a maximum of 150 and a minimum of 128. The difference between the maximum and minimum values ​​is 22. Subtracting the minimum value of 128 from the memory sizes of these cloud products yields 0, 10, 20, and 22 respectively. Dividing these by 22 gives the normalized values: 0, 0.45, 0.9, and 1. Therefore, after normalization, the coordinates of the first cloud product are (0, 0), the coordinates of cloud product A are (1, 0.45), the coordinates of cloud product B are (0.5, 0.9), and the coordinates of cloud product C are (0.3, 1). At this point, the Euclidean distance from cloud product C to the first cloud product is the smallest, so cloud product C is selected as the second cloud product.

[0051] The above examples demonstrate that the original products selected after normalization and those without are different. In practical applications, the choice between normalization and non-normalization can be made based on the specific needs of the situation.

[0052] Besides using Euclidean distance to calculate the similarity of attributes among various cloud resources, an alternative implementation provides another calculation method: determining similarity based on the percentage of attribute values. For example, assuming the first cloud product has 1GB of memory and the second cloud product has 1.2GB of memory, then 1.2GB - 1GB = 0.2GB, and 1 - 0.2GB / 1GB = 80%. Therefore, the similarity between the memory size of the second cloud product and the first cloud product is 80%. Let's continue with the example data from the above implementation. The first cloud product has 10GB of storage space and 128MB of memory space; cloud product A has 10GB of storage space and 129MB of memory space; cloud product B has 12GB of storage space and 128MB of memory space; and cloud product C has 11GB of storage space and 127MB of memory space. First, calculate the similarity between the storage space of cloud products A through C and the first cloud product. For cloud product A: 10 - 10 = 0, (10 - 0) / 10 = 100%; for cloud product B: 12 ​​- 10 = 2, (10 - 2) / 10 = 80%; for cloud product C: 11 - 10 = 1, (10 - 1) / 10 = 90%. Then, calculate the similarity between the memory space of cloud products A through C and the first cloud product. For cloud product A: 129 - 128 = 1, (128 - 1) / 128 = 99%; for cloud product B: 128 - 128 = 0, (128 - 0) / 128 = 100%; for cloud product C: 128 - 127 = 1, (128 - 1) / 128 = 99%. After obtaining the similarity scores of the two resources, you can choose the one with the highest average similarity score as the second cloud product, or you can set a weight for each cloud resource and then choose the one with the highest weighted sum of similarities as the second cloud product.

[0053] It should be noted that other methods can also be used to select a second cloud product that matches the first cloud product, and it is not limited to the implementation methods described above. However, as a preferred implementation method, the following two principles can be followed when selecting a second cloud product that matches the first cloud product: first, in terms of resources, it should have the same or slightly higher resource configuration as the user's current cloud product; second, while meeting the first principle, it should be competitive in terms of price. These two principles can effectively help users reduce costs, and an optional embodiment will be used as an example below.

[0054] In this optional embodiment, when a user migrates from a first cloud provider to a second cloud provider, a cloud product cost assessment is required. In the following embodiment, the assessment is no longer conducted manually, and the resource survey, resource matching, and cost calculation are automatically completed by the system, which reduces the cost of TCO calculation and improves the accuracy of the calculation results. Figure 4This is an interface diagram for cloud product evaluation according to an embodiment of this application, such as... Figure 4 As shown, the interface can be divided into five parts: creating a task, obtaining the first cloud product bill, obtaining the first cloud product resources, mapping the second cloud product resources, and displaying the results. Figure 5 This is an interface diagram of creating a task according to an embodiment of this application, such as... Figure 5 As shown, you can enter a task name. For the source end (i.e., the first cloud product), since it's necessary to obtain relevant information about the first cloud product, you need the source cloud provider, access key, encryption key, survey region, and billing interval (i.e., the billing time range). The destination end can enter the target region and other information. It should be noted that... Figure 5 The information shown is just one example and is not limited to this. After creating a task, you can obtain the various cloud resources and usage information used in the First Cloud product through the First Cloud product's bill (e.g., in...). Figure 4 The process involves four types of cloud resources: network, computing, database, and storage. Then, cloud resource matching is performed within the second cloud product. Figure 6 This is a schematic diagram of the interface for resource matching according to an embodiment of this application, such as... Figure 6 As shown, for computing, one type of cloud resource is used. In this case, the first cloud resource can be mapped to a second cloud resource that can replace the first cloud resource. For networking, two types of cloud resources are used, which can be displayed separately. Furthermore, in... Figure 6 The system can also display usage and price information. It finds a second cloud product that can replace the first cloud product through resource matching and then displays the results. The results can show the prices of the first and second cloud products, as well as the amount saved and the percentage of cost savings. In addition to comparing each cloud resource individually, it can also compare total prices. It should be noted that the results comparison section can use not only tables but also bar charts, pie charts, etc.

[0055] In this optional embodiment, the correspondence between bills and cloud product resource usage is utilized. The bills reflect the current status and periodic changes in a user's cloud product usage; specifically, by leveraging the characteristic of bills reflecting resource usage changes, the user's resource usage and specifications over a period of time can be extracted from the bills. Simultaneously, to more accurately match cloud products from a second cloud vendor, the attributes of all resources within the cloud product specifications are fully considered, combining these attributes to depict a comprehensive picture of the user's resource usage. When recommending cloud products, Euclidean distance is used for cloud product specification matching. Furthermore, to improve matching accuracy, normalization processing is performed before calculating the Euclidean distance, thus accurately obtaining the cloud product with the smallest distance, i.e., the highest similarity. The optional embodiment will be described step-by-step below.

[0056] Step 1

[0057] Analysis of the user's previously used cloud product (i.e., the first cloud product). This step obtains the user's product specifications and usage. When obtaining usage data, it considers the potential fluctuations in user cloud product usage, which can be accurately reflected in the billing. Therefore, this step first obtains the billing information for the first cloud product and then parses it to determine the product's specifications and usage across different dimensions. Taking Relational Database Service (RDS) as an example, if a specification named db.m6g.xlarge is parsed, its attributes (also known as configuration information) are 4 vcpu (using four virtual CPU cores) and 16GB (memory size). Besides virtual CPU and memory size, other configuration information can be obtained, such as database engine, version, node type, and disk type. In this optional implementation, virtual CPU and memory are used as examples of two resources in this cloud product specification. Obtaining the user's billing information for the first cloud product reveals that the actual usage over the past year was 10,000 hours, and the storage usage was 500GB. This allows us to parse the product's bill to determine the attributes and usage of resources within the product's specifications.

[0058] Step Two

[0059] Matching cloud products with the second cloud provider involves identifying the specifications and usage of each cloud product in step one. The next step is to find a suitable replacement from the cloud products offered by the second cloud provider. Taking the RDS specification db.m6g.xlarge (4 vcpu, 16G) as an example, a corresponding RDS product with the same specifications needs to be found on the second cloud provider, while also meeting performance requirements. vCPU and memory size are two core indicators describing this cloud product. All RDS specifications on the second cloud provider need to be characterized using these two indicators, and then the product's suitability is determined based on these indicators. To quantify the matching degree between products, an Euclidean distance algorithm is used. Considering that vCPU and Memory are two dimensions, directly using the original indicator values ​​to calculate the Euclidean distance reveals that the Memory indicator has a significant impact on the calculation result because the Memory value range is much larger than that of CPU. To address this issue, this step requires normalizing both indicators before calculating the distance. By normalizing the indicators and calculating the Euclidean distance, the product specification with the smallest distance is the replaceable product on the second cloud provider.

[0060] Step 3

[0061] The cloud product pricing process automatically inquires for prices. After calculating the specifications and usage of each product from the second cloud provider in step two, it then calculates the price using the same payment method applied to the second cloud provider, taking into account the user's payment method with the first cloud provider. This ultimately yields the user's overall Total Cost of Ownership (TCO).

[0062] By following steps one through three above, and using user bills as a starting point, the bills can reflect the actual usage of user resources across various dimensions. Furthermore, they can supplement product specifications, especially those attributes that significantly influence product pricing. Combining product specifications with usage allows for a more accurate assessment of the cost of migrating users to cloud products.

[0063] In this embodiment, an electronic device is provided, including a memory and a processor. The memory stores a computer program, and the processor is configured to run the computer program to perform the methods described in the above embodiments.

[0064] The aforementioned program can run on a processor or be stored in memory (or computer-readable medium). Computer-readable medium includes both permanent and non-permanent, removable and non-removable media, and information storage can be achieved by any method or technology. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable medium does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0065] These computer programs may also be loaded onto a computer or other programmable data processing equipment, causing a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes can be implemented using different modules, and different steps can be implemented using different modules.

[0066] This embodiment provides such a device. This device is referred to as a cloud product data processing device. Figure 3This is a structural block diagram of a cloud product data processing device according to an embodiment of this application, such as... Figure 3 As shown, the cloud product is a product that uses cloud resources and provides cloud services. The device includes: a first acquisition module, used to acquire the specifications of a first cloud product used by a user, wherein the specifications are used to indicate the attributes of the cloud resources used by the cloud product; a second acquisition module, used to acquire the amount of cloud resources used by the user when using the first cloud product; a search module, used to search for a second cloud product that matches the specifications of the first cloud product among the cloud products provided by the cloud vendor, wherein the second cloud product can be used to replace the first cloud product; and a processing module, used to calculate and display data under the condition that the second cloud product is used and generates the usage, and display the data, wherein the data is used to indicate the information that the user needs to pay after using the second cloud product.

[0067] The system or apparatus is used to implement the functions of the methods in the above embodiments. Each module in the system or apparatus corresponds to each step in the method, as has been described in the method and will not be repeated here.

[0068] Optionally, the second acquisition module is configured to: acquire the first cost incurred by the user when using the first cloud product; and calculate the amount of cloud resources used when using the first cloud product based on the first cost and the price of cloud resources of the first cloud product.

[0069] Optionally, the processing module is further configured to compare the first cost and the second cost under the condition that the second cloud product is used and generates the usage; and display the comparison result.

[0070] Optionally, the search module is further configured to, if the second cost is higher than the first cost, search for other cloud products whose specifications match the first cloud product; the processing module is further configured to calculate the cost of the other cloud products when they are used and generate the usage; until a third cloud product is found whose cost is lower than the first cost when it is used and generates the usage; and display the cost of the third cloud product.

[0071] Optionally, the search module is used to: obtain the attributes of various cloud resources in the specifications of the first cloud product; search for a cloud product whose attributes are the same or most similar to those of various cloud resources in the specifications of the first cloud product; and use the searched cloud product as a second cloud product that matches the specifications of the first cloud product.

[0072] Optionally, the lookup module is configured to: represent the first cloud product in a multi-dimensional coordinate system according to the specifications of the first cloud product, wherein the number of resource types in the specifications of the first cloud product is the same as the number of dimensions of the multi-dimensional coordinate system, and the value of each cloud resource in the specifications of the first cloud product is used as the coordinate value of one dimension of the multi-dimensional coordinate system; represent the other cloud products in the multi-dimensional coordinate system according to the specifications of other cloud products whose attributes are to be compared with the first cloud product; and select the cloud product with the shortest Euclidean distance from the first cloud product in the multi-dimensional coordinate system as the second cloud product.

[0073] Optionally, the lookup module is used to: normalize the values ​​of various cloud resources in the specifications of the first cloud product and the other cloud products; and represent the first cloud product and the other cloud products in the plurality of coordinate systems according to the values ​​obtained after normalization.

[0074] Optionally, the lookup module is configured to include: obtaining the maximum and minimum values ​​of each cloud resource in the first cloud product and the other cloud product specifications, subtracting the maximum and minimum values ​​to obtain a first difference; for each cloud resource, performing the following operation: subtracting the minimum value from the value of the cloud resource in the first cloud product and the other cloud product specifications, using the difference as the numerator and the first difference as the denominator to obtain a fraction as the value obtained after normalization.

[0075] The above implementation method solves the problems of low efficiency and difficulty in guaranteeing accuracy caused by relying on manual cloud product cost assessment in the prior art, thereby improving the efficiency and accuracy of cloud product cost assessment.

[0076] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A method for processing cloud product data, wherein the cloud product is a product that uses cloud resources and provides cloud services, the method comprising: Obtain the specifications of the first cloud product used by the user, wherein the specifications are used to indicate the attributes of the cloud resources used by the cloud product; Obtain the amount of cloud resources used by the user when using the first cloud product; Based on the specifications of the first cloud product and the specifications of other cloud products provided by the cloud vendor, the first cloud product and the other cloud products are represented in a multi-dimensional coordinate system. The number of cloud resource types in the specifications of any cloud product is the same as the dimension of the multi-dimensional coordinate system. The value of each cloud resource in the specifications of any cloud product is used as the coordinate value of one dimension of the multi-dimensional coordinate system. The cloud vendor is a service provider that provides cloud products. In the multi-dimensional coordinate system, find the cloud product that has the same or the highest similarity to the various cloud resources in the specifications of the first cloud product, and use it as the second cloud product that matches the specifications of the first cloud product. The second cloud product can be used to replace the first cloud product. Calculate data on the usage of the second cloud product and the resulting usage, and display the data; wherein the data is used to indicate the information required by the user after using the second cloud product.

2. The method according to claim 1, wherein, Obtaining the cloud resource usage generated by the user when using the first cloud product includes: Obtain first data generated by the user using the first cloud product, wherein the first data is used to indicate the information that the user needs to pay after using the first cloud product; The cloud resource usage generated when using the first cloud product is calculated based on the first data and the cloud resource data of the first cloud product. The cloud resource data of the first cloud product is used to indicate the information that the user needs to pay for each unit of cloud resource usage.

3. The method according to claim 2, wherein, Also includes: Compare the first data with the second data under the condition that the second cloud product is used and generates the usage; Display the comparison results.

4. The method according to claim 3, wherein, When the second data is higher than the first data, it also includes: Search for other cloud products that match the specifications of the first cloud product, and calculate the data when the other cloud products are used and generate the usage; until a third cloud product is found whose data when it is used and generates the usage is lower than the first data; Displays data for the third cloud product.

5. The method according to any one of claims 1 to 4, wherein, The step of searching in the multi-dimensional coordinate system for a cloud product whose attributes are identical or most similar to those of all cloud resources in the specifications of the first cloud product includes: The cloud product with the shortest Euclidean distance to the first cloud product in the multidimensional coordinate system is designated as the second cloud product.

6. The method according to any one of claims 1 to 4, wherein, Representing the first cloud product and the other cloud products in the multidimensional coordinate system includes: The values ​​of various cloud resources in the specifications of the first cloud product and the other cloud products are normalized. The first cloud product and the other cloud products are represented in the multidimensional coordinate system based on the values ​​obtained after normalization.

7. The method according to claim 6, wherein, Normalizing the values ​​of the various cloud resources includes: Obtain the maximum and minimum values ​​of each cloud resource in the specifications of the first cloud product and the other cloud products, and subtract the maximum and minimum values ​​to obtain the first difference; For each resource, the following calculation is performed: after subtracting the minimum value from the value of the cloud resource for which the calculation is performed in the first cloud product and the other cloud product specifications, the difference is used as the numerator, and the fraction obtained by using the first difference as the denominator is used as the value obtained after normalization.

8. A cloud product data processing device, wherein the cloud product is a product that uses cloud resources and provides cloud services, the device comprising: The first acquisition module is used to acquire the specifications of the first cloud product used by the user, wherein the specifications are used to indicate the attributes of the cloud resources used by the cloud product. The second acquisition module is used to acquire the amount of cloud resources used by the user when using the first cloud product; The lookup module is used to represent the first cloud product and the other cloud products provided by the cloud vendor in a multi-dimensional coordinate system according to the specifications of the first cloud product and the specifications of other cloud products provided by the cloud vendor; to find the cloud product in the multi-dimensional coordinate system that has the same or the highest similarity to the various cloud resource attributes in the specifications of the first cloud product, and to select the second cloud product that matches the specifications of the first cloud product; wherein, the number of cloud resource types in the specifications of any cloud product is the same as the dimension of the multi-dimensional coordinate system, and the value of each cloud resource in the specifications of any cloud product is respectively used as the coordinate value of one dimension of the multi-dimensional coordinate system, and the second cloud product can be used to replace the first cloud product. The processing module is used to calculate data on the usage of the second cloud product and the resulting usage, and to display the data, wherein the data is used to indicate the information that the user needs to pay after using the second cloud product.

9. An electronic device comprising a memory and a processor; wherein, The memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the steps of the method according to any one of claims 1 to 7.

10. A readable storage medium having computer instructions stored thereon, wherein, When executed by a processor, the computer instructions implement the steps of the method described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Recommendation method and recommendation device for cloud products

    CN114722265A