A Multi-Criteria Multi-Cloud Service Composition in Mobile Edge Computing

: The development of mobile edge computing (MEC) is accelerating the popularity of 5G applications. In the 5G era, aiming to reduce energy consumption and latency, most applications or services are conducted on both edge cloud servers and cloud servers. However, the existing multi-cloud composition recommendation approaches are studied in the context of resources provided by a single cloud or multiple clouds. Hence, these approaches cannot cope with services requested by the composition of multiple clouds and edge clouds jointly in MEC. To this end, this paper ﬁrstly expands the structure of the multi-cloud service system and further constructs a multi-cloud multi-edge cloud (MCMEC) environment. Technically, we model this problem with formal concept analysis (FCA) by building the service–provider lattice and provider–cloud lattice, and select the candidate cloud composition that satisﬁes the user’s requirements. In order to obtain an optimized cloud combination that can efﬁciently reduce the energy consumption, money cost, and network latency, the skyline query mechanism is utilized for extracting the optimized cloud composition. We evaluate our approach by comparing the proposed algorithm to the random-based service composition approach. A case study is also conducted for demonstrating the effectiveness and superiority of our proposed approach.


Introduction
The rapid development of cloud computing has gradually facilitated the popularity of data-intensive services. The issue of cloud service portfolios has attracted much attention in recent years from both industry and academia. Cloud computing environments have also become the best computational paradigm for satisfying the requirements of users by using multiple resources simultaneously.
To fulfill user requirements, the process of service execution on clouds is usually modeled with a multi-provider multi-service system architecture. After users' service requests, multiple clouds and services provided by multiple providers can be combined into a set of interacting services to provide a cloud-based solution that meets specific quality standards [1].
A centralized approach to big data processing, with the cloud computing model as its core, centralizes and unifies the management of a large number of resources. The dynamic allocation of the requests is efficient and adapted to business needs. However, the fully centralized model suffers from • Novel Problem Formulation: Mobile edge computing is a key emerging technology in the 5G era, providing cloud computing while users are at the edge of the network, and it expands the architecture of cloud service composition recommendation systems. This paper pioneers a novel problem on energy-efficient multi-cloud composition in MEC. • FCA-Based Modeling: This paper proposes a multi-cloud multi-edge cloud (MCMEC) environment by using FCA. We describe the MCMEC with a set of clouds and edge clouds, a group of providers, and their offered services. Importantly, two kinds of concept lattices are generated by FCA theory for better characterizing the hosting relationships between them. • Skyline-Based Cloud Composition Optimization: By presenting a skyline query in a multi-value environment and an approach for skyline layer construction, we devise an algorithm for determining the optimal cloud composition with the joint considerations of energy, network latency, and cost.
The rest of this paper is organized as follows. Section 2 details the preliminary knowledge of FCA and skyline queries. The multi-cloud multi-edge cloud service composition problem is provided in Section 3. Section 4 presents our approach/algorithm and the way that FCA and the skyline query are applied to the multi-cloud multi-edge cloud service composition problem. Section 5 provides the performance evaluation and a case study for revealing the effectiveness of the proposed algorithm. The related work is surveyed in Section 6. Finally, Section 7 concludes the paper and outlines the future work.

Preliminaries
This section mainly presents the preliminary knowledge about FCA [9][10][11] and skyline queries [12,13], which we are going to utilize for addressing our problem in this paper. FCA is often used in the field of data analysis as a classic computational intelligence technique. A formal concept is defined to characterize the relationships between objects and attributes in a domain. Specifically, the objects and attributes are grouped into concepts, and then a conceptual hierarchy of the concepts can be constructed.
where O denotes the set of objects, A indicates the set of attributes, and R is the set of binary relations between the objects and the attributes (R = O × A). If (x, a) ∈ R, we know x has a relationship with attribute a, which could be defined the value as "1", or "0" otherwise. Definition 2. Formal Concept. Given a formal context K = (O, A, R), a formal concept is represented as a pair of sets (E, I) such that E ⊆ O and I ⊆ A. There are two parts in the grouping of the formal concept: The extent E congregates the objects that share a sub-set of common attributes, and the intent I is formed by these common attributes shared by all objects in E. Definition 3. Concept Lattice. Given a formal context K = (O, A, R), a concept lattice L = (C(K), ≤) can be obtained by all formal concepts C(K) of a context K with the partial order relation ≤. Its graphical representation is a Hasse diagram. Definition 4. Dominance Relationship. If a point p = {p 1 , p 2 , · · · , p n } dominates a point q = {q 1 , q 2 , · · · , q n }, it donates p < q satisfying ∀i ∈ {1, 2, · · · , n}, p i ≤ q i , ∀j ∈ {1, 2, · · · , n}, p j < q j . In other words, it shows that in any one dimension, values will be lower than or equal to the point q in the corresponding dimension value, while there is at least in one dimension in which the p value is superior to the q value.
Definition 5. Skyline. The skyline consists of the points that are not dominated by other points in the given dataset. Table 1 illustrates a set of points G = {g 1 , g 2 , · · · , g 9 } and their corresponding two-dimensional values. Clearly, we utilize the definition of the dominance relationship to obtain their relationships that exist g 4 < g 1 , g 4 < g 2 , g 4 < g 3 , g 8 < g 5 , g 8 < g 6 , g 8 < g 7 , g 8 < g 9 . So, the skyline contains {g 4 , g 8 }.

