Automated service tiering between edge computing sites and core data centers

By automating service score determination and migration through service layering logic, the challenges of service management between edge computing sites and core data centers are solved, enabling efficient resource utilization and dynamic optimization of service quality.

CN115469994BActive Publication Date: 2026-07-03DELL PROD LP

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
DELL PROD LP
Filing Date
2021-06-11
Publication Date
2026-07-03

AI Technical Summary

Technical Problem

In cloud-based information processing systems, service management faces significant challenges, especially when dynamically adjusting services between edge computing sites and core data centers, making it difficult to efficiently meet ever-changing user needs.

Method used

By using service tiering logic, the suitability of services in edge computing sites and core data centers is automatically determined, service scores are generated based on multiple parameters, and services are dynamically migrated to optimize resource utilization, thereby realizing service tiering between edge computing sites and core data centers.

Benefits of technology

It enables dynamic adjustment of services between edge computing sites and core data centers, improves resource utilization efficiency, reduces latency and bandwidth requirements, meets the performance requirements of different services, and dynamically improves service quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115469994B_ABST
    Figure CN115469994B_ABST
Patent Text Reader

Abstract

An apparatus comprising: a processing device configured to obtain information associated with services hosted in an information technology infrastructure, the information technology infrastructure comprising a core data center hosting a first subset of the services and an edge computing site hosting a second subset of the services. The processing device is further configured to determine, based on the obtained information, values associated with parameters characterizing suitability of hosting respective ones of the services at the computing site, and generate, based on the determined values, a score for each of the services. The processing device is further configured to identify, based on the generated scores, at least one given service of the services to be migrated from the core data center to an edge computing device or from the edge computing site to the core data center. The processing device is further configured to migrate the given service of the services.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This field relates generally to information processing, and more specifically to techniques for managing information processing systems. Background Technology

[0002] Information processing systems are increasingly using reconfigurable virtual resources to meet evolving user needs in an efficient, flexible, and cost-effective manner. For example, cloud computing and storage systems implemented using virtual resources such as virtual machines have been widely adopted. Other virtual resources now widely used in information processing systems include Linux containers. Such containers can be used to provide at least a portion of the virtualized infrastructure for a given cloud-based information processing system. However, significant challenges can arise in service management within cloud-based information processing systems. Summary of the Invention

[0003] The illustrative embodiments of this disclosure provide a technology for automated service tiering between edge computing sites and core data centers.

[0004] In one embodiment, an apparatus includes at least one processing unit, the at least one processing unit including a processor coupled to memory. The at least one processing unit is configured to perform the steps of: obtaining information associated with a plurality of services hosted in an information technology infrastructure, the information technology infrastructure including at least one core data center hosting a first subset of the plurality of services and one or more edge computing sites hosting a second subset of the plurality of services. The at least one processing unit is further configured to perform the steps of: determining values ​​associated with two or more parameters characterizing the suitability of a corresponding service among the plurality of services hosted at the one or more edge computing sites, at least in part based on the obtained information; and generating a score for each of the plurality of services based at least in part on the determined values ​​associated with the two or more parameters characterizing the suitability of a corresponding service among the plurality of services hosted at the one or more edge computing sites. The at least one processing unit is further configured to perform the step of: identifying at least one given service among the plurality of services to be migrated, at least in part based on the generated scores of the plurality of services, wherein the given service to be migrated among the plurality of services includes one of the following: a service in a first subset of the plurality of services to be migrated from the at least one core data center to at least one edge computing site among the one or more edge computing sites; and a service in a second subset of the plurality of services to be migrated from the one or more edge computing sites to the at least one core data center. The at least one processing unit is further configured to perform the step of: migrating the given service among the plurality of services.

[0005] These and other illustrative embodiments include, but are not limited to, methods, devices, networks, systems, and processor-readable storage media. Attached Figure Description

[0006] Figure 1 This is a block diagram of an information processing system configured for automated service tiering between edge computing sites and core data centers, as shown in an illustrative implementation.

[0007] Figure 2 This is a flowchart of an exemplary process for automated service stratification between edge computing sites and core data centers in an illustrative implementation.

[0008] Figure 3 This illustrates the deployment of deep learning models across edge, core, and cloud computing sites in an illustrative implementation.

[0009] Figure 4 An example of automatic tiering of applications and services between edge computing sites and core data centers is shown in an illustrative implementation.

[0010] Figure 5 This illustrates the process flow for the automated tiering of applications and services between edge computing sites and core data centers in an illustrative implementation scheme.

[0011] Figure 6A and Figure 6B The illustration shows the automatic tiering of applications and services between the edge computing site and the core data center before and after the implementation of the illustrative implementation.

[0012] Figure 7 and Figure 8 An example of a processing platform that can be used to implement at least a portion of an information processing system is shown in the illustrative implementation. Detailed Implementation

[0013] This document describes illustrative embodiments with reference to exemplary information processing systems and associated computers, servers, storage devices, and other processing apparatuses. However, it should be understood that the embodiments are not limited to use with the specific illustrative system and apparatus configurations shown. Therefore, the term "information processing system" as used herein is intended to be interpreted broadly to encompass, for example, processing systems including cloud computing and storage systems, as well as other types of processing systems including various combinations of physical and virtual processing resources. Thus, an information processing system may include, for example, at least one data center or other type of cloud-based system that includes one or more clouds hosting tenants accessing cloud resources.

[0014] Figure 1An information processing system 100 configured according to an illustrative embodiment is shown. It is assumed that the information processing system 100 is built on at least one processing platform and provides the capability for automated tiering of services between edge computing sites 104-1, 104-2, ..., 104-N (collectively referred to as edge computing sites 104) and the core data center 106. As used herein, the term "service" is intended to be interpreted broadly to include applications, microservices, and other types of services. It is assumed that each edge computing site in edge computing sites 104 includes multiple edge devices or edge nodes running edge hosting services 108-1, 108-2, ..., 108-N (collectively referred to as edge hosting services 108-E). Figure 1 (Not shown in the image). It is also assumed that the core data center 106 includes multiple core devices or core nodes running the core hosting service 108-C. Figure 1 (Not shown in the image). Edge hosting service 108-E and core hosting service 108-C are collectively referred to as service 108.

