2. Cloud Computing
Cloud deployment and service models
Cloud Storage
Cloud as a parallel computing platform
Scalability
Distributed and classical algorithms
Cloud Infrastructure and its benefits
ICT Concepts and Trends (ICT 6001) 2
3. What is Cloud Computing?
Cloud computing is the on-demand
availability of computer system
resources, especially data storage
(cloud storage) and computing
power, without direct active
management by the user.
3
ICT Concepts and Trends (ICT 6001)
4. Cloud Development and Service models.
Cloud Computing Deployment Models
Cloud deployment models indicate how the cloud services are made available to users. The
four deployment models associated with cloud computing are as follows:
Public cloud As the name suggests, this type of cloud deployment model supports all
users who want to make use of a computing resource, such as hardware (OS, CPU,
memory, storage) or software (application server, database) on a subscription basis.
Most common uses of public clouds are for application development and testing, non-
mission-critical tasks such as file-sharing, and e-mail service.
Private cloud True to its name, a private cloud is typically infrastructure used by a single
organization. Such infrastructure may be managed by the organization itself to support
various user groups, or it could be managed by a service provider that takes care of it
either on-site or off-site. Private clouds are more expensive than public clouds due to the
capital expenditure involved in acquiring and maintaining them. However, private clouds
are better able to address the security and privacy concerns of organizations today.
4
ICT Concepts and Trends (ICT 6001)
5. Hybrid cloud In a hybrid cloud, an organization makes use of interconnected
private and public cloud infrastructure. Many organizations make use of this
model when they need to scale up their IT infrastructure rapidly, such as when
leveraging public clouds to supplement the capacity available within a private
cloud. For example, if an online retailer needs more computing resources to
run its Web applications during the holiday season it may attain those
resources via public clouds.
Community cloud This deployment model supports multiple organizations
sharing computing resources that are part of a community; examples include
universities cooperating in certain areas of research, or police departments
within a county or state sharing computing resources. Access to a community
cloud environment is typically restricted to the members of the community.
Cloud Development and Service models. (Cont..)
5
ICT Concepts and Trends (ICT 6001)
6. Figure 2.3 is an adaption of the NIST Cloud Computing Model
Cloud Development and Service models. (Cont..)
6
ICT Concepts and Trends (ICT 6001)
7. Cloud Storage
What is Cloud Storage?
Cloud storage is a model of computer
data storage in which the digital data is
stored in logical pools, said to be on "the
cloud".
7
ICT Concepts and Trends (ICT 6001)
8. The three main types are block storage, file storage and object storage:
Block storage divides large volumes of data into smaller units called blocks. Each
block is associated with a unique identifier and placed on one of the system's
storage drives. Block storage is fast, efficient and provides the low latency required
by applications such as databases and high-performance workloads.
File storage organizes data in a hierarchical system of files and folders; it is
commonly used with personal computer storage drives and network-attached
storage (NAS). Data in a file storage system is stored in files, and the files are stored
in folders. Directories and subdirectories are used to organize the folders and locate
files and data. A file storage-based cloud can make data access and retrieval easier,
with this hierarchical format being familiar to users and required by some
applications.
Cloud Storage Cont..
8
ICT Concepts and Trends (ICT 6001)
9. Object storage stores data as objects, which consist of three components: data
stored in a file, metadata associated with the data file and a unique identifier.
Using the RESTful API, an object storage protocol stores a file and its associated
metadata as a single object and assigns it an identification (ID) number. To retrieve
content, the user presents the ID to the system and the content is assembled with
all its metadata, authentication and security. Object-based storage systems allow
metadata to be customized, which can streamline data access and analysis. With
object storage, data can be stored in its native format with massive scalability.
Cloud Storage Cont..
9
ICT Concepts and Trends (ICT 6001)
10. ICT Concepts and Trends (ICT 6001) 10
Cloud Storage Cont..
Advantages of Cloud Storage
Pay as you go. With a cloud storage service, customers only pay for the storage
they use, eliminating the need for big capital expenses. While cloud storage
costs are recurring, rather than a one-time purchase, they are often so low that,
even as an ongoing expense, they may still be less than the cost of maintaining
an in-house system.
Utility billing. Because customers only pay for the capacity they use, cloud
storage costs can decrease as usage drops. This is in stark contrast to using an in-
house storage system, which will likely be over configured to handle anticipated
growth. A company will pay for more than it needs initially, and the cost of the
storage will never decrease.
11. ICT Concepts and Trends (ICT 6001) 11
Global availability. Cloud storage is typically available from any system, anywhere
and at any time; users do not have to worry about operating system (OS)
capability or complex allocation processes.
Ease of use. Cloud storage is easy to access and use, so developers, software
testers and business users can get up and running quickly without having to wait
for an IT (information technology) team to allocate and configure storage
resources.
Off-site security. By its very nature, public cloud storage offers a way to move
copies of data to a remote site for backup and security purposes. Again, this
represents a significant cost savings when compared to a company maintaining its
own remote facility.
Cloud Storage Cont..
12. Cloud as a parallel computing platform.
12
ICT Concepts and Trends (ICT 6001)
What is Parallel Computing?
Parallel computing refers to the process of breaking down larger problems into
smaller, independent, often similar parts that can be executed simultaneously by
multiple processors communicating via shared memory, the results of which are
combined upon completion as part of an overall algorithm.
The primary goal of parallel computing is to increase available computation power for
faster application processing and problem solving.
13. Cloud as a parallel computing platform (Cont..)
13
ICT Concepts and Trends (ICT 6001)
There are generally four types of parallel computing, available from both proprietary
and open source parallel computing vendors -- bit-level parallelism, instruction-level
parallelism, task parallelism, or superword-level parallelism:
Bit-level parallelism: increases processor word size, which reduces the quantity of
instructions the processor must execute in order to perform an operation on variables
greater than the length of the word.
Instruction-level parallelism: the hardware approach works upon dynamic parallelism,
in which the processor decides at run-time which instructions to execute in parallel; the
software approach works upon static parallelism, in which the compiler decides which
instructions to execute in parallel
Task parallelism: a form of parallelization of computer code across multiple processors
that runs several different tasks at the same time on the same data
Superword-level parallelism: a vectorization technique that can exploit parallelism of
inline code
14. Cloud as a parallel computing platform (Cont..)
14
ICT Concepts and Trends (ICT 6001)
Parallel Computing Software Solutions and Techniques
Concurrent programming languages, APIs, libraries, and parallel programming models have
been developed to facilitate parallel computing on parallel hardware. Some parallel computing
software solutions and techniques include:
Application checkpointing: a technique that provides fault tolerance for computing systems by
recording all of the application’s current variable states, enabling the application to restore
and restart from that point in the instance of failure. Checkpointing is a crucial technique for
highly parallel computing systems in which high performance computing is run across a large
number of processors.
15. Cloud as a parallel computing platform (Cont..)
15
ICT Concepts and Trends (ICT 6001)
Automatic parallelization: refers to the conversion of sequential code into multi-threaded
code in order to use multiple processors simultaneously in a shared-memory
multiprocessor (SMP) machine. Automatic parallelization techniques include Parse,
Analyze, Schedule, and Code Generation. Typical examples of common parallelizing
compilers and tools are Paradigm compiler, Polaris compiler, Rice Fortran D compiler, SUIF
compiler, and Vienna Fortran compiler.
Parallel programming languages: Parallel programming languages are typically classified as
either distributed memory or shared memory. While distributed memory programming
languages use message passing to communicate, shared memory programming languages
communicate by manipulating shared memory variables.
16. Cloud as a parallel computing platform (Cont..)
16
ICT Concepts and Trends (ICT 6001)
Difference Between Parallel Computing and Cloud Computing
Cloud computing is a general term that refers to the delivery of scalable services, such as
databases, data storage, networking, servers, and software, over the Internet on an as-
needed, pay-as-you-go basis.
Cloud computing services can be public or private, are fully managed by the provider,
and facilitate remote access to data, work, and applications from any device in any place
capable of establishing an Internet connection. The three most common service
categories are Infrastructure as as Service (IaaS), Platform as a Service (PaaS), and
Software as a Service (SaaS).
Cloud computing is a relatively new paradigm in software development that facilitates
broader access to parallel computing via vast, virtual computer clusters, allowing the
average user and smaller organizations to leverage parallel processing power and storage
options typically reserved for large enterprises.
17. Scalability.
17
ICT Concepts and Trends (ICT 6001)
What is Cloud Scalability?
Cloud scalability in cloud computing refers to the ability to increase or decrease
IT resources as needed to meet changing demand. Scalability is one of the
hallmarks of the cloud and the primary driver of its exploding popularity with
businesses.
A scalable cloud architecture is made possible through virtualization. Unlike
physical machines whose resources and performance are relatively set, virtual
machines virtual machines (VMs) are highly flexible and can be easily scaled up
or down. They can be moved to a different server or hosted on multiple servers
at once; workloads and applications can be shifted to larger VMs as needed.
18. ICT Concepts and Trends (ICT 6001) 18
Scalability. (Cont..)
Benefits of cloud scalability
The major cloud scalability benefits are driving cloud adoption for businesses large and
small:
Convenience: Often with just a few clicks, IT administrators can easily add more VMs that
are available without delay—and customized to the exact needs of an organization. That
saves precious time for IT staff. Instead of spending hours and days setting up physical
hardware, teams can focus on other tasks.
Flexibility and speed: As business needs change and grow—including unexpected spikes in
demand—cloud scalability allows IT to respond quickly. Today, even smaller businesses have
access to high-powered resources that used to be cost prohibitive. No longer are companies
tied down by obsolete equipment—they can update systems and increase power and
storage with ease.
19. ICT Concepts and Trends (ICT 6001) 19
Scalability. (Cont..)
Cost savings: Thanks to cloud scalability, businesses can avoid the upfront costs of
purchasing expensive equipment that could become outdated in a few years. Through
cloud providers, they pay for only what they use and minimize waste.
Disaster recovery: With scalable cloud computing, you can reduce disaster recovery
costs by eliminating the need for building and maintaining secondary data centers.
20. ICT Concepts and Trends (ICT 6001) 20
Scalability. (Cont..)
When to use cloud scalability
Successful businesses employ scalable business models that allow them to
grow quickly and meet changing demands. It’s no different with their IT. Cloud
scalability advantages help businesses stay nimble and competitive.
Scalability is one of the driving reasons to migrate to the cloud. Whether traffic
or workload demands increase suddenly or grow gradually over time, a scalable
cloud solution enables organizations to respond appropriately and cost-
effectively to increase storage and performance.
21. ICT Concepts and Trends (ICT 6001) 21
Scalability. (Cont..)
How to achieve cloud scalability?
There are two basic types of scalability in cloud computing: vertical and horizontal
scaling.
With vertical scaling, also known as “scaling up” or “scaling down,” you add or subtract
power to an existing cloud server upgrading memory (RAM), storage or processing
power (CPU). Usually this means that the scaling has an upper limit based on the
capacity of the server or machine being scaled; scaling beyond that often requires
downtime.
To scale horizontally (scaling in or out), you add more resources like servers to your
system to spread out the workload across machines, which in turn increases
performance and storage capacity. Horizontal scaling is especially important for
businesses with high availability services requiring minimal downtime.
22. ICT Concepts and Trends (ICT 6001) 22
Scalability. (Cont..)
How do you determine optimal cloud scalability?
Changing business requirements or surging demand often require changes to your
scalable cloud solution. But how much storage, memory and processing power do you
really need? Will you scale up or out?
To determine a right-sized solution, ongoing performance testing is essential. IT
administrators must continually measure factors such as response time, number of
requests, CPU load and memory usage. Scalability testing also measures an application’s
performance and ability to scale up or down depending on user requests.
Automation can also help optimize cloud scalability. You can determine thresholds for
usage that trigger automatic scaling so that there’s no effect on performance. You may
also consider a third-party configuration management service or tool to help manage
your scaling needs, goals and implementation.
23. Distributed and classical algorithms.
23
ICT Concepts and Trends (ICT 6001)
1. Cloud Computing :
Cloud computing refers to providing on demand IT resources/services like server,
storage, database, networking, analytics, software etc. over internet. It is a computing
technique that delivers hosted services over the internet to its users/customers.
Cloud computing provides services such as hardware, software, networking resources
through internet. Some characteristics of cloud computing are providing shared pool
of configurable computing resources, on-demand service, pay per use, provisioned by
the Service Providers etc.
It is classified into 4 different types such as
Public Cloud
Private Cloud
Community Cloud
Hybrid Cloud
24. Distributed and classical algorithms. (Cont..)
24
ICT Concepts and Trends (ICT 6001)
2. Distributed Computing :
Distributed computing refers to solve a problem over distributed autonomous computers
and they communicate between them over a network. It is a computing technique which
allows to multiple computers to communicate and work to solve a single problem.
Distributed computing helps to achieve computational tasks more faster than using a
single computer as it takes a lot of time. Some characteristics of distributed computing are
distributing a single task among computers to progress the work at same time, Remote
Procedure calls and Remote Method Invocation for distributed computations.
It is classified into 3 different types such as
Distributed Computing Systems
Distributed Information Systems
Distributed Pervasive Systems
28. Cloud Infrastructure and it’s benefits.
28
ICT Concepts and Trends (ICT 6001)
Benefits of cloud computing
Cloud computing offers your business many benefits. It allows you to set up what
is essentially a virtual office to give you the flexibility of connecting to your
business anywhere, any time. With the growing number of web-enabled devices
used in today's business environment (e.g. smartphones, tablets), access to your
data is even easier.
30. Cloud Infrastructure and it’s benefits (Cont..)
30
ICT Concepts and Trends (ICT 6001)
Cost Savings: If you are worried about the price tag that would come with
making the switch to cloud computing, you aren't alone 20% of organizations
are concerned about the initial cost of implementing a cloud-based server. But
those who are attempting to weigh the advantages and disadvantages of using
the cloud need to consider more factors than just initial price they need to
consider ROI.
Once you're on the cloud, easy access to your company's data will save time
and money in project startups. And, for those who are worried that they'll end up
paying for features that they neither need nor want, most cloud-computing
services are pay as you go. This means that if you don't take advantage of what
the cloud has to offer, then at least you won't have to be dropping money on it.
The pay-as-you-go system also applies to the data storage space needed to
service your stakeholders and clients, which means that you'll get exactly as
much space as you need, and not be charged for any space that you don't.
Taken together, these factors result in lower costs and higher returns. Half of all
CIOs and IT leaders surveyed by Bitglass reported cost savings in 2015 as a
result of using cloud-based applications.
31. Cloud Infrastructure and it’s benefits (Cont..)
31
ICT Concepts and Trends (ICT 6001)
Security: Many organizations have security concerns when it comes to adopting a
cloud-computing solution. After all, when files, programs, and other data aren't
kept securely onsite, how can you know that they are being protected? If you can
remotely access your data, then what's stopping a cybercriminal from doing the
same thing? Well, quite a bit, actually.
For one thing, a cloud host's full-time job is to carefully monitor security, which is
significantly more efficient than a conventional in-house system, where an
organization must divide its efforts between a myriad of IT concerns, with security
being only one of them. And while most businesses don't like to openly consider the
possibility of internal data theft, the truth is that a staggeringly high percentage of
data thefts occur internally and are perpetrated by employees.
32. Cloud Infrastructure and it’s benefits (Cont..)
32
ICT Concepts and Trends (ICT 6001)
Flexibility: Your business has only a finite amount of focus to divide between all of its
responsibilities. If your current IT solutions are forcing you to commit too much of your
attention to computer and data-storage issues, then you aren't going to be able to
concentrate on reaching business goals and satisfying customers. On the other hand, by
relying on an outside organization to take care of all IT hosting and infrastructure, you'll
have more time to devote toward the aspects of your business that directly affect your
bottom line.
The cloud offers businesses more flexibility overall versus hosting on a local server. And,
if you need extra bandwidth, a cloud-based service can meet that demand instantly,
rather than undergoing a complex (and expensive) update to your IT infrastructure. This
improved freedom and flexibility can make a significant difference to the overall
efficiency of your organization.
33. Cloud Infrastructure and it’s benefits (Cont..)
33
ICT Concepts and Trends (ICT 6001)
Mobility: Cloud computing allows mobile access to corporate data via smartphones
and devices, which, considering over 2.6 billion smartphones are being used
globally today, is a great way to ensure that no one is ever left out of the loop. Staff
with busy schedules, or who live a long way away from the corporate office, can use
this feature to keep instantly up to date with clients and co-worker.
Through the cloud, you can offer conveniently accessible information to sales staff
who travel, freelance employees, or remote employees, for better work-life
balance. Therefore, it's not surprising to see that organizations with employee
satisfaction listed as a priority are up to 24% more likely to expand cloud usage.
34. Cloud Infrastructure and it’s benefits (Cont..)
34
ICT Concepts and Trends (ICT 6001)
Insight: As we move ever further into the digital age, it's becoming
clearer and clearer that the old adage “knowledge is power” has taken on
the more modern and accurate form: “Data is money.” Hidden within the
millions of bits of data that surround your customer transactions and
business process are nuggets of invaluable, actionable information just
waiting to be identified and acted upon. Of course, sifting through that
data to find these kernels can be very difficult, unless you have access to
the right cloud-computing solution.
Many cloud-based storage solutions offer integrated cloud analytics for a
bird's-eye view of your data. With your information stored in the cloud,
you can easily implement tracking mechanisms and build customized
reports to analyze information organization wide.
35. Cloud Infrastructure and it’s benefits (Cont..)
35
ICT Concepts and Trends (ICT 6001)
Increased Collaboration: If your business has two employees or more, then you
should be making collaboration a top priority. After all, there isn't much point to
having a team if it is unable to work like a team. Cloud computing makes collaboration
a simple process. Team members can view and share information easily and securely
across a cloud-based platform. Some cloud-based services even provide collaborative
social spaces to connect employees across your organization, therefore increasing
interest and engagement. Collaboration may be possible without a cloud-computing
solution, but it will never be as easy, nor as effective.
36. Cloud Infrastructure and it’s benefits (Cont..)
36
ICT Concepts and Trends (ICT 6001)
Quality Control: There are few things as detrimental to the success of a business as
poor quality and inconsistent reporting. In a cloud-based system, all documents are
stored in one place and in a single format. With everyone accessing the same
information, you can maintain consistency in data, avoid human error, and have a
clear record of any revisions or updates. Conversely, managing information in silos
can lead to employees accidentally saving different versions of documents, which
leads to confusion and diluted data.
37. Cloud Infrastructure and it’s benefits (Cont..)
37
ICT Concepts and Trends (ICT 6001)
Disaster Recovery: One of the factors that contributes to the success
of a business is control. Unfortunately, no matter how in control your
organization may be when it comes to its own processes, there will
always be things that are completely out of your control, and in today's
market, even a small amount of unproductive downtime can have a
resoundingly negative effect. Downtime in your services leads to lost
productivity, revenue, and brand reputation.
38. Cloud Infrastructure and it’s benefits (Cont..)
38
ICT Concepts and Trends (ICT 6001)
Loss Prevention: If your organization isn't investing in a cloud-computing
solution, then all of your valuable data is inseparably tied to the office computers
it resides in. This may not seem like a problem, but the reality is that if your local
hardware experiences a problem, you might end up permanently losing your
data. This is a more common problem than you might realize computers can
malfunction for many reasons, from viral infections, to age-related hardware
deterioration, to simple user error. Or, despite the best of intentions, they can be
misplaced or stolen (over 10,000 laptops are reported lost every week at major
airports).
If you aren't on the cloud, you're at risk of losing all the information you had
saved locally. With a cloud-based server, however, all the information you've
uploaded to the cloud remains safe and easily accessible from any computer with
an internet connection, even if the computer you regularly use isn't working.
39. Cloud Infrastructure and it’s benefits (Cont..)
39
ICT Concepts and Trends (ICT 6001)
Automatic Software Updates: For those who have a lot to get done, there
isn't anything more irritating than having to wait for system updates to be
installed. Cloud-based applications automatically refresh and update
themselves, instead of forcing an IT department to perform a manual
organization-wide update. This saves valuable IT staff time and money spent
on outside IT consultation. PCWorld lists that 50% of cloud adopters cited
requiring fewer internal IT resources as a cloud benefit.
40. Cloud Infrastructure and it’s benefits (Cont..)
40
ICT Concepts and Trends (ICT 6001)
Competitive Edge: While cloud computing is increasing in popularity, there
are still those who prefer to keep everything local. That's their choice, but
doing so places them at a distinct disadvantage when competing with those
who have the benefits of the cloud at their fingertips. If you implement a
cloud-based solution before your competitors, you'll be further along the
learning curve by the time they catch up.
41. Cloud Infrastructure and it’s benefits (Cont..)
41
ICT Concepts and Trends (ICT 6001)
Sustainability: Given the current state of the environment, it's no longer enough
for organizations to place a recycling bin in the breakroom and claim that they're
doing their part to help the planet. Real sustainability requires solutions that
address wastefulness at every level of a business. Hosting on the cloud is more
environmentally friendly and results in less of a carbon footprint.
Cloud infrastructures support environmental proactivity, powering virtual
services rather than physical products and hardware, and cutting down on paper
waste, improving energy efficiency