Problem Statement
MEC architecture is mainly composed of edge cloud servers and cloud servers. As locations move, users who want to access the same services may switch to different cloud platforms in order to decrease energy consumption and shorten the time delay of transaction. In this section, the main purpose of this paper is to extract the cloud composition with the optimal reliability and service performance based on the service requests given by the user in an MCMEC environment to complete the response to the user.
First of all, some key definitions of MEC, service requests, energy consumption between clouds, and prices of clouds are formally defined. Then, the problem formalism is presented mathematically.

Definition 6. Multi-Cloud and Multi-Edge Cloud Environment.
A multi-cloud and multi-edge cloud environment (MCMEC) is composed of a set of clouds C = {C 1 , C 2 , · · · , C m } and a set of edge clouds EC = {EC 1 , EC 2 , · · · , EC n }, where C i /EC j (1 ≤ i ≤ m, 1 ≤ j ≤ n) is a cloud/edge cloud that hosts a set P of providers, P ⊆ {P 1 , P 2 , · · · , P h }. A provider may belong to more than one cloud or edge cloud, and it offers a set of services, S ⊆ {S 1 , S 2 , · · · , S k }.
Example 2. Table 2 shows an example of the MCMEC environment, including 40 services with different functional capabilities that are offered by 10 providers hosted in the set of clouds and edge clouds. The cloud C 1 contains three providers that offer 11 services. Meanwhile, many providers might be hosted by some different clouds (e.g., providers P 1 , P 2 , P 3 , P 6 , P 8 , and P 10 ), and several services might be offered by different providers. Table 2. A typical case of a multi-cloud multi-edge cloud (MCMEC) environment. Clouds Providers P 1 P 2 P 6 P 2 P 6 P 7 P 8 P 10 P 3 P 4 P 5 P 9 Services 5 2 4 2 6 11 3 5 7 2 3 8 Edge Clouds Providers P 1 P 2 P 3 P 6 P 7 P 8 P 10 P 1 P 8 P 3 P 9 P 10 Services 5 2 7 4 11 3 5 5 6 7 8 5 Definition 7. Service request. A user's service request is defined as a composition of n services, i.e., R = {S 1 , S 2 , · · · , S n }. There are several candidate compositions of clouds that enable providers to fulfill the requested service at the same time.
From a practical point of view, most users will consider the price and quality of service (QoS) attributes of the clouds when purchasing cloud services; thus, this work will measure the excellence of the obtained candidate cloud compositions in terms of network latency, cloud price, and energy consumption.
To model the communication network between clouds/edge clouds, we formulate the MCMEC as a weighted undirected graph G = (V, E, W, T) where V = C ∪ EC is a set of clouds and edge clouds, E ∈ V × V, which is the set of communications between cloud/edge clouds, and C i ∈ V, C j ∈ V. Definition 8. Energy Consumption between Clouds. The set of energy consumption caused by the communication between two clouds is expressed as W. We use W to denote the energy consumption of a cloud composition obtained from the MCMEC. Its consumption can be categorized as follows.
(1) The energy consumption for cloud-only composition is calculated by (2) The energy consumption for edge-cloud-only composition is calculated by (3) Cloud composition is composed of both clouds and edge clouds, where the energy consumption includes the sum of the energy consumption between each cloud, the sum of the energy consumption between each edge cloud, and the sum of the energy consumption between the cloud and edge cloud. Its energy consumption is represented as:

Definition 9. Monetary Cost of Cloud Sets.
Monetary expense is a necessary consideration for people in choosing a composition of clouds. Therefore, the price of each cloud/edge cloud will be investigated and listed to work out the monetary cost of a cloud set. Let us assume that the candidate cloud composition is Ci, · · · , ECj. Its monetary cost is calculated as follows.
where P C i is the price of cloud C i and P EC j is the price of edge cloud EC j .

Definition 10. Network Latency of Cloud Sets.
Adding up all the values in the network latency matrix composed of cloud and edge clouds is the network latency of the cloud composition. It is formulated as

Problem Description
In this work, the candidate cloud/edge cloud compositions are firstly obtained through the FCA model once a user's request comes into the MCMEC environment. When we want to select proper multi-cloud composition, three dimensions are jointly considered, i.e., energy, monetary cost, and network latency.
Skyline querying is a very important point query technique in multidimensional database.s Here is a motivating example: "Nassau Hotel" is based on the two objectives of "cheap" and "close to the beach", assuming that when visiting Nassau Beach, most tourists must first look for a cheap hotel close to the beach. However, hotels that are generally closer to the beach are more expensive, so there will not be a definitive result, only a series of results returned for the user to choose from. The distances and prices of these hotels are not "worse" than those of other hotels, i.e., there are no points closer to the same price. Therefore, our problem can be regarded as a skyline problem.
The multi-criteria, multi-cloud, and multi-edge cloud service composition problem is described as: In an MCMEC environment, G = (V, E, W, T); when a service request R is given, the target of the problem is to recommend cloud/edge cloud composition CC with the multi-criteria optimizations, i.e., minimized monetary cost Min( P), minimized energy consumption Min( W), and minimized network latency Min( T).
Service request R is an input into the concept lattices of the MCMEC to acquire the providers and multi-cloud/edge cloud compositions. We consider some key factors like price, energy consumption, and network latency related to an optimal cloud composition. Obviously, our problem is viewed as a multi-criteria optimization problem [14]. The coordinate system is established for every two factors, and the cloud composition obtained in the previous step is subjected to skyline layer computation; then, the cloud/edge cloud composition should minimize monetary cost Min( P), energy consumption Min( W), and network latency Min( T). Therefore, the intersection of the first layer is the optimal cloud combination we are looking for.
In the MCMEC environment, a solution to the selection of recommended clouds based on the skyline query is attempted. This approach considers energy consumption, price, and network latency to be equally important, and skyline hierarchical calculations select the optimal cloud composition under multi-factor optimization, successfully achieving trade-offs between different optimization goals.

Proposed Approach
Before clarifying the concrete steps of FCA-based candidate cloud/edge cloud composition and skyline layer computation for obtaining the optimal cloud/edge cloud composition, the framework of our problem is first introduced in this section. Figure 1 shows a framework of energy-efficient multi-cloud service composition in mobile edge computing.  The main steps for screening and recommending multi-cloud multi-edge cloud compositions are laid out in this section. A brief description is given below.

•
Step 1: FCA-based MCMEC composition selection: This step mainly applies FCA theory to construct a Service-Provider lattice and Provider-Cloud lattice stemming from the formal contexts of the MCMEC. When a user makes a service request R, the Service-Provider lattice will filter candidate providers who provide acquired services according to the relationship between service and provider. Then, depending on the provider compositions, the cloud compositions in the Provider-Cloud lattice that have those providers are also acquired. With this step, we can get candidate cloud/edge cloud compositions that are likely to satisfy the customer's request.

•
Step 2: Skyline query for cloud/edge cloud recommendation: In the previous step, we obtained the candidate cloud/edge cloud compositions. For each cloud combination, three values can be calculated from each of the three dimensions of energy consumption, price, and network latency. This implies that a list of cloud/edge cloud compositions and properties can be obtained. After that, we take the values of each two dimensions and make the skyline layer computation, and then we interact their first layer, which results in an optimal cloud/edge cloud composition.