[0015] Information processing system 100 includes multiple client devices coupled to each edge computing station in edge computing station 104. A group of client devices 102-1-1, ..., 102-1-M (collectively referred to as client devices 102-1) is coupled to edge computing station 104-1, a group of client devices 102-2-1, ..., 102-2-M (collectively referred to as client devices 102-2) is coupled to edge computing station 104-2, and a group of client devices 102-N-1, ..., 102-NM (collectively referred to as client devices 102-N) is coupled to edge computing station 104-N. Client devices 102-1, 102-2, ..., 102-N are collectively referred to as client devices 102. It should be understood that the specific number "M" of client devices 102 connected to each edge computing station in edge computing station 104 may be different. In other words, the number M of client devices 102-1 coupled to edge computing site 104-1 can be the same as or different from the number M of client devices 102-2 coupled to edge computing site 104-2. Furthermore, a particular client device 102 may be connected to or coupled to only a single edge computing site in edge computing site 104 at any given time, or may be coupled to multiple edge computing sites in edge computing site 104 at any given time, or may be connected to different edge computing sites in edge computing site 104 at different times.

[0016] Client device 102 can take any combination of forms, including, for example, physical computing devices such as Internet of Things (IoT) devices, mobile phones, laptop computers, tablet computers, desktop computers, or other types of devices used by enterprise members. Such devices are examples of what is more generally referred to herein as “processing devices.” Some of these processing devices are also generally referred to herein as “computers.” Client device 102 may similarly or alternatively include virtualized computing resources such as virtual machines (VMs), containers, etc.

[0017] In some implementations, client device 102 includes a corresponding computer associated with a specific company, organization, or other enterprise. Additionally, at least some portions of system 100 may also be collectively referred to herein as including "enterprise". As those skilled in the art will understand, numerous other operational scenarios involving a wide variety of different types and arrangements of processing nodes are possible.

[0018] Assuming the network coupling client device 102, edge computing site 104, and core data center 106 includes a global computer network such as the Internet, other types of networks may be part of core data center 106, including wide area networks (WANs), local area networks (LANs), satellite networks, telephone or wired networks, cellular networks, wireless networks (such as WiFi or WiMAX networks), or portions or combinations of these and other types of networks. In some implementations, a first type of network (e.g., a public network) couples client device 102 to edge computing site 104, while a second type of network (e.g., a private network) couples edge computing site 104 to core data center 106.

[0019] In some implementations, edge computing site 104 and core data center 106 together provide at least a portion of an information technology (IT) infrastructure operated by an enterprise, wherein client device 102 is operated by users of the enterprise. Therefore, the IT infrastructure including edge computing site 104 and core data center 106 may be referred to as an enterprise system. As used herein, the term "enterprise system" is intended to be interpreted broadly as including any group of systems or other computing devices. In some implementations, the enterprise system includes cloud infrastructure, which includes one or more clouds (e.g., one or more public clouds, one or more private clouds, one or more hybrid clouds, combinations thereof, etc.). The cloud infrastructure may host at least a portion of core data center 106 and / or edge computing site 104. A given enterprise system may host assets associated with multiple enterprises (e.g., two or more different businesses, organizations, or other entities).

[0020] Despite Figure 1Not explicitly shown, but one or more input / output devices such as keyboards, displays or other types of input / output devices may be used to support one or more user interfaces to edge computing site 104 and core data center 106, as well as to support communication between edge computing site 104, core data center 106 and other related systems and devices not explicitly shown.

[0021] As described above, the edge computing site hosts edge hosting service 108-E, and the core data center 106 hosts core hosting service 108-C, where edge hosting service 108-E and core hosting service 108-C are collectively referred to as service 108. Client device 102 sends a request to edge computing site 104 (e.g., to an edge computing device or its edge node) for access to service 108. If a given request from one of the client devices 102 (e.g., client device 102-1-1) pertains to an edge hosting service within edge hosting service 108-1 at edge computing site 104-1, the edge computing device or edge node at edge computing site 104-1 will service the given request and provide a response (if applicable) to the requesting client device 102-1-1. If a given request pertains to a core hosting service within core hosting service 108-C, the edge computing device or edge node at edge computing site 104-1 will forward the given request to core data center 106. The core data center 106 will serve a given request and will provide a response (if applicable) back to the edge computing site 104-1, which will then provide a response back to the client device 102-1-1 that issued the request.

[0022] Different services in service 108 may have different required performance or other characteristics. As a result, based on the required performance or other characteristics of service 108, it may be more advantageous to host some services in service 108 at edge computing site 104 or core data center 106. Furthermore, the required performance or other characteristics of service 108 may change over time, making a given service currently hosted at one of the edge computing sites in edge computing site 104 better suited for hosting by core data center 106, or vice versa. In the illustrative embodiment, edge computing device 104 and core data center 106 implement corresponding instances of service layering logic 110-1, 110-2, ..., 110-N and 110-C (collectively, service layering logic 110). Service layering logic 110 provides dynamic enhancements to the different services of service 108 at edge computing site 104 and core data center 106 to meet the required performance or other characteristics of service 108.

[0023] Service layering logic 110 is configured to obtain information associated with services 108 hosted in an IT infrastructure including edge computing site 104 and core data center 106, and based on such obtained information, determine values ​​associated with two or more parameters (e.g., tolerable latency, bandwidth requirements, number of access requests) characterizing the suitability of the corresponding service hosted in service 108 at edge computing site 104. Service layering logic 110 is also configured to generate a score for each of a plurality of services, at least in part, based on the determined values ​​associated with the two or more parameters characterizing the suitability of the corresponding service hosted in service 108 at edge computing site 104. Service layering logic 110 uses such generated scores to identify services 108 that need to be migrated (e.g., from edge computing site 104 to core data center 106, or vice versa), and then migrates such services 108. Service layering logic 110 may (e.g., based on updated information associated with the operation of service 108 in an IT infrastructure including edge computing site 104 and core data center 106) perform the above functions for each of multiple service relocation cycles.

