You no longer have to worry about hard disk storage space every time you think about installing the latest version of your favourite development platform.
Neither do you have to worry about your system architectures, e.g. “I have a Mac or windows or Linux but could only access software for one of the architectures I don’t have?"
I also bet that you have at once bucked up your files to online storage, just in case you lose your computer due to your own unexpected reason and no longer have access to your most important data. All kudos to the Internet and its related technologies.
The next stage in the evolution of the Internet (together with IoT) is a wonderful package that would disrupt, if not all, then many organisations and businesses. I speak of cloud computing.
What is cloud computing?
You have most probably used the technology every time you access your emails over your web browser.
What does it mean anyway?
You can think of cloud computing as a way to access new kinds of technology-enabled services.
You or organisations today have choices in how they source and implement business services. They can access them in-house, have them hosted, outsource them entirely, or acquire them through the cloud.
It provides the means through which everything from computing power to business processes to personal collaboration is delivered to you as a service wherever and whenever you need it.
At the end of the day, the organisations will have a hybrid environment comprising services from multiple sources. ( For technical enthusiasts, it refers to the underlying infrastructure that makes it possible to scale services exponentially and flex resources rapidly in response to variable supply and demand).
The cloud over which there is computing is simply a network of computers whose resources are available through the larger network (Internet).
If you have ever used Google Drive, Microsoft’s One Drive or Dropbox to save your files online, I guess most of you thought that maybe Google has a computer with extensive hard disk for storing all your files plus those of other users.
Uh-oh, drop the thinking because a cloud consists of many computers internetworked to share their resources: your files in your one Google drive account might actually be stored on different computers on the Internet.
You might be asking yourself how people access cloud services. Well, Cloud services have standardised Web services interfaces that enable the customer to more easily link cloud-based capabilities to internal applications consider, as an example of these interfaces, the Gmail website. But what makes it a technology worth having, especially for businesses?
Perhaps you have witnessed the most interesting dynamic in this technology: How cloud services like social networks and collaboration tools are changing how people in businesses access and share information.
This is enough proof that the cloud can eliminate many of the complex constraints inherent in traditional architectures and service delivery models and can lead to cost and efficiency savings.
Characteristics of the Cloud
Consider the following few characteristics of the cloud:
- Scalability and elasticity. One thing for sure is that business organisations can’t always anticipate correctly the usage volumes or demands for services or how their services will be used by customers. One customer might use the service three times a year during peak selling seasons, while another might use the cloud service as a primary development platform for all their applications. And so can a factor trigger an unexpected on-peak season in your business. If you are using the cloud, then you have to worry not about these issues. The cloud is specifically designed to be scalable and elastic hence a must-have for large organisations.
- Self-service provisioning. Consider this first scenario of a typical data centre (the predecessor of the cloud). When your department is about to implement a new application, say for graphics design, it has to submit a request to the data centre for additional computing hardware, software, services, or process resources. The data centre receives similar requests from departments across the company, and it must assess the relevant merit of all requests and evaluate the availability of existing resources versus the need to purchase new hardware. After the new hardware is purchased, data centre staff must configure the equipment for the new application. How does the process feel already? Time-consuming, right? One of the benefits of cloud services is that customers can procure them without going through a lengthy process. This happens in an automated fashion and as needed by the customer. The customer simply requests access to a service or to an amount of computing, storage, software, or other resources from the service provider, and it is automatically provisioned (although not as direct as it seems).
There are more tonnes of benefits of cloud computing. Still, it would be better to understand in detail the technology before even considering it as a solution to your business problems. Some fortune 500 companies are also on the losing end with the advent of this technology.
Consider Microsoft as a case study; some of its greatest products, like Office (the offline installed version), would be obsolete with time as similar products like Google docs are available in the cloud.
However, some companies prefer the versions installed on the user's PC. Truly some are better than their cloud counterparts. But with time, internet connectivity will span the globe, and portability and interoperability will be key factors for any product's success, especially software.
Cloud computing Recap
Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.
It is all about the convenient offering of services. It is plainly true that the service requirements of an individual, corporation or community of people differ a lot. You as an individual may only need a mail service, a software company, on the other hand, may be looking for an online ever-present platform in which it will be developing and deploying its applications; and so can the service requirements of a community ( maybe a group of organizations or people) vary.
The aforementioned issues lead to the categorization of cloud computing into deployment models and service models.
Cloud deployment models deal majorly with who accesses the cloud, i.e. does the public has access to the same cloud service as my organization, or is it just my organization alone?
Generally, is the cloud service private or public or hybrid (both public and private), or does it have community access?
The first step in choosing the right cloud solution is understanding the similarities and differences between the four primary deployment models.
A private cloud is a particular cloud computing model that involves a distinct and secure cloud-based environment in which only the specified client can operate. As with other cloud models, private clouds will provide computing power as a service within a virtualized environment using an underlying pool of physical computing resources.
However, under the private cloud model, the cloud (the pool of resources) is only accessible by a single organization providing that organization with greater control and privacy.
Imagine the old way of doing things in an office, where workgroups use hardware and software provisioned specifically for them. I mean, if your company uses Microsoft Excel for data science and analysis, then it happens that your finance department uses excel 2013, and for some reason or another, your HR department uses excel 2016. Maybe because a department prefers one version of a product to another, this may lead to a big problem, especially for technical designers using products such as AutoCAD, where a template prepared in AutoCAD 2013 can be ported to and edited easily in a 2016 version whereas a 2016 version cannot be ported to a previous version.
In a private cloud, workgroups or individuals don’t use hardware and software preferred or provisioned specifically to them. Instead, they draw on a pool of shared resources available on demand, e.g., an online (within the company’s network, i.e. intranet) version of maybe Fusion 360 (for technical designing and drawing). This means everyone in the company uses the same software version; hence, intra-company portability is not an issue.
This model is the least disruptive of the four options available. It allows the customers to set up and manage their own working environments.
Private clouds help avoid the culture shock of moving hardware, software, applications and data offsite. This approach also helps calm uneasiness about trusting third parties to handle security, privacy, availability and regulatory compliance.
They typically exist behind the company’s firewall. As for the management, an enterprise’s internal IT department, or in some cases an outside service provider, maintains close control of the computing resources, fairly similar to how a traditional data centre operates.
They are the other side of the coin of inside-the-firewall private clouds. Consider the 'cloud version' of Gmail or Outlook. Both you and I have the same level of access to the same Gmail servers, and we all enjoy all the benefits that come with it, e.g. on-demand service and the free Google Drive.
A service provider (Google in our case) manages a public cloud, and clients (me and you) typically share resources in a multi-tenancy arrangement, which means they use compartmentalized portions of the same servers and storage systems.
But why do people love it so much? In fact, it is gaining more popularity than its most secure private counterpart.
The main draw of the public cloud is reduced costs: Multiple tenants share the underlying infrastructure costs. In addition, users require little or no infrastructure investment and nevertheless enjoy unprecedented levels of IT service and resource scalability. The result is greater efficiency and increased agility at a relatively low cost.
They are, however, relatively secure. A company might want to consider this after carefully weighing the balance.
Consider the following. A company may subscribe to a specific email service provider (‘private’) to handle its email services. The same company can deal with publicly available ESPs like Gmail or Outlook. But using the former is relatively expensive. Yet using the latter is also risky, especially in this cyber age where one can do some serious footprinting (just on the emails alone), and boom, you are a hacked victim.
You don’t have to be intelligent to tell what a community is. It is simply a group of entities with a common need. A community cloud may suffice if a software development company and a group of similar companies needed a platform for developing and deploying similar backboned-apps.
It is a public cloud variation that alleviates multi-tenancy concerns, in which a relatively small number of organizations with similar needs share a common infrastructure and the associated costs.
The savings may be less than when large numbers of public cloud users foot the bill, but a community cloud's smaller size and shared interests can mitigate privacy, security and compliance fears.
Like a private cloud, the community option can reside within an organization’s data centre or at an external common site.
There’s also the hybrid cloud model, which mixes and matches the best elements of private, public and community clouds. In simple terms, this cloud infrastructure is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting).
For example, an enterprise may run a private cloud for day-to-day operations but contract for additional resources made available from a public cloud to weather a demand spike.
The best cloud deployment model will depend on several factors, including cost, control, performance, scalability, security and service requirements.
May the best win.
This deals with what kinds or types of services are provided by the cloud service providers (CSPs). There are majorly three types of service models: Software as a Service, Platform as a Service, and infrastructure as a Service.
Software as a service (SaaS)
The traditional model of software distribution, in which software is purchased for and installed on personal computers, is sometimes referred to as Software-as-a-Product. On the other hand, software-as-a-Service is a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network, typically the Internet.
Having purchased or acquired freely, a Microsoft office package and installed on your PC is an example of Software as a product. Using google docs online to process your documents and manage spreadsheets is, on the other hand, a cloud’s Software as a Service.
SaaS is becoming an increasingly prevalent delivery model as underlying technologies that support web services and service-oriented architecture (SOA) mature and new developmental approaches become popular. The user doesn’t manage or control the network, servers, OS, storage or applications.
SaaS is also often associated with a pay-as-you-go subscription licensing model (except for those offered for free). Meanwhile, broadband service has become increasingly available to support user access from more areas around the world. Examples are Google’s Gmail and Apps, instant messaging from AOL, Microsoft’s Skype, Yahoo, and Google.
It is good from a capital expense viewpoint, but potentially troublesome in terms of flexibility. Applications come as-is, with little or no opportunity for customization. Small or midsize organizations with limited budgets and IT staff obviously can benefit from this model. Large enterprises can also benefit from this approach by offloading routine services to a third-party provider and devoting internal resources to strategic and mission-critical activities.
Platform as a Service (PaaS)
PaaS offerings go beyond delivering a pre-packaged application via the cloud. They instead provide the entire computing platform and solutions stack.
These platforms are for building and running custom web-based applications, and they make all of the facilities required to support the complete life cycle of building and delivering web applications and services entirely available from the Internet, all with no software downloads or installation for developers, IT managers, or end users.
This allows enterprises to run custom applications or use the solution’s programming environment to create new solutions. As with SaaS, customers avoid upfront provisioning costs and ongoing infrastructure maintenance and management expenses.
PaaS gives users control of the specific capabilities of their applications as long as the in-house development staff is comfortable with the PaaS provider’s choices for programming languages, interfaces, development tools and database support. Examples include Microsoft’s Azure and Salesforce’s Force.
However, this type of solution may expose you to a vendor-lock-in scenario that makes a customer dependent on a vendor for products and services, unable to use another vendor without substantial switching costs.
Lock-in costs which create barriers to market entry, may result in antitrust action against a monopoly.
Infrastructure as a service (IaaS)
Infrastructure as a service delivers processing power, security tools, storage capacity and network bandwidth as on-demand services.
It is more of the provision of grids or clusters or virtualized servers, processing, storage, networks, and other fundamental computing resources where the consumer can deploy and run arbitrary software, which can include operating systems.
The highest profile example is Amazon’s Elastic Compute Cloud (EC2) and Simple Storage Service.
As an organization grows, it can avoid new investments in these components. IaaS users don’t directly control or have access to the technologies running in the offsite infrastructure; the cloud provider manages these. A core component of most IaaS offerings is the service catalogue, an online tool for finding and provisioning available services.
The above three are the major service models offered. Others also do exist, including Communication as a Service (CaaS) and the latest DAAS duo comprising Data as a Service (DaaS) for big data (important for organizations like NASA) and Desktop as a Service (DaaS) for virtual desktop infrastructures.
In the next article on cloud computing, we will help you make a decision on whether to move into or away from the cloud -cloud economics. Stay tuned.