FCA-Based Multi-Cloud Service Composition Selection
Two types of formal contexts that characterize the connection between the providers and the services provided by the providers in a cloud, as well as the relationship between all cloud platforms and the resident providers, respectively, are built initially. Next, a concept lattice generation algorithm [15,16] is utilized to construct the Service-Provider lattice and Provider-Cloud lattice.
Example 3. Assume that there are four cloud/edge cloud hosting 10 providers, in which the Service-Provider lattice and Provider-Cloud lattice are modeled as follows. We take the clouds/edge clouds {C 1 , C 2 , EC 1 , EC 2 } as the objects and the providers {P 1 , P 2 , P 3 , P 4 , P 5 , P 6 , P 7 , P 8 , P 9 , P 10 } as the attributes in the formal context, and then the concept lattice (Provider-Cloud lattice) is generated using the concept lattice generation algorithm, as shown in Figure 2. Similarly, we take the services as the objects and the providers as the attributes in the formal context, and further construct the Service-Provider lattice of Cloud 1, which is shown in Figure 3.  After obtaining the Service-Provider lattice of each cloud, the service request R enters the first Service-Provider lattice appropriately. After that, R is checked with the extent of each concept c j for matching. While intersection is not empty, the corresponding intent of c j is deposited into a collection with the intersection, removing it from R. All concepts are then iterated until all individuals of R get paired. The obtained candidate provider compositions are deemed as input to the Provider-Cloud lattice. Similarly to the former process, we make the intersection operation on candidate provider compositions and concept c j . The intents that have the set of providers will come into a collection, and we can gain the candidate cloud/edge cloud compositions.

Skyline Layer Construction
For each cloud composition, three values can be calculated from each of the three dimensions of energy consumption, price, and network latency, which means that a list of cloud/edge cloud compositions and properties can be obtained. Inspired by the classic skyline hotel problem, our solution idea is to treat the cloud/edge cloud composition as a point where properties can be used to build coordinate systems. In this way, the cloud/edge-cloud composition optimization problem is abstracted to a skyline problem.
We take the values of every two dimensions and make the skyline layer computation, then repeat the above steps. Finally, we interact with the first layer of each time, which results in optimal cloud/edge cloud composition. We are obviously in possession of candidate cloud/edge cloud compositions that are treated as points. For example, the points below g 1 , g 2 , g 3 , g 4 , g 5 , g 6 , g 7 , g 8 , g 9 represent candidate cloud/edge cloud compositions CC 1 , CC 2 , CC 3 , CC 4 , CC 5 , CC 6 , CC 7 , CC 8 , CC 9 , respectively. Based on the data of price (d 1 ), energy consumption (d 2 ), and network latency (d 3 ) in the MCMEC, we figure out the multi-valued attributes of points in Table 3. Moreover, a set of two-dimensional data points for representing cloud/edge cloud compositions is represented in Figure 4.  Definition 11. Skyline Layer Computation. A skyline layer structure (SLS) is introduced to organize objects and represent dominance relations. A skyline layer structure is introduced to group objects and indicates dominance relations. Given a set of objects P in two-dimensional space, a skyline object of P is enclosed in the skyline layer L 1 , i.e., L 1 = Skyline(P). The second skyline layer, L 2 , maintains the skyline object of P with the removal of the object in L 1 , i.e., L 2 = Skyline(P − L 1 ). Basically, the i t h skyline layer consists of what dominates P − ∑ i−1 k=1 L k . Repeat the above process iteratively until all points in P are assigned to the skyline layer structure. Figure 4 demonstrates the skyline layer structure of the object in Table 1.
We considered three dimensions, as presented in Table 3. Let us take Figure 4 as an example; d 1 , d 2 are selected as a given two-dimensional space. Each point is compared with the other points in turn, and if the values of both dimensions match the dominance relationship, the skyline object g 4 , g 8 of the entire set of points is derived, which forms the skyline layer L 1 . After removing the points of L 1 , we repeat the above steps to select g 1 , g 9 , which form the skyline layer L 2 . Similarly, the skyline layer L 3 and skyline layer L 4 are constructed. Eventually, the directed skyline graph is constructed, as shown in Figure 5. The above process demonstrates the two-dimensional space d 1 , d 2 skyline layer construction; however, this cloud/edge cloud composition optimized recommendation must be conducted over a three-dimensional space. Hence, we adopt the same method to perform skyline layer construction for the d 2 , d 3 dimensional point set and d 1 , d 3 dimensional point set. Finally, three directed skyline graphs are easily obtained.