[0024] In some implementations, information associated with service 108 (e.g., status information, parameters derived from or otherwise determined based on the status information) may be stored in a database or other data storage device. The database or other data storage device may be implemented using one or more storage systems that are part of or otherwise associated with one or more of client device 102, edge computing site 104, core data center 106. Storage systems may include scale-out all-flash content-addressable storage arrays or other types of storage arrays. Therefore, the term “storage system” as used herein is intended to be interpreted broadly and should not be considered limited to content-addressable storage systems or flash-based storage systems. A given storage system as a term used broadly herein may include, for example, network-attached storage devices (NAS), storage area networks (SANs), direct-attached storage devices (DAS), and distributed DAS, as well as combinations of these and other storage types (including software-defined storage devices). Other specific types of storage products that may be used to implement storage systems in illustrative implementations include all-flash and hybrid flash storage arrays, software-defined storage products, cloud storage products, object-based storage products, and scale-out NAS clusters. In the illustrative implementation, combinations of these and other storage products can also be used to implement a given storage system.

[0025] Although shown as an element of edge computing site 104 and core data center 106 in this embodiment, in other embodiments, service layering logic 110 may be implemented at least partially outside of edge computing site 104 and core data center 106 as, for example, a standalone server, a server group, or other type of system coupled to edge computing site 104 and / or core data center 106 via one or more networks. In some embodiments, service layering logic 110 may be implemented at least partially within one or more client devices in client device 102.

[0026] Assuming at least one processing device is used to implement this. Figure 1 The implementation includes edge computing site 104 and core data center 106. Each such processing unit typically includes at least one processor and associated memory, and implements at least a portion of the functionality of service tiering logic 110.

[0027] It should be understood that this is presented only through examples. Figure 1 The specific arrangement of the client device 102, edge computing site 104, core data center 106, service 108, and service layering logic 110 shown in the embodiment is applicable, and alternative arrangements may be used in other embodiments. As described above, for example, the service layering logic 110 may be implemented externally to one or both of the edge computing site 104 and the core data center 106. At least some portions of the service layering logic 110 may be implemented, at least partially, as software stored in memory and executed by a processor.

[0028] It should be understood that this is presented only through illustrative examples. Figure 1 The diagram shows a specific set of components for automated service stratification between edge computing site 104 and core data center 106, and in other embodiments, additional or alternative components may be used. Therefore, another embodiment may include different arrangements of additional or alternative systems, devices, and other network entities, as well as modules and other components.

[0029] As will be described in more detail above and below, client device 102, edge computing site 104, core data center 106, and other parts of system 100 may be part of cloud infrastructure.

[0030] Assuming that at least one processing platform is used, comprising one or more processing devices, each having a processor coupled to memory, to implement this. Figure 1 The implementation scheme includes client device 102, edge computing site 104, core data center 106, and other components of information processing system 100. Such processing devices may illustratively include a specific arrangement of computing, storage, and network resources.

[0031] Client device 102, edge computing site 104, and core data center 106, or components thereof, may be implemented on correspondingly different processing platforms, but many other arrangements are possible. For example, in some embodiments, at least some portions of edge computing site 104 and core data center 106 are implemented on the same processing platform. One or more of client devices 102 may therefore be implemented at least partially within at least one processing platform implementing at least a portion of edge computing site 104 and / or core data center 106.

[0032] As used herein, the term "processing platform" is intended to be interpreted broadly to include, for example, but not limited to, multiple sets of processing devices and associated storage systems configured to communicate over one or more networks. For example, a distributed implementation of system 100 is possible, in which some components of the system reside in a data center located in a first geographical location, while other components reside in one or more other data centers located in one or more other geographical locations that may be far from the first geographical location. Therefore, in some implementations of system 100, client device 102, edge computing site 104, and core data center 106, or portions or components thereof, may reside in different data centers. Many other distributed implementations are possible.

[0033] The following will combine Figure 7 and Figure 8 Further examples of the processing platform used in the illustrative implementation of client device 102, edge computing site 104, core data center 106, and other components of system 100 are described in more detail.

[0034] It should be understood that these and other features of the illustrative implementation are presented by way of example only and should not be construed as restrictive in any way.

[0035] Now refer to Figure 2 The flowchart describes in more detail an exemplary process for automated service stratification between edge computing sites and core data centers. It should be understood that this particular process is merely an example, and other or alternative processes for automated service stratification between edge computing sites and core data centers may be used in other implementations.

[0036] In this embodiment, the process includes steps 200 through 208. These steps are assumed to be performed by an edge computing site 104 and a core data center 106 utilizing service tiering logic 110. The process begins at step 200, obtaining information associated with multiple services hosted in an IT infrastructure, which includes at least one core data center (e.g., core data center 106) hosting a first subset of the multiple services (e.g., core hosting service 108-C) and one or more edge computing sites (e.g., edge computing site 104) hosting a second subset of the multiple services (e.g., edge hosting services 108-1, 108-2, ..., 108-N). At least one core data center may be geographically located away from one or more edge computing sites.

[0037] In step 202, values ​​associated with two or more parameters characterizing the suitability of a corresponding service among multiple services hosted at one or more edge computing sites are determined, at least in part, based on the information obtained. The two or more parameters characterizing the suitability of a corresponding service among multiple services hosted at one or more edge computing sites may include: at least one parameter characterizing the tolerable latency of the corresponding service among multiple services; at least one parameter characterizing the bandwidth requirements of the corresponding service among multiple services; and at least one parameter characterizing the number of access requests for the corresponding service among multiple services.

[0038] In step 204, a score for each of the multiple services is generated, at least in part, based on determined values ​​associated with two or more parameters characterizing the suitability of a corresponding service among multiple services hosted at one or more edge computing sites. Step 204 may include standardizing the value of each of the two or more parameters, wherein standardizing the value of each of the two or more parameters may include normalizing the value of the parameter to a specified range. Step 204 may also include calculating a weight for each of the two or more parameters, which may utilize the entropy weight method (EWM). Step 204 may also include generating a score as a weighted combination of the standardized values ​​of the two or more parameters for the multiple services.

