Cloud Service Provider Selection

Shalika Prasad
7 min readOct 12, 2020

Abstract

Cloud computing (CC) has recently been receiving tremendous attention from the IT trade and educational researchers. CC leverages its distinctive services to cloud customers in a very pay-as-you-go, anytime and anyplace manner. As well as Cloud services offer dynamically scalable services on demand. Therefore, service supplying plays a key role in CC. Then, it is good opportunity for customers to find suitable and lowly cost service for their project. Specially, Customer must be able to select appropriate cloud service according to their needs and money. It is time-consuming task for consumers to collect the necessary information and analyze from all cloud service providers to make right decision. As well as it is also a highly demanding task from a computational perspective because multiple consumers who have similar requirements conduct same computations repeatedly. For solving the cloud service selection problem, many researchers have proposed some approaches including multicriteria decision analysis (MCDA) and Brokerage-Based Approach. But we cannot see any machine learning prediction system for solving this issue. This system enables the user to choose from among a number of available choices. In this paper, we make a neural network with TensorFlow to service selection in CC. This system focuses on three main players in CC. There are Amazon Web Services, Microsoft Azure and Google Cloud Platform in the race for cloud services providers. I identify and synthesize several products relevant for web services in Cloud providers. There are Featured, Compute, Storage, Database, Networking, Operation, Identity & Access and Cost. As well as I focus on Small and medium-sized businesses (SMBs). Because these are most aggressive segment in cloud service. It is less-complex IT needs, fewer legacy applications and less IT support than larger enterprises. According to McKinsey’s research [1], he confirms about usage of subscription or on-demand technology services as SMBs (few 250 employees) > (larger companies) * 2. As well as He categorized company sizes as very small (5–19 employee), small (20–99) and medium (100–250) like these.
They provide all products you might need for moving your business to the cloud. But these product offerings differ in pricing as well as the naming of their services. Some Businessmen already may use on-premise infrastructure or think which infrastructure will use for my project. They may have more complex problems like how to choose a cloud service, which services want use and specially how many costs want to pay for monthly or yearly. Sometimes, someone already use a cloud services, they have lot of problems like more expensive, less flexibility, hard to use, overwhelming options of services, poor management of GUI and tool, complex price schema and other issues. However, they must spend more price and time as useless. Because they could not select best cloud service provider early to their business. As well as, if these company would move data from one cloud to another, that is elaborate time-consuming and expensive. Small companies or individuals do not have the software architect or experienced software engineers. Thus, some businesses may break, get low profits, and spend more costs without using all provided benefits too.
Therefore, a systematic solution will be developed to predict which cloud service use for your project powered by Artificial Intelligence. Predict which service provider is good, and cost prediction. In addition special thing is minimizing your cost according your web project (Java, Python, C++, Angular and React) that will be given through the system and we highlight several services (Region, Compute, Storage, Database, Networking, Operation, Identity & Access and Pricing Model). You want to use for minimizing cost. The main end user of the system is data of these cloud service providers. As well as You can know which cost usage might be able to spend weekly, monthly or yearly according to web traffic for your projects. The other indirect end users are software architects, the employees of web development and expert web freelancers. We prove the effectiveness and efficiency of our approach with real and synthetic cloud data.

Conclusion part 01:

You can see that we want to good methodology for selecting best cloud service for our project, because It will change project by project. If you select wrong, low quality, high price service then it can be affect your business directly. So, we go what are the methodologies used previously for selecting services.

Previous Methodologies