Multi-Cloud Service Composition Recommendation Based on a Skyline Query
In the previous section, three directed skyline graphs are obtained. It can be seen from the previous example that the points of Layer 1 in SLS 1 keep the monetary cost smaller, but no other point of energy consumption is less than it, or energy consumption is smaller, but no other point of monetary cost is less than it in some context when price and energy consumption are equally important. Skyline Layer 1 is what we need and is optimal, satisfying the needs of users with multiple properties. Taking out the points of the first layer, candidate cloud/edge cloud compositions are reduced from 9 to 2 numerically. For instance, g 8 , g 4 are probably the best choice, g 4 has the lowest price with relatively low energy consumption, while the g 8 has both minimal monetary cost and energy consumption.
However, SLS 1 is extracted when the factors of price and energy consumption are considered as a skyline layer computing structure. In order to achieve the trade-off between price, energy consumption, and network latency, the point sets of the first layers in SLS 1 , SLS 2 , and SLS 3 obtained in the previous section all become the new candidate cloud/edge cloud compositions, and then they are brought out together for an intersection. Subsequently, the final recommended cloud/edge cloud compositions are the points that repeat the most after the intersection. This can be illustrated briefly by the data of Table 3.
Based on the way of constructing the skyline layers in Algorithm 1, three SLSs were obtained. The hierarchy of SLS 1 is shown in Figure 4. The first layer of SLS 1 has two points at g 4 , g 8 , which carry forward the advantages of the skyline query theory. It performs better in both the d 1 and d 2 dimensions. Similarly, the first layer of SLS 2 is constructed to be g 4 and g 8 in the dimensions of d 2 and d 3 , and the first layer of SLS 3 contains a point of g 8 below the dimensions between d 1 and d 3 . Three lists, respectively expressed as {g 4 , g 8 }, {g 4 , g 8 }, and {g 8 }, would be intersected to search for the one that repeats the most. Consequently, the optimal cloud/edge cloud composition is g 8 .
It is necessary to compare multiple QoS attributes of all candidate cloud/edge cloud compositions when recommending cloud/edge cloud compositions. The approach of skyline layer construction eliminates redundant candidate points, which obviously reduces the selection space.
Furthermore, the skyline embodies the trade-off between diverse factors of cloud composition. Skyline cloud/edge cloud compositions are not comparable without explicitly giving priority to QoS attributes. The results of our methodological selection preserve more valuable QoS information. With the intersection of different new candidate cloud/edge cloud compositions, the user's multi-dimensional QoS requirements can be satisfied in all aspects.
Based on the FCA and skyline query theories, we finally calculate and recommend the optimal cloud/edge cloud composition for current users via Algorithm 1. Construct directed skyline graph for cloud/edge cloud composition CC k 15 return SLS 3 ; The above algorithm works as follows. It takes MCMEC G, a service request R, a set of cloud prices A, and a user U as the inputs of the algorithm. The output of the algorithm is cloud/edge cloud composition CC. Lines 1-2 are used to construct the Service-Provider formal context and Provider-Cloud formal context, and then generate the corresponding concept lattices L 1 and L 2 , respectively. Line 3 is to obtain the possible candidate cloud/edge cloud composition. Lines 4-17 are in charge of constructing the directed skyline graphs under different combinations of two-dimensional spaces. Then, the algorithm goes to extract the first layers from the obtained directed skyline graphs (Lines [18][19][20]. Line 21 is to make the intersection among the first layers L 11 , L 21 , L 31 . After that, it finally returns the optimized cloud/edge cloud composition CC (Line 22).

Evaluation
In this section, we evaluate the effectiveness of the proposed approach through comparison experiments and a concrete case study.

Evaluation
To demonstrate the effect of the approach proposed in Section 4, we adopt a random approach to select the cloud composition for the comparison with our approach. To guarantee the fairness and stability of the random approach, our experiment adopts the data in Table 3 to yield the 10 random cloud compositions g 6 , g 1 , g 6 , g 8 , g 4 , g 5 , g 1 , g 1 , g 1 , as shown in Table 4, and evaluate their performance by calculating the average values of these cloud compositions in terms of different dimensions d 1 , d 2 , and d 3 , as shown in Table 5. Figure 6 depicts the comparison results of two approaches. It is easily found that our approach can significantly reduce the monetary cost, latency, and energy consumption compared to the random approach.

Case Study
Suppose that our MCMEC environment is shown in Table 2; when we enter the service request R = {S 1 , S 3 , S 4 , S 7 , S 8 , S 9 } into the MCMEC environment, it is the provider's turn to provide services based on the information about the provider and the services they provide.
}, which all satisfy the basic needs of the user. However, we expect to recommend to our users a cloud/edge cloud composition that achieves the lowest and most balanced state in terms of monetary cost, energy consumption, and network latency. As the skyline query theory works particularly well, similarly to the classic hotel recommendation problem, the cloud/edge cloud combination is viewed as a hotel in our case study. Table 3 shows the data related to the nine cloud/edge cloud compositions. Based on the way of constructing the skyline layers in the algorithm, three SLSs were obtained. The hierarchy of SLS 1 is shown in Figure 4. The first layer of SLS 1 has two points at g 4 and g 8 , which carry forward the advantages of the skyline query theory. It performs better in both the d 1 and d 2 dimensions. Similarly, the first layer of SLS 2 is constructed to be g 4 and g 8 , and the first layer of SLS 3 contains a point of g 8 .