[0039] In step 206, at least one given service to be migrated from the plurality of services is identified, at least in part, based on the scores generated from the plurality of services. The given service to be migrated from the plurality of services includes one of the following: a service from a first subset of the plurality of services to be migrated from at least one core data center to at least one edge computing site in one or more edge computing sites; and a service from a second subset of the plurality of services to be migrated from one or more edge computing sites to at least one core data center. Step 206 may include: determining the available resources at one or more edge computing sites; and identifying, at least in part, the maximum number of plurality of services that can be hosted simultaneously at one or more edge computing sites based on the determined available resources. Step 206 may further include: determining whether the total number of services receiving access requests in the first service relocation period is less than or equal to the maximum number of services that can be hosted simultaneously at one or more edge computing sites; for a second service relocation period following the first service relocation period, in response to determining that the total number of services receiving access requests in the first service relocation period is less than or equal to the maximum number of services that can be hosted simultaneously at one or more edge computing sites, hosting all of the multiple services at one or more edge computing sites; and for the second service relocation period, in response to determining that the total number of services receiving access requests in the first service relocation period is greater than the maximum number of services that can be hosted simultaneously at one or more edge computing sites, hosting a selected subset of the multiple services at one or more edge computing sites.

[0040] In step 208, a given service among multiple services is migrated. At least one of one or more edge computing sites may store an image for the given service among the multiple services, said image for the given service among the multiple services including at least one of virtual machine images and software container images. Step 208 may include migrating the given service among the multiple services from at least one data center to at least one of the one or more edge computing sites by instantiating at least one of a virtual machine instance and a software container instance using the image stored by said at least one of the one or more edge computing sites. Therefore, in some implementations, migrating a service from a core data center to an edge computing site (or vice versa) does not incur any significant performance penalty because the virtual machine image or software container image for the service may be stored at both the core data center and the edge computing site, such that migrating the service only requires activating or instantiating such an image in the virtual machine instance or software container instance.

[0041] As described above, in some implementations, an automatic tiering mechanism is used to move services between edge sites and core data centers. The automatic tiering mechanism illustratively enables the dynamic promotion of services with certain characteristics or requirements (e.g., low latency, frequent requests, etc.) to edge sites, and the dynamic promotion of services with other characteristics or requirements (e.g., latency-insensitive services, etc.) to the core data center.

[0042] Figure 3 The architecture 300 illustrates an end-to-end deep learning model deployment across three phases: edge phase 301, core phase 303, and cloud phase 305. Deep learning models or engines can be used for a variety of tasks, including but not limited to fraud detection, improving customer relationships, and optimizing supply chains. The performance and accuracy of deep learning models can be significantly improved by increasing the size and complexity of the neural networks utilized, as well as by increasing the quantity and quality of the data used to train the deep learning models. Figure 3 The architecture 300 shown can advantageously provide flexibility for deployment across environments such as edge devices in edge phase 301, core data centers in core phase 303, and cloud computing environments in cloud phase 305.

[0043] At edge stage 301, data acquisition 310 is performed. Data acquisition 310 includes collecting data from application 315 and edge-level artificial intelligence (AI) tasks. Data acquisition 310 may include capturing data streams from application 315.

[0044] At core phase 303, data preparation 330-1, training 330-2, and deployment 330-3 are performed. Data preparation 330-1 includes various preprocessing tasks, such as aggregation and normalization, required to clean or otherwise prepare the data prior to training 330-2. Such preprocessing tasks may be performed in or using a unified data lake 331. The unified data lake 331 may be implemented in the cloud or may utilize a local storage system within a core data center. In some implementations, the unified data lake 331 includes file storage or object storage. Training 330-2 includes the exploration and training of a deep learning model. For this purpose, data may be copied from the unified data lake 331 to a training cluster at regular intervals to form a training dataset 332-1, which is then tested 332-2 or validated. Servers performing testing 332-2 may use graphics processing units (GPUs) for parallel computation. Deployment 330-3 includes deploying the deep learning model (trained and tested during training 330-2) to production. The trained and tested deep learning models can be additionally or alternatively fed back to the unified data lake 331 for adjustments (e.g., input weights, etc.). In some implementations, the trained and tested deep learning models can be deployed to edge devices (e.g., for IoT applications).

[0045] At cloud stage 305, analysis and tiering are performed 350. Various cloud service providers (CSPs) 355-1, ..., 355-P (collectively referred to as CSP 355) can implement the cloud, running various cloud-based tools to perform cloud-based AI tasks (e.g., including cloud-based AI tasks utilizing GPU instances). CSPs can also implement clouds that provide data tiering capabilities. Therefore, CSP 355 can perform additional analysis and development work. Furthermore, cold data can be archived to cloud-based storage devices in CSP 355's private and public clouds.

[0046] Edge computing includes providing applications 315 or other services (e.g., including IT service environments that include applications 315) at the network edge. Edge sites typically have capabilities such as application integration and methods for handling applications with stringent low-latency requirements (e.g., autonomous driving applications, augmented reality (AR), virtual reality (VR), voice, etc.). The goal of edge computing is to move computing closer to the edge of the network (e.g., edge devices at edge stage 301) and away from the data center (e.g., the core data center at core stage 303). This advantageously brings computing and data storage closer to the client devices that are collecting data, rather than relying on a central location (e.g., the core data center) that can be far away (e.g., thousands of miles away). Therefore, edge computing offers various benefits such as reduced latency and mitigated bandwidth limitations. Reduced latency includes providing end users with lower latency than they would experience if they performed computing further away (e.g., at the core data center rather than at the edge device). Many tasks require low latency, including but not limited to autonomous driving, AR / VR, voice, gaming, etc. The ability to move workloads closer to end users or data collection points also reduces the impact of limited bandwidth at edge sites. This is particularly useful when a given application or other service requires the transmission of large amounts of data for processing. By running a given application or other service on an edge device or node at an edge site, significant bandwidth savings can be achieved by avoiding the transmission of data that would otherwise need to be sent to the core data center or by reducing the amount of said data. This provides various cost savings (e.g., in terms of the bandwidth or other network resources required for long-distance data transmission between the edge site and the core data center).

