CompTIA Cloud+ Study Guide. Ben Piper
Чтение книги онлайн.

Читать онлайн книгу CompTIA Cloud+ Study Guide - Ben Piper страница 26

СКАЧАТЬ on-prem solutions. And of course, PaaS services and tools for developing and deploying applications are limited only by the vast number of programming languages out there.

      Internet of Things

      The ubiquitous access and elasticity enabled by the cloud has birthed a phenomenon called the Internet of Things (IoT). IoT describes the explosion of small, purpose-built devices that typically collect data and send it to a central location for processing. Some examples of IoT devices include temperature sensors, remote-controlled thermostats, and electronic buttons you push to order a new bag of kitty litter effortlessly. Some cloud providers sell such devices that you can program and integrate with the provider's IoT services.

      Machine Learning/Artificial Intelligence (AI)

      Machine learning/artificial intelligence (ML/AI) is fundamentally concerned with finding patterns in data. The popularity of ML/AI is growing rapidly because of its ability to make predictions and classify or label data in datasets that are too large to work with manually.

      With all of the hype surrounding ML/AI, it's important to understand what it can't do. It can't autonomously write a coherent novel. It can't predict tomorrow's winning lottery numbers. In fact, the applications of ML/AI are much more limited than many assume. The capabilities of ML/AI are limited to three things:

       Making predictions—for example, forecasting the weather or calculating the arrival time to a destination

       Identifying patterns—Recognizing objects in images and classifying them according to their contents

       Identifying anomalies—Detecting fraud or hacking attempts

      ML/AI requires significant human input, and some applications require more human input than others. In fact, ML/AI is broken down into learning models based on the degree of human input required for them to operate—supervised and unsupervised.

      Supervised Learning

      Supervised learning applications include predictions and image or voice recognition. It requires creating or “training” an ML/AI model by feeding sample data into it. For example, if you want to create an application that identifies your voice in an audio file, you'd train the model using some quality samples of your voice. Subsequently, the model should be able to identify your voice accurately most of the time.

      Unsupervised Learning

      Unsupervised learning applications include anomaly detection and automatic classification. Unlike the supervised learning model, the unsupervised learning model requires no manual training. Instead, unsupervised learning automatically finds patterns in a dataset and creates groupings or clusters based on those patterns. For example, given a collection of potato pictures, an unsupervised ML/AI algorithm might classify them based on size, color, and the presence or absence of eyes.

      It's important to understand the limitations of this approach. The algorithm doesn't know that it's looking at potatoes, so it might classify a bean as a potato if they look similar enough. All that the algorithm does is to label the pictures based on similarities. If you want your application to be able to take a collection of random images and identify all the potatoes, you'll have to use a supervised learning model.

      Another interesting unsupervised learning application is fraud detection. If you have a credit or debit card, there's a good chance that your financial institution is using ML/AI for this purpose. It works by analyzing how you normally use your card—purchase amounts, the types of merchandise or services you purchase, and so on—to establish a baseline pattern. If your purchase activity deviates too much from this pattern, the algorithm registers it as an anomaly, probably generating a call from your financial institution.

      If this sounds similar to the supervised learning model, it's because it is, but with one big difference—the model is always retraining itself with new data. To better understand this, imagine that you frequent a particular coffee shop and use your card to buy coffee. One day, the coffee shop closes its doors for good, and you end up going to another shop. This may initially register as a slight anomaly, but as you continue visiting the new coffee shop, that becomes your new baseline. The model is continually retraining itself on what your normal card usage looks like.

      To put a finer point on it, in supervised learning the algorithm is looking for things it does recognize. In unsupervised learning, the algorithm is looking for things it doesn't recognize.

      The Cloud Shared Resource Pooling Model

      Every cloud service depends on resource pooling. Resource pooling is when the cloud service provider virtualizes physical resources into a group, or pool, and makes these pooled resources available to customers. The underlying physical resources are then dynamically allocated and reallocated as the demand requires. Recall the NIST definition of cloud computing as “a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources …” Resource pooling is a defining feature of the cloud.

      Resource pooling hides the physical hardware from the customer and allows many customers to share resources such as storage, compute power, and network bandwidth. This concept is also called multitenancy. We'll look at some examples of these pooled resources in the following sections.

      Compute Pools

      In the cloud provider's data center, there are numerous physical servers that each run a hypervisor. When you provision a VM in the cloud, the provider's cloud orchestration platform selects an available physical server to host your VM. The important point here is that it doesn't matter which particular host you get. Your VM will run the same regardless of the host. In fact, if you were to stop a running VM and then restart it, it would likely run on a completely different host, and you wouldn't be able to tell the difference. The physical servers that the provider offers up for your VMs to run on are part of a singular compute pool. By pooling physical servers in this way, cloud providers can flexibly dispense computing power to multiple customers. As more customers enter the cloud, the provider just has to add more servers to keep up with demand.

Schematic illustration 
              <a href=СКАЧАТЬ