Related Work
Since this research covers two directions, service composition in a multi-cloud environment and skyline query processing, we will provide an overview of the state of the art of these two categories.

Service Composition in a Multi-Cloud Environment
Web service composition technology integrates multiple web services and forms a function that can satisfy a single user's new services for providing more complex services to meet the complex needs of different users. Service composition technology has also attracted widespread attention from academia and industry. Particularly, service composition in multi-cloud environments is becoming more and more complex. Mezni et al. [6] proposed a multi-cloud service composition approach based on FCA, and they used FCA to represent and combine information of multiple clouds, then extracted the optimal cloud composition with the smallest number of clouds. Pang et al. [17,18] adopted FCA to develop a sustainable strategy for multi-cloud service composition by considering multiple criteria, such as energy consumption between clouds, monetary cost, and trust between users and clouds. Tang [19] proposed a holistic model, Function, Auditability, Governability and Interoperability (FAGI) to help a cloud service consumer to engage and select a trusted cloud service provider. Gutierrez-Garcia [20] presented a self-organizing and agent-based cloud service composition approach. Specifically, cloud participants and resources are implemented and instantiated by agents, which sustain a three-layered self-organizing multi-agent system. Recently, a collaborative Service Level Agreements (SLA) and reputation-based trust management (RTM) solution for federated cloud environments was developed in [21].
In multi-cloud environments, the optimization of service composition with multiple criteria is a key research issue. However, there exists a research gap about service composition in an MCMEC environment.

Skyline Query Processing for Service Composition
Zhang et al. [22] attempted to discover appropriate services and compose them with guaranteed quality of service (QoS); they further proposed an integrated skyline query processing method for building up cloud-based applications. Alrifai et al. [23] utilized a skyline query processing technique to extract the candidate services that cannot dominated by others in each service group, which can reduce search space and improve the efficiency. Wang et al. [24] devised a fast cloud-based web service composition approach. Their approach utilizes skyline query processing and particle swarm optimization to achieve cloud-based web service composition. Guo et al. [25] adopted skyline query processing to prune redundant services, and performed skyline service selection using 0-1 mixed-integer programming.
In summary, the skyline query processing technique has been broadly used to prune the redundant services from the global perspective and improve the efficiency of the service composition. To fill in the above research gap on service composition in an MCMEC environment, this work adopted an FCA methodology to obtain the candidate cloud/edge cloud compositions, then filtered out the optimal cloud/edge cloud composition with the advantage of skyline query processing.

Conclusions
This paper aims to provide a solution to the cloud service composition problem in an MCMEC environment. In order to select a sustainable cloud composition with lower energy consumption and monetary cost as well as short network latency, we propose an algorithm that effectively recommends the optimal cloud/edge cloud composition. After the user makes a service request, we select a possible candidate provider's composition and then determine the cloud/edge cloud candidate compositions based on the internal correlation between the clouds and providers. In addition, considering that there might be more candidate cloud/edge cloud candidate compositions, it is worth considering whether the cloud/edge cloud combination is a sustainable one that meets the optimization constraints on reducing energy consumption, monetary cost, and network latency. Existing research only focuses on reducing the number of clouds, and cannot flexibly provide the best cloud composition in a dynamic network environment. Our work integrates the skyline query theory and extracts the cloud/edge cloud composition in terms of different dimensions. An evaluation and a case study are provided to validate that our proposed cloud/edge cloud composition is the most sustainable and can be recommended to users in terms of monetary cost, latency, and energy.
In future work, we will conduct service composition by considering the dependency of complicated requests for services.