[0047] At edge sites, there can be many different types of edge devices or nodes, and the service request patterns of these edge devices often change over time. Resources at edge sites are typically shared by many users and many applications or other services. Edge sites may also be resource-constrained. Edge sites work in conjunction with the core data center. To fully leverage the resources available at the edge site, technologies are needed to dynamically promote applications or other services with certain specified characteristics (e.g., applications and services that request frequently, require low latency, or will benefit from reduced bandwidth costs) to the edge site. Furthermore, technologies are needed to dynamically promote applications or other services with other specified characteristics (e.g., applications or services that are not time-sensitive, applications or services that require significant compute and / or storage resources, etc.) to the core data center.

[0048] In some implementations, multiple characteristics or parameters (also referred to as criteria or factors) are combined to determine which applications or other services should be promoted to edge sites or core data centers. Such characteristics or parameters include: tolerable latency; required bandwidth; and request frequency. Applications and other services requiring lower latency benefit from promotion to edge sites, avoiding the need to transmit data over potentially long distances to the core data center, which can introduce latency. Applications and other services operating at high bandwidth costs will similarly benefit from promotion to edge sites to reduce data transmission in the network. Applications and other services with frequent access requests or anticipated to have a large number of access requests in the near future will also benefit from promotion to edge sites, thereby improving the quality of service for many edge devices. Monitoring these, and potentially other, characteristics and parameters associated with applications and other services at both edge sites and core data centers enables automatic tiering of applications and other services between the core data center and edge sites. For example, some implementations may run algorithms that promote or otherwise migrate applications and other services from edge sites to the core data center based on a score assigned to each application or service according to the aforementioned characteristics of tolerable latency, bandwidth requirements, and request frequency, and vice versa.

[0049] Figure 4 This illustration shows an example of dynamic upgrades of applications and services between an edge site 401 (including edge devices 410, such as those for wind farms, travel, AR / VR, automobiles, etc.) and a core data center 403. In each iteration, one or more applications or other services can be migrated from the edge site 401 to the core data center 403, and vice versa. Figure 4As shown, one application and service in application and service 415-1 is migrated from edge site 401 to core data center 403, while one application and service in application and service 415-2 is migrated from core data center 403 to edge site 401.

[0050] The detailed algorithm for the automatic tiering of applications and other services between edge sites and core data centers will now be described. C represents the application or other service relocation cycle. A i Let i represent the specific application or other service that sends an access request to the edge computing site, where i ≤ N, and N represents the total number of applications or services sending requests to the edge computing site. K represents the maximum number of applications and services that the edge site can handle. L i Indicates application or other service A i Tolerable latency, B i Indicates application or other service A i The bandwidth requirement (also known as the bandwidth reduction value), and n i Indicates application or other service A i The number of requests. n i It can also be called an application or other service A i The "popular" level.

[0051] The standardized representation of the delay parameter is as follows:

[0052]

[0053] This is a reverse indicator, where an application or other service with a low tolerable latency value should be assigned to it. i Promoted to an edge site, where i≤N and 0≤R Li ≤1.

[0054] The standardized representation of the bandwidth requirement parameter is as follows:

[0055]

[0056] This is a positive indicator, where an application or other service A with a high bandwidth requirement value should be selected. i Upgrade to an edge site because it can better benefit from bandwidth reduction, where i≤N and 0≤R Li ≤1.

[0057] The standardized representation of the access frequency parameter is as follows:

[0058]

[0059] This is also a positive indicator, where the application or other service whose access frequency value should be high (A) iPromoted to an edge site, where i≤N and 0≤R ni ≤1.

[0060] The ratio of parameter j (j∈(L, B, n)) among all parameters is expressed as:

[0061]

[0062] The entropy of parameter j (j∈(L, B, n)) is expressed as:

[0063]

[0064] Entropy is a concept in information theory and measures the uncertainty of a parameter. A parameter j with a large entropy value has large uncertainty. If the uncertainty is large, the current information of parameter j is small, 0 ≤ e j ≤1.

[0065] The weights of parameters L, B, and n can be calculated using the following formula:

[0066]

[0067] The above formula uses the Entropy Weight Method (EWM), where a parameter j with a smaller entropy value means that the parameter has a higher impact on the overall evaluation and therefore should have a higher weight.

[0068] Application or other service A i The comprehensive assessment is expressed as follows:

[0069] S i =sum(w j ·R ji ) = w L ·R Li +w B ·R Bi +w n ·R ni

[0070] As shown in this article, application or other service A i Comprehensive assessment or score S i It can be calculated as a weighted sum of the values ​​of latency, bandwidth reduction, and access request frequency parameters.

[0071] In an edge-to-core-to-cloud architecture (e.g., as described above) Figure 3 As described in the context, edge devices request services from edge sites and the core data center. Assume that edge devices at the edge sites request a total of N applications or other services. For each application or service A... i Evaluate multiple criteria or parameters to determine the application or service A iIs it more suitable for edge sites or core data centers? Some implementation schemes include these parameters: (1) A i Tolerable latency (e.g., it can be based on via or using A) i The type of business or other task performed), where A i The tolerable delay value is expressed as L. i (2) A running on edge sites i Bandwidth reduction or bandwidth requirement, where A i The bandwidth reduction is represented as B. i ; and (3)A i The number of requests or access frequency (also known as the specific application or service A) i (Popularity level), of which A i The access frequency value is represented as n i .

[0072] Combining these parameters (e.g., using a weighted sum of the values ​​of each parameter) to optimize application or service A i A scoring system is used to determine the performance of A at the edge site. i The suitability of the parameter is considered. In some implementations, EWM is used to calculate the weight of each parameter. EWM provides a weighting method that measures the dispersion of values ​​in the decision. The greater the dispersion, the greater the discriminative power, and the more information is derived, and the higher the weight should be assigned to the parameter.

[0073] Now about Figure 5 This describes the process flow for the automated tiering of applications and services between edge computing sites and core data centers. In step 501, the status of applications and other services is collected. Step 501 may be performed regularly (e.g., periodically, upon user request, etc.). Step 501 includes collecting data on the status of each application or service A. i Related information, including the information collected from application or service A i The information includes the tolerable delay parameter value L. i Bandwidth reduction parameter value B i Request quantity parameter value n i The total number N of applications and services sending requests to the edge site device, where the maximum number of applications and services that the edge site can handle is K. In step 503, it is determined whether the application and service relocation cycle C has been reached. If the result of step 503 is no, then... Figure 5 The process flow returns to step 501. If the result determined in step 503 is yes, then... Figure 5 The process flow proceeds to step 505.