1. A novel brokerage-based architecture

  • They design a unique indexing technique for managing the information of a large number of Cloud service providers. They develop an efficient service selection algorithm that rank potential service providers and aggregate them if necessary. They have proved it using an experiment study with real and synthesis cloud data.
    • A Cloud broker is an intermediary between users and service providers. It helps the users choose services tailored to their needs.
    • The Cloud broker, which has a contract with the Cloud service providers, collects their properties (e.g., service type, unit cost, and available resources), and the consumer’s service requirements.
    • This architecture includes two key technical issues.
    o Construction of the index for managing the service providers.
    o Query algorithm for the service selection.
    • A. Indexing Cloud Service Providers
    o CSP-index is developed using the B+-tree (it is important to design an efficient index structure to facilitate information management and retrieval.)
    o B+ -tree is widely adopted in commercial database systems and provides the great foundation for our new index structure to be easily integrated to existing systems.
    o The internal nodes of the CSP-index have the similar format as the B+ -tree and serves as the search directory.
    o They use bellow measures as data structure.
     Service Type, Security, Quality of service, Measurement units, Pricing Units, Instance sizes, Operating system, Pricing, Pricing sensitivity, Subcontractors.
    o Index Construction:
     Property Encoding — This encoding differs according to the types of the properties. E.g.: [(10G, ∞), (1G,10G), (500M,1G), (0,500M)]. If the storage capacity of a service is 800M to 2G => encoding ‘0110’.
     Relationship Encoding — It represents the relationship using a binary bit array with three bits. E.g.: 1 bit for subcontractors are present, 2 bit for subcontractor provides computational or storage services, 3 bit for subcontractor provides security, privacy, or search related services.
     Index Key Generation — It generates the integrated encoding by concatenating the bits representing the service type with the XOR-ed results of the remaining property encodings.
    • E.g.: We suppose, SP1 service provider provides bellow,
    1. service type ‘0001’, 800M to 2G storage space to each end user at 10 cents/min with medium service quality and medium privacy protection.
    2. ‘0110’(storage), ‘010’(cost), ‘010’ (service quality), ‘010’(privacy)
    3. Integrated Encoding (Esp1) = 0001|| (0110 ⊕ 010 ⊕ 010 ⊕ 010) = 00010100
     k-means algorithm — k is number of service types. Hamming distance (denoted as Dh) is between the encoding of each service provider and its closest cluster center. S means a scaling value is used to partition the dimensional space into regions, where each region holds a cluster of points. It depends upon the number of regions we aim to generate. Espi is the property encoding of service provider i. Eck is the encoding of the cluster center ck which is closest to the service provider i.
    • Keyspi — S · k + Dh (Espi, Eck)
     Query Definition —
    • A user sends a service selection query to the broker which specifies what properties and values he/she expects from the service providers.
    • Q = (QP1 : D1),(QP2 : D2),…,(QPk : Dk)
    • QPi (1 ≤ i ≤ k) => property that the user requests the service provider to possess
    • Di is the user expected values of property (requested value)
    • The result of the query will be the service provider that satisfies the most property requirements.
    • E.g.: Q = (Service Type: 0001), (Cost: [50cents/min, 80cents/min]))
     Generation of Testing Datasets — They identified and extracted a set of common properties based on common business recommendations for service selection.
    E.g.: Service Type:
    • 1- service on-demand
    • 2 — reserved instances
    • 3 — specialized services such as custom Ips
    • This gave us our starting set of ten data points and shaped the representation of service providers.
    • With the starting data points, we generated 10,000 data points representing synthetic providers.
    • They use a pseudo random number generator to generate a subset of the total possible 1010 combinations and filter out the outliers.

2. Multicriteria Decision Analysis

  • MCDA is modeled after the way humans are thought to make decisions. MCDA assists in decision making mainly by choosing, ranking, or sorting the actions.
    • MCDA is not only a collection of theories, methodologies, and techniques but also a specific perspective for dealing with decision-making problems.[3]
    • It demonstrates the integration of MCDA techniques and cloud computing based on their usage and popularity. Hence, they reviewed the current literature and identified the different types of problems.
    Goal:
  • MCDM is a collection of methodologies for comparing, ranking, and selecting multiple alternatives, each having multiple attributes. It depends on a matrix called the evaluation matrix, decision matrix, payoff matrix, or evaluation table.
  • MCSP selects the best alternative from a finite set of alternatives, all of which are known a priori.
  • MCMP selects the best alternative from a very large or infinite set of alternatives, not all of which are known a priori.
  • MAUT finds a utility function reflecting the usefulness of a particular alternative.

MCDA methods can be categorized into two types:

  • multi attribute utility theory (MAUT) — find a function reflecting the utility or usefulness of a particular alternative.
    o outranking methods — It is better in scenarios with a small number of alternatives (hope to compare types) but a large number of criteria.
  • AHP (Analytic Hierarchy Process) is based on a pairwise comparison. a popular and widely used method for MCDA. After making the comparisons, the best alternative with respect to each attribute is usually selected.
  • They present several applications of these MCDA methods in the selection of cloud services. They compare several methods by synthesizing and reviewing the present literature. Several real-world examples with current applications of different methods are provided.

--

--