Enabling Technologies and System Models for Cloud Computing 01 A Brief History of Computing …
Evolution of Cloud Computing The evolution of cloud computing began with Mainframe computing , where central servers handled multiple users via time-sharing. Distributed systems emerged, enabling resource sharing across networks. Cluster computing grouped servers for high availability and performance. Grid computing advanced this by linking geographically dispersed resources for complex tasks. Virtualization allowed multiple virtual machines on a single physical machine, enhancing resource efficiency. The advent of Web 2.0 enabled dynamic web applications and user-generated content. Service orientation introduced modular services accessed over the internet. Finally, utility computing provided on-demand resource provisioning, forming the basis of modern cloud services, offering scalable, flexible, and cost-effective solutions Contents
1. Distributed Systems Distributed systems form the backbone of cloud computing. They involve a collection of independent computers that appear to the user as a single coherent system. This setup is crucial for cloud computing as it enables the sharing of resources and data among multiple computers, enhancing processing speed, and reliability. How It Works : In a distributed system, tasks are divided across different machines. These machines communicate and coordinate their actions by passing messages to one another. This method not only speeds up computing tasks but also ensures that if one part fails, the system can still function, avoiding a single point of failure. Real-World Application : A practical example of distributed systems in cloud computing is in web services like Google Drive. When you store a file on Google Drive, it's not just saved on a single server. Instead, it's distributed across multiple servers, ensuring data redundancy and quick access from any location. Evolution of Cloud Computing
2. Mainframe Computing Before cloud computing, there were mainframes – powerful computers used primarily by large organizations for critical applications, bulk data processing, and enterprise resource planning. Mainframes could process vast amounts of data and support numerous users simultaneously, making them indispensable in their time. Impact on Cloud Evolution : Mainframes laid the groundwork for cloud computing. Their ability to handle massive data and numerous users parallels the multi-tenancy of cloud services. Mainframes' robust architecture and emphasis on reliability and security have been carried over into cloud computing models, ensuring dependable and secure data handling. Continuing Relevance : Even today, mainframes have a role in cloud computing. They often work in tandem with cloud services, particularly in sectors like banking and airlines, where large-scale transaction processing is crucial. This demonstrates the enduring relevance of mainframe principles in the cloud era. Evolution of Cloud Computing
2. Cluster Computing Cluster Computing : Enhancing Performance and Reliability Cluster computing involves connecting multiple computers (nodes) to work together as a single system. It's designed to improve performance and provide high availability. In cluster computing, tasks are distributed across different nodes, which simultaneously process the data, leading to faster computations. Contribution to Cloud Computing : Cluster computing is fundamental to cloud computing. It provides a way to achieve scalability and high availability – critical features of cloud services. By distributing tasks across a cluster, cloud providers can offer services that are both efficient and resilient to failures. Practical Usage : An example of cluster computing in the cloud is in web hosting services. By using clusters, these services ensure that a website remains accessible even if one server fails. This is crucial for maintaining uninterrupted online services and a consistent user experience. Evolution of Cloud Computing
3. Grid Computing The Power of Resource Sharing : Grid computing is a form of distributed computing where a network of loosely connected computers work together to perform large-scale tasks. Unlike cluster computing, where nodes perform similar tasks, grid computing harnesses heterogeneous resources scattered geographically. Impact on Cloud Development : Grid computing has significantly influenced cloud computing by demonstrating the effectiveness of resource pooling. It showed how combining resources from various networks can lead to immense computational power, a concept integral to cloud services' scalability. Real-World Implementation : A practical example is SETI@home, a project that uses grid computing to analyze radio signals for signs of extraterrestrial intelligence. This project pools computing resources from volunteers worldwide, illustrating the potential of grid computing, which parallels the resource pooling in cloud computing. For Detailed Info Evolution of Cloud Computing
4. Web 2.0 Fostering Interactive Cloud Experiences : Web 2.0 refers to the second generation of the World Wide Web, which emphasizes user-generated content, usability, and interoperability for end-users. This era of the web moved beyond static web pages, introducing more dynamic and interactive online experiences. Influence on Cloud Computing : Web 2.0 has been instrumental in the evolution of cloud computing. It shifted the focus towards web-based applications and services, paving the way for cloud platforms that offer interactive, user-centered experiences. This alignment has made cloud services more accessible and versatile. Practical Impact : A prime example of Web 2.0 in action is Google Docs. This service allows real-time collaboration and editing of documents, a feature made possible through the principles of Web 2.0. It demonstrates how user interaction and data sharing, core aspects of Web 2.0, are integral to modern cloud services. For Detailed Info Evolution of Cloud Computing
5. Service Oriented Architecture Streamlining Cloud Solutions : Service orientation is a design paradigm that advocates for the provision of application components as reusable services. This approach focuses on breaking down applications into distinct services that can be accessed over a network, primarily the internet. Contribution to Cloud Evolution : Service orientation has been pivotal in shaping cloud computing. It laid the groundwork for Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS) models. These models allow users to access software, platforms, and infrastructure over the cloud, without the need for physical installations. Real-World Usage : Salesforce is an excellent example of service orientation in cloud computing. As a SaaS provider, it offers CRM software over the internet, eliminating the need for clients to install or maintain the software on their local machines. This showcases the efficiency and scalability offered by service-oriented cloud computing. For Detailed Info Evolution of Cloud Computing
6. Utility Computing Simplifying Access to Computing Resources : Utility computing is a model where computing resources, like processing power and storage, are provided to users on-demand and billed based on usage, similar to utilities like electricity or water. This approach offers flexibility and cost-effectiveness, as users pay only for what they use. Impact on Cloud Computing : Utility computing is a fundamental concept in cloud computing, offering a pay-as-you-go model. This has made cloud services accessible to a wider range of users, from individuals to large enterprises, by reducing upfront costs and allowing scalability in line with user demand. Practical Application : A clear example of utility computing in action is in cloud storage services like Dropbox or Google Cloud Storage. Users can store data in the cloud and pay based on their storage usage. This model demonstrates the cost-effective, scalable nature of utility computing within the cloud. For Detailed Info Evolution of Cloud Computing
Advantages and Disadvantages of Cloud Computing 02
Advantages of Cloud Computing Advantages of Cloud Computing
Advantages of Cloud Computing Resources Pooling : This means that the Cloud provider used a multi-leaner model to deliver the computing resources to various customers. There are various allocated and reassigned physical and virtual resources, which rely on customer demand. In general, the customer has no control or information about the location of the resources provided, but can choose location on a higher level of abstraction. On-Demand Self-Service : This is one of the main and useful advantages of Cloud Computing as the user can track server uptimes, capability and network storage on an ongoing basis. The user can also monitor computing functionalities with this feature. Easy Maintenance : The servers are managed easily and the downtime is small and there are no downtime except in some cases. Cloud Computing offers an update every time that increasingly enhances it. The updates are more system friendly and operate with patched bugs faster than the older ones. Large Network Access : The user may use a device and an Internet connection to access the cloud data or upload it to the cloud from anywhere. Such capabilities can be accessed across the network and through the internet. Availability : The cloud capabilities can be changed and expanded according to the usage. This review helps the consumer to buy additional cloud storage for a very small price, if necessary. Advantages of Cloud Computing
Advantages of Cloud Computing Automatic System : Cloud computing analyzes the data required automatically and supports a certain service level of measuring capabilities. It is possible to track, manage and report the usage. It provides both the host and the customer with accountability . Economical : It is a one-off investment since the company (host) is required to buy the storage, which can be made available to many companies, which save the host from monthly or annual costs. Only the amount spent on the basic maintenance and some additional costs are much smaller. Security : Cloud Security is one of cloud computing's best features. It provides a snapshot of the data stored so that even if one of the servers is damaged, the data cannot get lost. The information is stored on the storage devices, which no other person can hack or use. The service of storage is fast and reliable . Pay as you go : Users only have to pay for the service or the space in cloud computing. No hidden or additional charge to be paid is liable to pay. The service is economical and space is often allocated free of charge. Measured Service : Cloud Computing resources that the company uses to monitor and record. This use of resources is analyzed by charge-per-use capabilities. This means that resource use can be measured and reported by the service provider, either on the virtual server instances running through the cloud. You will receive a models pay depending on the manufacturing company's actual consumption. Advantages of Cloud Computing
Disadvantages of Cloud Computing Security and Privacy of Cloud : The cloud data store must be secure and confidential. The clients are so dependent on the cloud provider. In other words, the cloud provider must take security measures necessary to secure customer data. Securities are also the customer's liability because they must have a good password, don't share the password with others, and update our password on a regular basis. If the data are outside of the firewall, certain problems may occur that the cloud provider can eliminate. Hacking and malware are also one of the biggest problems because they can affect many customers. Data loss can result; the encrypted file system and several other issues can be disrupted. Interoperability and Portability : Migration services into and out of the cloud shall be provided to the Customer. No bond period should be allowed, as the customers can be hampered. The cloud will be capable of supplying premises facilities. Remote access is one of the cloud obstacles, removing the ability for the cloud provider to access the cloud from anywhere. Reliable and Flexible : Reliability and flexibility are indeed a difficult task for cloud customers, which can eliminate leakage of the data provided to the cloud and provide customer trustworthiness. To overcome this challenge, third-party services should be monitored and the performance, robustness, and dependence of companies supervised. Disadvantages of Cloud Computing
Disadvantages of Cloud Computing Cost : Cloud computing is affordable, but it can be sometimes expensive to change the cloud to customer demand. In addition, it can hinder the small business by altering the cloud as demand can sometimes cost more. Furthermore, it is sometimes costly to transfer data from the Cloud to the premises. Downtime : Downtime is the most popular cloud computing challenge as a platform free from downtime is guaranteed by no cloud provider. Internet connection also plays an important role, as it can be a problem if a company has a nontrustworthy internet connection, because it faces downtime. Lack of resources : The cloud industry also faces a lack of resources and expertise, with many businesses hoping to overcome it by hiring new, more experienced employees. These employees will not only help solve the challenges of the business but will also train existing employees to benefit the company. Currently, many IT employees work to enhance cloud computing skills and it is difficult for the chief executive because the employees are little qualified. It claims that employees with exposure of the latest innovations and associated technology would be more important in businesses. Dealing with Multi-Cloud Environments : Today not even a single cloud is operating with full businesses. According to the RightScale report revelation, almost 84 percent of enterprises adopt a multi-cloud approach and 58 percent have their hybrid cloud approaches mixed with the public and private clouds. In addition, five different public and private clouds are used by organizations. Disadvantages of Cloud Computing
Disadvantages of Cloud Computing Cost : Cloud computing is affordable, but it can be sometimes expensive to change the cloud to customer demand. In addition, it can hinder the small business by altering the cloud as demand can sometimes cost more. Furthermore, it is sometimes costly to transfer data from the Cloud to the premises. Downtime : Downtime is the most popular cloud computing challenge as a platform free from downtime is guaranteed by no cloud provider. Internet connection also plays an important role, as it can be a problem if a company has a nontrustworthy internet connection, because it faces downtime. Lack of resources : The cloud industry also faces a lack of resources and expertise, with many businesses hoping to overcome it by hiring new, more experienced employees. These employees will not only help solve the challenges of the business but will also train existing employees to benefit the company. Currently, many IT employees work to enhance cloud computing skills and it is difficult for the chief executive because the employees are little qualified. It claims that employees with exposure of the latest innovations and associated technology would be more important in businesses. Disadvantages of Cloud Computing
Applications of Cloud Computing 03
Applications of Cloud Computing Scientific applications Healthcare: ECG analysis in the cloud Biology: protein structure prediction Biology: gene expression data analysis for cancer diagnosis Geoscience: satellite image processing Business and consumer applications CRM and ERP Salesforce.com Microsoft dynamics CRM 3 NetSuite Productivity Dropbox and iCloud 2 Google docs Cloud desktops: EyeOS and XIOS/3 Social networking 1 Facebook Media applications Animoto Maya rendering with Aneka Video encoding on the cloud: Encoding.com Multiplayer online gaming Applications of Cloud Computing