[0074] In step 505, it is determined whether K < N. If K ≥ N, the edge site can handle all applications and services that send requests to the edge site devices it is responsible for. This situation may occur when there are not many active edge devices and associated applications and services. In this scenario, all applications and services can be promoted to the edge site (e.g., there is no need to select K applications and services because K is less than or equal to N in this scenario), and Figure 5 The process flow proceeds to step 513. If K < N, the edge site resources are insufficient to handle all applications and services sending requests to the edge site devices. Therefore, it is necessary to select the top K applications that should be promoted to the edge site. This scenario can be common when edge devices are increasing and active, and can lead to... Figure 5 The process flow proceeds to step 507.

[0075] In step 507, parameter values ​​are standardized (e.g., derived from the state information collected from step 501 for the current relocation cycle C). For each parameter, the units of measurement may differ, and therefore standardization is necessary to eliminate the influence of different units of measurement. This standardization may include normalizing to a specified range (e.g., between 0 and 1). The following equation can be used to standardize the permissible delay L. i Bandwidth reduction B i And the number of requests n i parameter:

[0076]

[0077]

[0078]

[0079] R Li It is the tolerable delay parameter L i The reverse indicator, because applications and services with lower tolerable latency parameter values ​​are more suitable for being promoted to edge sites. Bi and R ni These are the bandwidth reduction parameters B. i and access request parameter n i A positive indicator, where applications and services with higher bandwidth reduction and access request volume parameters are more suitable for being promoted to edge sites. For the tolerable latency parameter L i Bandwidth reduction parameter B i and access request parameter n i Each of these, the set of all applications and services, is denoted as L, B, and n.

[0080] In step 509, the weights of the different parameters are calculated. In some implementations, EWM is used to calculate the tolerable delay parameter L. i Bandwidth reduction parameter B i and access request parameter n i The weights of each parameter. The ratio of each parameter can be calculated using the following formula:

[0081]

[0082] The entropy of each parameter can be calculated using the following formula:

[0083]

[0084] The weight of each parameter can be calculated using EWM according to the following formula:

[0085]

[0086] In step 511, a score is generated for each application or service based on a weighted combination of standardized parameter values. Application or service A i The score is represented as S i And it can be calculated according to the following formula:

[0087] S i =sum(w j ·R ji ) = w L ·R Li +w B ·R Bi +w n ·R ni (i = 1, ..., N)

[0088] In step 513, the top K applications or services are promoted to the edge site. The top K applications and services can be those with the K highest scores from step 511. The set of scores for all applications and services can be represented as S = [S1, S2, ..., S...]. N S can be sorted in reverse order (e.g., from highest to lowest value):

[0089] S = sort(S, descending)

[0090] The top K applications and services best suited for upgrade to the edge site are determined by using the top K scores in the sorted S (e.g., the top K applications and services that will benefit most from upgrades to the edge site). Other applications and services are then upgraded to the core data center. Figure 5 The process can then return to step 501 to wait for the next application and service relocation cycle.

[0091] Figure 6Aand Figure 6B This illustrates the dynamic enhancement of applications and services between an edge site 601, including edge devices 610 (e.g., for wind farms, travel, AR / VR, automobiles, etc.), and a core data center 603 for a given relocation cycle. Figure 6A The diagram illustrates the environment prior to the relocation, where some applications and services in application service 615-1 at edge site 601 are deemed more suitable to run in core data center 603, and some application services in application service 615-2 at core data center are deemed more suitable to run in edge site 601. This can be used... Figure 5 The process flow generates scores for different applications and services 615-1 and 615-2 to determine the suitability of different applications and services (e.g., whether they are better suited to run at the edge site 601 or the core data center 603). Figure 6B The relocation environment is illustrated, where applications and services 615-1' at edge site 601 include those more suited to run at edge site 601, and applications and services 615-2' at core data center 603 include those more suited to run at core data center 603. While edge site 601 in this embodiment has the capability to run all applications and services considered more suited to run at edge site 601 (e.g., examples where K < N), this is not necessary. In other embodiments (e.g., where K ≥ N), only some applications and services considered more suited to run at edge site 601 may be promoted to edge site 601 (e.g., those applications and services with the top K scores).

[0092] It should be understood that the specific advantages described above and elsewhere herein are associated with specific illustrative embodiments and are not required to exist in other embodiments. Moreover, the features and functionality of the specific type of information processing system, as shown in the accompanying drawings and as described above, are merely exemplary, and numerous other arrangements may be used in other embodiments.

[0093] Now refer to Figure 7 and Figure 8 This section describes in more detail an illustrative implementation of a processing platform for enabling automated service tiering between edge computing sites and core data centers. Although described in the context of system 100, these platforms may also be used to implement at least some parts of other information processing systems in other embodiments.

[0094] Figure 7 An exemplary processing platform including cloud infrastructure 700 is shown. Cloud infrastructure 700 includes a combination of physical and virtual processing resources, which can be used to implement... Figure 1 At least a portion of the information processing system 100. Cloud infrastructure 700 includes multiple virtual machines (VMs) and / or container sets 702-1, 702-2, ..., 702-L implemented using virtualization infrastructure 704. Virtualization infrastructure 704 runs on physical infrastructure 705 and illustratively includes one or more hypervisors and / or operating system-level virtualization infrastructures. Operating system-level virtualization infrastructure illustratively includes the kernel control group of a Linux operating system or other types of operating systems.

[0095] The cloud infrastructure 700 further includes application sets 710-1, 710-2, ..., 710-L running on corresponding sets of VMs / containers in VM / container sets 702-1, 702-2, ..., 702-L under the control of the virtualization infrastructure 704. The VM / container set 702 may include a corresponding VM, a corresponding set of one or more containers, or a corresponding set of one or more containers running in a VM.

[0096] exist Figure 7 In some implementations, the VM / container set 702 includes corresponding VMs implemented using a virtualization infrastructure 704 that includes at least one hypervisor. A hypervisor platform can be used to implement the hypervisor within the virtualization infrastructure 704, wherein the hypervisor platform has an associated virtual infrastructure management system. The underlying physical machines may include one or more distributed processing platforms, which include one or more storage systems.

[0097] exist Figure 7 In other implementations of the scheme, the VM / container set 702 includes corresponding containers implemented using virtualization infrastructure 704 that provides operating system-level virtualization functionality, such as support for Docker containers running on bare metal hosts or on VMs. The containers are implemented illustratively using the corresponding kernel control group of the operating system.

[0098] As is evident from the above, one or more of the processing modules or other components of system 100 may each run on a computer, server, storage device, or other processing platform element. Such an element may be considered as an example of what is more generally referred to herein as a "processing device". Figure 7 The cloud infrastructure 700 shown may represent at least a portion of a processing platform. Another example of this processing platform is... Figure 8 The processing platform 800 shown.

[0099] In this embodiment, the processing platform 800 includes a portion of the system 100 and includes a plurality of processing devices, referred to as 802-1, 802-2, 802-3, ..., 802-K, which communicate with each other via a network 804.

[0100] Network 804 can include any type of network, including by way of example, global computer networks (such as the Internet), WANs, LANs, satellite networks, telephone or wired networks, cellular networks, wireless networks (such as WiFi or WiMAX networks), or portions or combinations of these and other types of networks.

[0101] The processing device 802-1 in the processing platform 800 includes a processor 810 coupled to a memory 812.

[0102] The processor 810 may include a microprocessor, a microcontroller, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a central processing unit (CPU), a graphics processing unit (GPU), a tensor processing unit (TPU), a video processing unit (VPU), or other types of processing circuitry, as well as portions or combinations of such circuitry elements.

[0103] The memory 812 can take any combination of forms, including random access memory (RAM), read-only memory (ROM), flash memory, or other types of memory. The memory 812 and other memories disclosed herein should be considered as illustrative examples of the contents of a “processor-readable storage medium” that more generally stores executable program code of one or more software programs.

[0104] Articles of manufacture including such processor-readable storage media are considered illustrative embodiments. A given such article of manufacture may include, for example, a storage array, a storage disk, or an integrated circuit comprising RAM, ROM, flash memory, or other electronic memory, or any of a variety of other types of computer program products. As used herein, the term "article of manufacture" should be understood to exclude transient propagating signals. Many other types of computer program products including processor-readable storage media may be used.

[0105] The processing device 802-1 also includes a network interface circuit 814 for interfacing the processing device with the network 804 and other system components, and may include a conventional transceiver.

[0106] It is assumed that the other processing devices 802 of the processing platform 800 are configured in a manner similar to that shown for the processing device 802-1 in the figure.

[0107] Moreover, the particular processing platform 800 shown in the figure is presented only by way of example, and the system 100 may include additional or alternative processing platforms, as well as a number of different processing platforms in any combination, wherein each such platform includes one or more computers, servers, storage devices or other processing devices.

[0108] For example, other processing platforms used to implement the illustrative implementation scheme may include converged infrastructure.

[0109] Therefore, it should be understood that in other embodiments, different arrangements of additional or alternative components may be used. At least a subset of these components may be implemented together on a common processing platform, or each such component may be implemented on a separate processing platform.

[0110] As indicated above, components of the information processing system disclosed herein can be implemented, at least in part, as one or more software programs stored in memory and executed by a processor of a processing device. For example, at least some portions of the functionality for automated service stratification between edge computing sites and core data centers, as disclosed herein, are illustratively implemented in the form of software running on one or more processing devices.

[0111] It should be emphasized again that the above embodiments are presented for illustrative purposes only. Many variations and other alternative embodiments can be used. For example, the disclosed technology is applicable to a variety of other types of information processing systems, services, parameters, etc. Moreover, the specific configurations of the system and apparatus elements illustrated in the drawings, as well as the associated processing operations, may change in other embodiments. Furthermore, the various assumptions made above in describing the illustrative embodiments should also be considered exemplary and not as requirements or limitations of this disclosure. Numerous other alternative embodiments within the scope of the appended claims will be apparent to those skilled in the art.

Claims

1. An apparatus for automating service tiering, comprising: At least one processing device, the at least one processing device including a processor coupled to a memory; The at least one processing device is configured to perform the following steps: Obtain information associated with multiple services hosted in an information technology infrastructure, the information technology infrastructure including at least one core data center hosting a first subset of the multiple services and one or more edge computing sites hosting a second subset of the multiple services; The values ​​of two or more parameters associated with the suitability of a particular service among the plurality of services hosted at the one or more edge computing sites are determined, at least in part, based on the information obtained. A score for each of the plurality of services is generated, at least in part, based on determined values ​​associated with two or more parameters that characterize the suitability of the respective service among the plurality of services hosted at the one or more edge computing sites. At least one given service to be migrated from the plurality of services is identified based at least in part on the scores of the generated plurality of services, wherein the given service to be migrated from the plurality of services includes one of the following: a service in the first subset of the plurality of services to be migrated from the at least one core data center to at least one edge computing site among the one or more edge computing sites; And one service in the second subset of the multiple services that needs to be migrated from the one or more edge computing sites to the at least one core data center; as well as Migrate the given service among the plurality of services.

2. The device of claim 1, wherein the two or more parameters characterizing the suitability of hosting a corresponding service among the plurality of services at the one or more edge computing sites include at least one parameter characterizing the tolerable latency of the corresponding service among the plurality of services.

3. The device of claim 1, wherein the two or more parameters characterizing the suitability of hosting a corresponding service among the plurality of services at the one or more edge computing sites include at least one parameter characterizing the bandwidth requirements of the corresponding service among the plurality of services.

4. The device of claim 1, wherein the two or more parameters characterizing the suitability of hosting a corresponding service among the plurality of services at the one or more edge computing sites include at least one parameter characterizing the number of access requests for the corresponding service among the plurality of services.

5. The device of claim 1, wherein identifying the given service to be migrated among the plurality of services comprises: Determine the available resources at the one or more edge computing sites; as well as The maximum number of services that can be hosted simultaneously at one or more edge computing sites is identified, at least in part, based on the determined available resources.

6. The device of claim 5, wherein identifying the given service to be migrated among the plurality of services further comprises: Determine whether the total number of the plurality of services that receive access requests during the first service relocation period is less than or equal to the maximum number of the plurality of services that can be hosted simultaneously at the one or more edge computing sites; For a second service relocation period following the first service relocation period, in response to determining that the total number of the plurality of services that received access requests in the first service relocation period is less than or equal to the maximum number of the plurality of services that can be hosted simultaneously at the one or more edge computing sites, all the plurality of services are hosted at the one or more edge computing sites. as well as For the second service relocation period, in response to determining that the total number of the plurality of services that received access requests in the first service relocation period is greater than the maximum number of the plurality of services that can be hosted simultaneously at the one or more edge computing sites, a selected subset of the plurality of services is hosted at the one or more edge computing sites.

7. The device of claim 1, wherein generating the score for each of the plurality of services comprises: Standardize the value of each of the two or more parameters.

8. The device of claim 7, wherein normalizing the value of each of the two or more parameters comprises: For a given parameter among the two or more parameters, normalize the value of the given parameter to a specified range.

9. The device of claim 7, wherein generating the score for each of the plurality of services further comprises: Calculate the weight of each of the two or more parameters.

10. The device of claim 9, wherein computing the weight of each of the two or more parameters comprises: Using the entropy weight method.

11. The device of claim 9, wherein generating the score for each of the plurality of services comprises: For a given service among the plurality of services, a given score is generated by a weighted combination of the standardized values ​​of two or more parameters of the given service among the plurality of services.

12. The device of claim 1, wherein the at least one core data center is geographically located away from the one or more edge computing sites.

13. The device of claim 1, wherein at least one of the one or more edge computing sites stores an image for the given service among the plurality of services, the image for the given service among the plurality of services including at least one of virtual machine images and software container images.

14. The apparatus of claim 13, wherein migrating the given one of the plurality of services comprises: The given service of the plurality of services is migrated from the at least one data center to the at least one edge computing site of the one or more edge computing sites by utilizing at least one of the image instantiated virtual machine instances and software container instances stored by the at least one edge computing site of the one or more edge computing sites.

15. A computer program product comprising a non-transitory processor-readable storage medium therein storing program code of one or more software programs, wherein the program code, when executed by at least one processing device, causes the at least one processing device to perform the following steps: Obtain information associated with multiple services hosted in an information technology infrastructure, the information technology infrastructure including at least one core data center hosting a first subset of the multiple services and one or more edge computing sites hosting a second subset of the multiple services; The values ​​of two or more parameters associated with the suitability of a particular service among the plurality of services hosted at the one or more edge computing sites are determined, at least in part, based on the information obtained. A score for each of the plurality of services is generated, at least in part, based on determined values ​​associated with two or more parameters that characterize the suitability of the respective service among the plurality of services hosted at the one or more edge computing sites. At least in part based on the scores of the generated plurality of services, at least one given service to be migrated from the plurality of services is identified, wherein the given service to be migrated from the plurality of services includes one of the following: a service in the first subset of the plurality of services to be migrated from the at least one core data center to at least one edge computing site among the one or more edge computing sites; And one service in the second subset of the multiple services that needs to be migrated from the one or more edge computing sites to the at least one core data center; as well as Migrate the given service among the plurality of services.

16. The computer program product of claim 15, wherein the two or more parameters characterizing the suitability of hosting a respective service among the plurality of services at the one or more edge computing sites include at least two of the following: At least one parameter characterizing the tolerable latency of a corresponding service among the plurality of services; At least one parameter characterizing the bandwidth requirement of a corresponding service among the plurality of services; as well as At least one parameter characterizing the number of access requests for a corresponding service among the plurality of services.

17. The computer program product of claim 15, wherein at least one of the one or more edge computing sites stores an image for the given service among the plurality of services, the image for the given service among the plurality of services comprising at least one of virtual machine images and software container images, and wherein migrating the given service among the plurality of services comprises: The given service of the plurality of services is migrated from the at least one data center to the at least one edge computing site of the one or more edge computing sites by utilizing at least one of the image instantiated virtual machine instances and software container instances stored by the at least one edge computing site of the one or more edge computing sites.

18. A method for automating service layering, comprising: Obtain information associated with multiple services hosted in an information technology infrastructure, the information technology infrastructure including at least one core data center hosting a first subset of the multiple services and one or more edge computing sites hosting a second subset of the multiple services; The values ​​of two or more parameters associated with the suitability of a particular service among the plurality of services hosted at the one or more edge computing sites are determined, at least in part, based on the information obtained. A score for each of the plurality of services is generated, at least in part, based on determined values ​​associated with two or more parameters that characterize the suitability of the respective service among the plurality of services hosted at the one or more edge computing sites. At least in part based on the scores of the generated plurality of services, at least one given service to be migrated from the plurality of services is identified, wherein the given service to be migrated from the plurality of services includes one of the following: a service in the first subset of the plurality of services to be migrated from the at least one core data center to at least one edge computing site among the one or more edge computing sites; And one service in the second subset of the multiple services that is to be migrated from the one or more edge computing sites to the at least one core data center; as well as Migrate the given service among the plurality of services; The method is performed by at least one processing device, which includes a processor coupled to a memory.

19. The method of claim 18, wherein the two or more parameters characterizing the suitability of hosting a corresponding service among the plurality of services at the one or more edge computing sites include at least two of the following: At least one parameter characterizing the tolerable latency of a corresponding service among the plurality of services; At least one parameter characterizing the bandwidth requirement of a corresponding service among the plurality of services; as well as At least one parameter characterizing the number of access requests for a corresponding service among the plurality of services.

20. The method of claim 18, wherein at least one of the one or more edge computing sites stores an image for the given one of the plurality of services, the image for the given one of the plurality of services comprising at least one of a virtual machine image and a software container image, and wherein migrating the given one of the plurality of services comprises: The given service of the plurality of services is migrated from the at least one data center to the at least one edge computing site of the one or more edge computing sites by utilizing at least one of the image instantiated virtual machine instances and software container instances stored by the at least one edge computing site of the one or more edge computing sites.