TYCS Cloud Computing PDF
Document Details
Uploaded by RightRadiance
null
TYCS
Tags
Summary
This document provides an overview of cloud computing, including its different types (public, private, hybrid, community) and their characteristics. It also introduces the concept of distributed systems and common architectures. Detailed information is given on cloud computing benefits, costs, and characteristics.
Full Transcript
TYCS UNIT 1 Cloud Computing What is Cloud? ▪ The term Cloud refers to a Network or Internet. In other words, we can say that Cloud is something, which is present at remote location. Cloud can provide...
TYCS UNIT 1 Cloud Computing What is Cloud? ▪ The term Cloud refers to a Network or Internet. In other words, we can say that Cloud is something, which is present at remote location. Cloud can provide services over public and private networks, i.e., WAN, LAN. ▪ Applications such as e-mail, web conferencing, customer relationship management (CRM) execute on cloud. What is Cloud Computing? ▪ Cloud Computing refers to manipulating, configuring, and accessing the hardware and software resources remotely. It offers online data storage, infrastructure, and application. ▪ Cloud computing refers to both the applications delivered as services over the Internet and the hardware and system software in the datacenters that provide those services. ▪ Cloud computing offers platform independency, as the software is not required to be installed locally on the PC. Hence, the Cloud Computing is making our business applications mobile and collaborative. ▪ Cloud computing is a model for enabling ubiquitous, 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. Benefitsof CloudComputing:- Cloud Computing has numerous advantages. Some of them are listed below - i. Low Cost: To run cloud technology, users don't require high power computer & technology as because the application will run on the cloud and not on users' PC. Itonly required internet connectivity. ii. Storage capacity: The Cloud storage capacity is unlimited & generally offers a 1 TYCS UNIT 1 Cloud Computing hugestorage capacity of 2000-3000 GBs or more based on the requirement. iii. Low cost of IT infrastructure: As discussed earlier, the investment will be less if an organization uses Cloud technology; even the IT staffs and server engineers are also not required. iv. Increase computing power: Cloud servers have a very high-capacity of running and processing tasks as well as the processing of applications. v. Reduce Software Costs: Cloud minimizes the software costs as users don't need topurchase software for organizations or every computer. Characteristics Of Cloud Computing:- 1. On Demand Self Service Cloud Computing allows the users to use web services and resources on demand. One can logon to a website at any time and use them. 2. Broad Network Access Since cloud computing is completely web based, it can be accessed from anywhere and at any time. 3. Resource Pooling Cloud computing allows multiple tenants to share a pool of resources. One can share single physical instance of hardware, database and basic infrastructure. 4. Rapid Elasticity It is very easy to scale the resources vertically or horizontally at any time. Scaling of resources means the ability of resources to deal with increasing or decreasing demand. The resources being used by customers at any given point of time are automatically monitored. 5. Measured Service In this service cloud provider controls and monitors all the aspects of cloud service. Resource optimization, billing, and capacity planning etc. depend on it. 2 TYCS UNIT 1 Cloud Computing Distributed System? A distributed system is a collection of independent computers that appear to the users of the system as a single coherent system. These computers or nodes work together, communicate over a network, and coordinate their activities to achieve a common goal by sharing resources, data, and tasks. common distributed system architectures: Client-Server Architecture: o In this setup, servers provide resources or services, and clients request them. Clients and servers communicate over a network. o Examples: Web applications, where browsers (clients) request pages from web servers. Peer-to-Peer (P2P) Architecture: o Each node, or “peer,” in the network acts as both a client and a server, sharing resources directly with each other. o Examples: File-sharing networks like BitTorrent, where files are shared between users without a central server. Three-Tier Architecture: o This model has three layers: presentation (user interface), application (business logic), and data (database). Each layer is separated to allow easier scaling and maintenance. o Examples: Many web applications use this to separate user interfaces, logic processing, and data storage. Microservices Architecture: o The application is split into small, independent services, each handling specific functions. These services communicate over a network, often using REST APIs or messaging. o Examples: Modern web applications like Netflix or Amazon, where different services handle user accounts, orders, and recommendations independently. Service-Oriented Architecture (SOA): o Similar to microservices, SOA organizes functions as services. However, SOA typically uses an enterprise service bus (ESB) to manage communication between services. o Examples: Large enterprise applications in finance or government, where different services handle various aspects of business processes. Event-Driven Architecture: o Components interact by sending and responding to events rather than direct requests. An event triggers specific actions or processes in various parts of the system. o Examples: Real-time applications like IoT systems, where sensors trigger actions based on detected events. 3 TYCS UNIT 1 Cloud Computing Example of a Distributed System Any social media can have its Centralized Computer Network as its Headquarters and computer systems that can be accessed by any user and using their services will be the Autonomous Systems in the Distributed System Architecture. Distributed System Software: This Software enables computers to coordinate their activities and to share the resources such as Hardware, Software, Data, etc. Database: It is used to store the processed data that are processed by each Node/System of the Distributed systems that are connected to the Centralized network. Characteristics of Distributed System Resource Sharing: It is the ability to use any Hardware, Software, or Data anywhere in the System. Openness: It is concerned with Extensions and improvements in the system (i.e., How openly the software is developed and shared with others) Concurrency: It is naturally present in Distributed Systems, that deal with the same activity or functionality that can be performed by separate users who are in remote locations. Every local system has its independent Operating Systems and Resources. Scalability: It increases the scale of the system as a number of processors communicate with more users by accommodating to improve the responsiveness of the system. Fault tolerance: It cares about the reliability of the system if there is a failure in Hardware or Software, the system continues to operate properly without degrading the performance of the system. Transparency: It hides the complexity of the Distributed Systems to the Users and Application programs as there should be privacy in every system. Advantages of Distributed System Below are some of the advantages of Distributed System: Scalability: Distributed systems can easily grow by adding more computers (nodes), allowing them to handle increased demand without significant reconfiguration. Reliability and Fault Tolerance: If one part of the system fails, others can take over, making distributed systems more resilient and ensuring services remain available. Performance: Workloads can be split across multiple nodes, allowing tasks to be completed faster and improving overall system performance. Resource Sharing: Distributed systems allow resources like data, storage, and computing power to be shared across nodes, increasing efficiency and reducing costs. Geographical Distribution: Since nodes can be in different locations, distributed systems can serve users globally, providing faster access to resources based on location. Disadvantages of Distributed System Below are some of the disadvantages of Distributed System: Relevant Software for Distributed systems does not exist currently. Security possesses a problem due to easy access to data as the resources are shared to multiple systems. Networking Saturation may cause a hurdle in data transfer i.e., if there is a lag in the network then the user will face a problem accessing data. In comparison to a single user system, the database associated with distributed systems is much more complex and challenging to manage. If every node in a distributed system tries to send data at once, the network may become 4 TYCS UNIT 1 Cloud Computing overloaded. Use cases of Distributed System Finance and Commerce: Amazon, eBay, Online Banking, E-Commerce websites. Information Society: Search Engines, Wikipedia, Social Networking, Cloud Computing. Cloud Technologies: AWS, Salesforce, Microsoft Azure, SAP. Entertainment: Online Gaming, Music, youtube. Healthcare: Online patient records, Health Informatics. Transport and logistics: GPS, Google Maps. Web 1.0, Web 2.0, and Web 3.0 Web 1.0 was all about fetching and reading information. Web 2.0 is all about reading, writing, creating, and interacting with the end user. It was famously called the participative social web. Web 3.0 is the third generation of the World Wide Web, and is a vision of a decentralized web which is currently a work in progress. It is all about reading, writing, and owning. What is Web 1.0? Web 1.0 refers to the first stage of the World Wide Web evolution. Earlier, there were only a few content creators in Web 1.0 with a huge majority of users who are consumers of content. Personal web pages were common, consisting mainly of static pages hosted on ISP-run web servers, or free web hosting services. In Web 1.0 advertisements on websites while surfing the internet are banned. Also, in Web 1.0, Ofoto is an online digital photography website, on which users could store, share, view, and print digital pictures. Web 1.0 is a content delivery network (CDN) that enables the showcase of the piece of information on the websites. It can be used as a personal website. It costs the user as per pages viewed. It has directories that enable users to retrieve a particular piece of information. The era of Web 1.0 was roughly from 1991 to 2004. Four Design Essentials of a Web 1.0 Site Include: Static pages. Content is served from the server’s file system. Pages built using Server Side Includes or Common Gateway Interface (CGI). Frames and Tables are used to position and align the elements on a page. Features of the Web 1.0 Easy to connect static pages with the system via hyperlinks Supports elements like frames and tables with HTML 3.2 Also has graphics and a GIF button Less interaction between the user and the server You can send HTML forms via mail Provides only a one-way publishing medium What is Web 2.0? 2004 When the word Web 2.0 become famous due to the First Web 2.0 conference (later known as the Web 2.0 summit) held by Tim O’Reilly and Dale Dougherty, the term was coined by Darcy DiNucci in 1999. Web 2.0 refers to worldwide websites which highlight user-generated content, usability, and interoperability for end users. Web 2.0 is also called the participative 5 TYCS UNIT 1 Cloud Computing social web. It does not refer to a modification to any technical specification, but to modify the way Web pages are designed and used. The transition is beneficial, but it does not seem that when the changes occur. Interaction and collaboration with each other are allowed by Web 2.0 in a social media dialogue as the creator of user-generated content in a virtual community. Web 2.0 is an enhanced version of Web 1.0. Web browser technologies are used in Web 2.0 development, and it includes AJAX and JavaScript frameworks. Recently, AJAX and JavaScript frameworks have become very popular means of creating web 2.0 sites. Features of the Web 2.0 Free sorting of information permits users to retrieve and classify the information collectively. Dynamic content that is responsive to user input. Information flows between the site owner and site users using evaluation & online commenting. Developed APIs to allow self-usage, such as by a software application. Web access leads to concerns different, from the traditional Internet user base to a wider variety of users. Usage of Web 2.0 The social Web contains several online tools and platforms where people share their perspectives, opinions, thoughts, and experiences. Web 2.0 applications tend to interact much more with the end user. As such, the end-user is not only a user of the application but also a participant in these 8 tools mentioned below: Podcasting Blogging Tagging Curating with RSS Social bookmarking Social networking Social media Web content voting What is Web 3.0? It refers to the evolution of web utilization and interaction which includes altering the Web into a database, with the integration of DLT (Distributed Ledger Technology blockchain is an example) and that data can help to make Smart Contracts based on the needs of the individual. It enables the up-gradation of the backend of the web, after a long time of focusing on the front- end (Web 2.0 has mainly been about AJAX, tagging, and other front-end user-experience innovation). Web 3.0 is a term that is used to describe many evolutions of web usage and interaction among several paths. In this, data isn’t owned but instead shared but still is, where services show different views for the same web / the same data. Features of the Web 3.0 Semantic Web: The succeeding evolution of the Web involves the Semantic Web. The semantic web improves web technologies in demand to create, share and connect content through search and analysis based on the capability to comprehend the meaning of words, rather than on keywords or numbers. Artificial Intelligence: Combining this capability with natural language processing, in Web 3.0, computers can distinguish information like humans to provide faster and more 6 TYCS UNIT 1 Cloud Computing relevant results. They become more intelligent to fulfill the requirements of users. 3D Graphics: The three-dimensional design is being used widely in websites and services in Web 3.0. Museum guides, computer games, e-commerce, geospatial contexts, etc. are all examples that use 3D graphics. Connectivity: With Web 3.0, information is more connected thanks to semantic metadata. As a result, the user experience evolves to another level of connectivity that leverages all the available information. Ubiquity: Content is accessible by multiple applications, every device is connected to the web, and the services can be used everywhere. DLT and Smart Contracts: With the help of DLT, we can have a virtually impossible- to-hack database from which one can have value to their content and things they can own virtually, this is the technology that enables a trustless society through the integration of smart contracts which does not need to have a middle man to be a guarantor to make that contract occur on certain cause its based on data from that DLT. It’s a powerful tool that can make the world a far better place and generate more opportunities for everyone on the internet. Differences Between the Web 1.0, Web 2.0, and Web 3.0 S. No. Web 1.0 Web 2.0 Web 3.0 1. Mostly Read-Only Wildly Read-Write Portable and Personal 2. Company Focus Community Focus Individual Focus 3. Home Pages Blogs / Wikis Live-streams / Waves 4. Owning Content Sharing Content Consolidating Content 5. Web Forms Web Applications Smart Applications 6. Directories Tagging User behavior 7. Page Views Cost Per Click User Engagement 8. Banner Advertising Interactive Advertising Behavioral Advertising 9. Britannica Online Wikipedia The Semantic Web 10. HTML/Portals XML / RSS RDF / RDFS / OWL 7 TYCS UNIT 1 Cloud Computing S. No. Web 1.0 Web 2.0 Web 3.0 Data of many was Data was personalized and 11. Data was not Focused. controlled by some no use of mediatory. mediatory. Information sharing is 12. Interaction is the goal. Immersion is the goal. the goal. It connects information Focuses on relating 13. It aims to connect people. as its primary goal. knowledge. Introduction of web Intelligent web-based 14. Static websites applications functions and apps A simpler, more passive 15. An enhanced social Web A semantic web exists. web. Web and File Servers, Web 3.0 technologies AJAX, JavaScript, CSS, and HTML, and Portals are include blockchain, 16. HTML5 are examples of technologies connected artificial intelligence, and related technology. to Web 1.0. decentralized protocols. Associated Technologies Web and File Servers Associated Technologies Search Engines Searching Using Associated Technologies (including Semantics Frameworks for AltaVista and Databases of Ajax and JavaScript 17. Yahoo!) Information Microsoft.NET E-mail accounts Ontologies Blogs (Yahoo!, Intelligent Digital Wikis and others. Hotmail) Personal Assistants Peer-to-Peer File and others. Sharing (Napster, BitTorrent) and others. 8 TYCS UNIT 1 Cloud Computing Parallel Computing : It is the use of multiple processing elements simultaneously for solving any problem. Problems are broken down into instructions and are solved concurrently as each resource that has been applied to work is working at the same time. Advantages of Parallel Computing over Serial Computing are as follows: 1. It saves time and money as many resources working together will reduce the time and cut potential costs. 2. It can be impractical to solve larger problems on Serial Computing. 3. It can take advantage of non-local resources when the local resources are finite. 4. Serial Computing ‘wastes’ the potential computing power, thus Parallel Computing makes better work of the hardware. Types of Parallelism: 1. Bit-level parallelism – It is the form of parallel computing which is based on the increasing processor’s size. It reduces the number of instructions that the system must execute in order to perform a task on large-sized data. Example: Consider a scenario where an 8-bit processor must compute the sum of two 16- bit integers. It must first sum up the 8 lower-order bits, then add the 8 higher-order bits, thus requiring two instructions to perform the operation. A 16-bit processor can perform the operation with just one instruction. 2. Instruction-level parallelism – A processor can only address less than one instruction for each clock cycle phase. These instructions can be re-ordered and grouped which are later on executed concurrently without affecting the result of the program. This is called instruction-level parallelism. 3. Task Parallelism – Task parallelism employs the decomposition of a task into subtasks and then allocating each of the subtasks for execution. The processors perform the execution of sub-tasks concurrently. 4. Data-level parallelism (DLP) – Instructions from a single stream operate concurrently on several data – Limited by non-regular data manipulation patterns and by memory bandwidth Why parallel computing? The whole real-world runs in dynamic nature i.e. many things happen at a certain time but at different places concurrently. This data is extensively huge to manage. Real-world data needs more dynamic simulation and modeling, and for achieving the same, parallel computing is the key. Parallel computing provides concurrency and saves time and money. Complex, large datasets, and their management can be organized only and only using parallel computing’s approach. Ensures the effective utilization of the resources. The hardware is guaranteed to be used effectively whereas in serial computation only some part of the hardware was used and the rest rendered idle. Also, it is impractical to implement real-time systems using serial computing. Applications of Parallel Computing: Databases and Data mining. Real-time simulation of systems. Science and Engineering. 9 TYCS UNIT 1 Cloud Computing Advanced graphics, augmented reality, and virtual reality. Limitations of Parallel Computing: It addresses such as communication and synchronization between multiple sub-tasks and processes which is difficult to achieve. The algorithms must be managed in such a way that they can be handled in a parallel mechanism. The algorithms or programs must have low coupling and high cohesion. But it’s difficult to create such programs. More technically skilled and expert programmers can code a parallelism-based program well. Difference between Parallel Computing and Distributed Computing: S.NO Parallel Computing Distributed Computing Many operations are performed System components are located at different 1. simultaneously locations 2. Single computer is required Uses multiple computers Multiple processors perform Multiple computers perform multiple 3. multiple operations operations It may have shared or distributed 4. It have only distributed memory memory Processors communicate with each Computer communicate with each other 5. other through bus through message passing. Improves system scalability, fault tolerance and 6. Improves the system performance resource sharing capabilities Difference between Cloud Computing and Distributed Computing : S.No. CLOUD COMPUTING DISTRIBUTED COMPUTING Cloud computing refers to providing on Distributed computing refers to solve a demand IT resources/services like problem over distributed autonomous server, storage, database, networking, computers and they communicate between 01. analytics, software etc. over internet. them over a network. In simple cloud computing can be said In simple distributed computing can be said 02. as a computing technique that delivers as a computing technique which allows to 10 TYCS UNIT 1 Cloud Computing hosted services over the internet to its multiple computers to communicate and users/customers. work to solve a single problem. It is classified into 3 different types such as It is classified into 4 different types such Distributed Computing Systems, Distributed as Public Cloud, Private Cloud, Information Systems and Distributed 03. Community Cloud and Hybrid Cloud. Pervasive Systems. There are many benefits of cloud computing like cost effective, elasticity There are many benefits of distributed and reliable, economies of Scale, access computing like flexibility, reliability, 04. to the global market etc. improved performance etc. Cloud computing provides services such Distributed computing helps to achieve as hardware, software, networking computational tasks more faster than using a 05. resources through internet. single computer as it takes a lot of time. The goal of distributed computing is to The goal of cloud computing is to distribute a single task among multiple provide on demand computing services computers and to solve it quickly by 06. over internet on pay per use model. maintaining coordination between them. Some characteristics of cloud computing Some characteristics of distributed are providing shared pool of computing are distributing a single task configurable computing resources, on- among computers to progress the work at demand service, pay per use, same time, Remote Procedure calls and provisioned by the Service Providers Remote Method Invocation for distributed 07. etc. computations. Some disadvantage of cloud computing includes less control especially in the Some disadvantage of distributed computing case of public clouds, restrictions on includes chances of failure of nodes, slow available services may be faced and network may create problem in 08. cloud security. communication. Cloud Computing Architecture cloud computing technology is used by both small and large organizations to store the information in cloud and access it from anywhere at anytime using the internet connection. Cloud computing architecture is a combination of service-oriented architecture and event- driven architecture. Cloud computing architecture is divided into the following two parts - o Front End o Back End diagram shows the architecture of cloud computing – 11 TYCS UNIT 1 Cloud Computing Front End The front end is used by the client. It contains client-side interfaces and applications that are required to access the cloud computing platforms. The front end includes web servers (including Chrome, Firefox, internet explorer, etc.), thin & fat clients, tablets, and mobile devices. Back End The back end is used by the service provider. It manages all the resources that are required to provide cloud computing services. It includes a huge amount of data storage, security mechanism, virtual machines, deploying models, servers, traffic control mechanisms, etc. Components of Cloud Computing Architecture There are the following components of cloud computing architecture - 1. Client Infrastructure Client Infrastructure is a Front end component. It provides GUI (Graphical User Interface) to interact with the cloud. 2. Application The application may be any software or platform that a client wants to access. 3. Service A Cloud Services manages that which type of service you access according to the client’s requirement. Cloud computing offers the following three type of services: i. Software as a Service (SaaS) – It is also known as cloud application services. Mostly, SaaS applications run directly through the web browser means we do not require to download and 12 TYCS UNIT 1 Cloud Computing install these applications. Some important example of SaaS is given below – Example: Google Apps, Salesforce Dropbox, Slack, Hubspot, Cisco WebEx. ii. Platform as a Service (PaaS) – It is also known as cloud platform services. It is quite similar to SaaS, but the difference is that PaaS provides a platform for software creation, but using SaaS, we can access software over the internet without the need of any platform. Example: Windows Azure, Force.com, Magento Commerce Cloud, OpenShift. iii. Infrastructure as a Service (IaaS) – It is also known as cloud infrastructure services. It is responsible for managing applications data, middleware, and runtime environments. Example: Amazon Web Services (AWS) EC2, Google Compute Engine (GCE), Cisco Metapod. 4. Runtime Cloud Runtime Cloud provides the execution and runtime environment to the virtual machines. 5. Storage Storage is one of the most important components of cloud computing. It provides a huge amount of storage capacity in the cloud to store and manage data. 6. Infrastructure It provides services on the host level, application level, and network level. Cloud infrastructure includes hardware and software components such as servers, storage, network devices, virtualization software, and other storage resources that are needed to support the cloud computing model. 7. Management Management is used to manage components such as application, service, runtime cloud, storage, infrastructure, and other security issues in the backend and establish coordination between them. 8. Security Security is an in-built back end component of cloud computing. It implements a security mechanism in the back end. 9. Internet The Internet is medium through which front end and back end can interact and communicate with each other. Types of Cloud Cloud computing is a revolutionary technology transforming how we store, access, and process data. It simply refers to delivering computing resources, such as servers, storage, databases, software, and applications, over the Internet. Cloud computing uses a network of remote 13 TYCS UNIT 1 Cloud Computing computer systems housed on the net to save and process data rather than relying on physical infrastructure. Cloud service companies use advanced security techniques, which include encryption, firewalls, and access restrictions, to secure your data from unauthorized access. Moreover, because your information is saved in the cloud, it is secure even if your nearby devices are damaged, misplaced, or stolen. Redundancy and cloud backups guarantee that your data may be restored promptly and effectively in case of any unexpected situations. Public Cloud Public cloud is open to all to store and access information via the Internet using the pay-per- usage method. In public cloud, computing resources are managed and operated by the Cloud Service Provider (CSP). The CSP looks after the supporting infrastructure and ensures that the resources are accessible to and scalable for the users. Due to its open architecture, anyone with an internet connection may use the public cloud, regardless of location or company size. Users can use the CSP's numerous services, store their data, and run apps. By using a pay-per-usage strategy, customers can be assured that they will only be charged for the resources they actually use, which is a smart financial choice. Example: Amazon elastic compute cloud (EC2), IBM SmartCloud Enterprise, Microsoft, Google App Engine, Windows Azure Services Platform. Characteristics of Public Cloud The public cloud has the following key characteristics: o Accessibility: Public cloud services are available to anyone with an internet connection. Users can access their data and programs at any time and from anywhere. o Shared Infrastructure: Several users share the infrastructure in public cloud settings. Cost reductions and effective resource use are made possible by this. o Scalability: By using the public cloud, users can easily adjust the resources they need 14 TYCS UNIT 1 Cloud Computing based on their requirements, allowing for quick scaling up or down. o Pay-per-Usage: When using the public cloud, payment is based on usage, so users only pay for the resources they actually use. This helps optimize costs and eliminates the need for upfront investments. o Managed by Service Providers: Cloud service providers manage and maintain public cloud infrastructure. They handle hardware maintenance, software updates, and security tasks, relieving users of these responsibilities. o Reliability and Redundancy: Public cloud providers ensure high reliability by implementing redundant systems and multiple data centers. By doing this, the probability of losing data and experiencing service disruptions is reduced. o Security Measures: Public cloud providers implement robust security measures to protect user data. These include encryption, access controls, and regular security audits. Advantages of Public Cloud There are the following advantages of Public Cloud - o Public cloud is owned at a lower cost than the private and hybrid cloud. o Public cloud is maintained by the cloud service provider, so do not need to worry about the maintenance. o Public cloud is easier to integrate. Hence it offers a better flexibility approach to consumers. o Public cloud is location independent because its services are delivered through the internet. o Public cloud is highly scalable as per the requirement of computing resources. o It is accessible by the general public, so there is no limit to the number of users. o Rapid deployment of services and applications. o Reduced time and effort in hardware procurement and setup. o The cloud provider offers a range of services and resources that you can avail of. o Built-in redundancy and resilience for enhanced reliability. Disadvantages of Public Cloud o Public Cloud is less secure because resources are shared publicly. o Performance depends upon the high-speed internet network link to the cloud provider. o The data is not under the control of the client. o Dependency on the cloud service provider for availability and service level agreements. 15 TYCS UNIT 1 Cloud Computing o Compliance challenges in meeting industry-specific regulations and standards. o Risk of vendor lock-in and limited portability of applications and data. o Concerns about data privacy and confidentiality. o Potential for unexpected costs with usage-based pricing models. o Lack of customization options and flexibility compared to private or hybrid cloud environments. o Reliance to the cloud provider's support and responsiveness for issue resolution. Private Cloud Private cloud is also known as an internal cloud or corporate cloud. It is used by organizations to build and manage their own data centers internally or by the third party. It can be deployed using Opensource tools such as Openstack and Eucalyptus. Examples: VMware vSphere, OpenStack, Microsoft Azure Stack, Oracle Cloud at Customer, and IBM Cloud Private. Based on the location and management, National Institute of Standards and Technology (NIST) divide private cloud into the following two parts- o On-premise private cloud: An on-premise private cloud is situated within the physical infrastructure of the organization. It involves setting up and running a specific data center that offers cloud services just for internal usage by the company. The infrastructure is still completely under the hands of the organization, which gives them the freedom to modify and set it up in any way they see fit. Organizations can successfully manage security and compliance issues with this degree of control. However, on-premise private cloud setup and management necessitate significant hardware, software, and IT knowledge expenditures. 16 TYCS UNIT 1 Cloud Computing o Outsourced private cloud: An outsourced private cloud involves partnering with a third- party service provider to host and manage the cloud infrastructure on behalf of the organization. The provider may operate the private cloud in their data center or a colocation facility. In this arrangement, the organization benefits from the expertise and resources of the service provider, alleviating the burden of infrastructure management. The outsourced private cloud model offers scalability, as the provider can adjust resources based on the organization's needs. Due to its flexibility, it is a desirable choice for businesses that desire the advantages of a private cloud deployment without the initial capital outlay and ongoing maintenance expenses involved with an on-premise implementation. Compared to public cloud options, both on-premise and external private clouds give businesses more control over their data, apps, and security. Private clouds are particularly suitable for organizations with strict compliance requirements, sensitive data, or specialized workloads that demand high levels of customization and security. Characteristics of Private Cloud The private cloud has the following key characteristics: o Exclusive Use: Private cloud is dedicated to a single organization, ensuring the resources and services are tailored to its needs. It is like having a personal cloud environment exclusively for that organization. o Control and Security: Private cloud offers organizations higher control and security than public cloud options. Organizations have more control over data governance, access controls, and security measures. o Customization and Flexibility: Private cloud allows organizations to customize the infrastructure according to their specific requirements. They can configure resources, networks, and storage to optimize performance and efficiency. o Scalability and Resource Allocation: The private cloud can scale and allocate resources. According to demand, businesses may scale up or down their infrastructure, effectively using their resources. o Performance and dependability: Private clouds give businesses more control over the infrastructure at the foundation, improving performance and dependability. o Compliance and Regulatory Requirements: Organizations may more easily fulfill certain compliance and regulatory standards using the private cloud. It provides the freedom to put in place strong security measures, follow data residency laws, and follow industry-specific norms. o Hybrid Cloud Integration: Private cloud can be integrated with public cloud services, forming a hybrid cloud infrastructure. This integration allows organizations to leverage the benefits of both private and public clouds. 17 TYCS UNIT 1 Cloud Computing Advantages of Private Cloud There are the following advantages of the Private Cloud - o Private cloud provides a high level of security and privacy to the users. o Private cloud offers better performance with improved speed and space capacity. o It allows the IT team to quickly allocate and deliver on-demand IT resources. o The organization has full control over the cloud because it is managed by the organization itself. So, there is no need for the organization to depends on anybody. o It is suitable for organizations that require a separate cloud for their personal use and data security is the first priority. o Customizable to meet specific business needs and compliance regulations. o Higher reliability and uptime compared to public cloud environments. o Seamless integration with existing on-premises systems and applications. o Better compliance and governance capabilities for industry-specific regulations. o Enhanced flexibility in resource allocation and application deployment. Disadvantages of Private Cloud o Skilled people are required to manage and operate cloud services. o Private cloud is accessible within the organization, so the area of operations is limited. o Private cloud is not suitable for organizations that have a high user base, and organizations that do not have the prebuilt infrastructure, sufficient manpower to maintain and manage the cloud. o Higher upfront costs and ongoing maintenance expenses. o Scaling resources can be challenging compared to public or hybrid cloud options. o Relies on internal IT staff for management and troubleshooting. o Slower deployment timelines and implementation compared to public cloud solutions. o Limited access to the latest advancements and innovations offered by public cloud providers. o Reduced flexibility and agility compared to public cloud options. o Challenges in keeping up with hardware and software upgrades and compatibility. 18 TYCS UNIT 1 Cloud Computing o Higher risks of technology becoming outdated and the need for regular infrastructure updates. Hybrid Cloud Hybrid Cloud is a combination of the public cloud and the private cloud. we can say: Hybrid Cloud = Public Cloud + Private Cloud Hybrid cloud is partially secure because the services which are running on the public cloud can be accessed by anyone, while the services which are running on a private cloud can be accessed only by the organization's users. In a hybrid cloud setup, organizations can leverage the benefits of both public and private clouds to create a flexible and scalable computing environment. The public cloud portion allows using cloud services provided by third-party providers, accessible over the Internet. Example: Google Application Suite (Gmail, Google Apps, and Google Drive), Office 365 (MS Office on the Web and One Drive), Amazon Web Services. Characteristics of Hybrid Cloud o Integration of Public and Private Clouds: Hybrid cloud seamlessly integrates public and private clouds, allowing organizations to leverage both advantages. It provides a unified platform where workloads and data can be deployed and managed across both environments. 19 TYCS UNIT 1 Cloud Computing o Flexibility and Scalability: Hybrid cloud offers resource allocation and scalability flexibility. Organizations can dynamically scale their infrastructure by utilizing additional resources from the public cloud while maintaining control over critical workloads on the private cloud. o Enhanced Security and Control: Hybrid cloud allows organizations to maintain higher security and control over their sensitive data and critical applications. Private cloud components provide a secure and dedicated environment, while public cloud resources can be used for non-sensitive tasks, ensuring a balanced approach to data protection. o Cost Optimization: Hybrid cloud enables organizations to optimize costs by utilizing the cost-effective public cloud for non-sensitive workloads while keeping mission-critical applications and data on the more cost-efficient private cloud. This approach allows for efficient resource allocation and cost management. o Data and Application Portability: Organizations can move workloads and data between public and private clouds as needed with a hybrid cloud. This portability offers agility and the ability to adapt to changing business requirements, ensuring optimal performance and responsiveness. o Compliance and Regulatory Compliance: Hybrid cloud helps organizations address compliance and regulatory requirements more effectively. Sensitive data and applications can be kept within the private cloud, ensuring compliance with industry-specific regulations while leveraging the public cloud for other non-sensitive operations. o Disaster Recovery and Business Continuity: Hybrid cloud facilitates robust disaster recovery and business continuity strategies. Organizations can replicate critical data and applications between the private and public clouds, ensuring redundancy and minimizing the risk of data loss or service disruptions. Advantages of Hybrid Cloud There are the following advantages of Hybrid Cloud - o Hybrid cloud is suitable for organizations that require more security than the public cloud. o Hybrid cloud helps you to deliver new products and services more quickly. o Hybrid cloud provides an excellent way to reduce the risk. o Hybrid cloud offers flexible resources because of the public cloud and secure resources because of the private cloud. o Hybrid facilitates seamless integration between on-premises infrastructure and cloud environments. 20 TYCS UNIT 1 Cloud Computing o Hybrid provides greater control over sensitive data and compliance requirements. o Hybrid enables efficient workload distribution based on specific needs and performance requirements. o Hybrid offers cost optimization by allowing organizations to choose the most suitable cloud platform for different workloads. o Hybrid enhances business continuity and disaster recovery capabilities with private and public cloud resources. o Hybrid supports hybrid cloud architecture, allowing applications and data to be deployed across multiple cloud environments based on their unique requirements. Disadvantages of Hybrid Cloud o In Hybrid Cloud, security feature is not as good as the private cloud. o Managing a hybrid cloud is complex because it is difficult to manage more than one type of deployment model. o In the hybrid cloud, the reliability of the services depends on cloud service providers. o Potential challenges in data integration and ensuring seamless connectivity between different cloud platforms. o Higher costs due to the need for managing and integrating multiple cloud environments. o Increased complexity in data governance and compliance management across different cloud providers. o Dependency on stable and high-bandwidth internet connections for efficient hybrid cloud operations. o Potential compatibility issues between various cloud platforms and applications. o Risk of vendor lock-in and limited portability of applications and data across different cloud providers. o Requires skilled IT staff with expertise in managing hybrid cloud environments. Community Cloud Community cloud allows systems and services to be accessible by a group of several organizations to share the information between the organization and a specific community. It is owned, managed, and operated by one or more organizations in the community, a third party, or a combination of them. In a community cloud setup, the participating organizations, which can be from the same industry, government sector, or any other community, collaborate to establish a shared cloud infrastructure. This infrastructure allows them to access shared services, applications, and data relevant to their community. 21 TYCS UNIT 1 Cloud Computing Example: Health Care community cloud Characteristics of Community Cloud o Shared Infrastructure: Community cloud provides a shared infrastructure accessible to a specific community of organizations. The participating organizations can leverage this common cloud infrastructure to meet their shared computing needs and objectives. o Community-specific Services: The community cloud provides resources, apps, and services adapted to the participating organizations' demands. These services are created to meet the community's specific requirements and difficulties while promoting effective communication and information exchange. o Community Ownership and Management: The community cloud is owned, managed, and operated by one or more organizations from the community, a third party, or a combination of both. The involved organizations have a say in the governance and decision-making procedures to ensure that the cloud infrastructure meets their shared objectives. o Enhanced Security and Compliance: Community cloud emphasizes security and compliance measures relevant to the specific community. It allows for implementing robust security controls, access management, and compliance frameworks that meet the community's regulatory requirements and industry standards. o Cost Sharing and Efficiency: Participating organizations in a community cloud benefit from cost sharing. By sharing the infrastructure and resources, the costs associated with establishing and maintaining the cloud environment are distributed among the community members. This leads to cost efficiency and reduced financial burden for individual organizations. o Collaboration and Knowledge Sharing: The community cloud encourages communication and information exchange amongst participating businesses. It gives community members a forum for project collaboration, information sharing, and resource exploitation. This encourages creativity, education, and effectiveness within the neighborhood. 22 TYCS UNIT 1 Cloud Computing o Scalability and Flexibility: Community cloud enables organizations to scale up or reduce their resources in response to demand. This allows the community to adjust to shifting computing requirements and efficiently use cloud resources as needed. Advantages of Community Cloud There are the following advantages of Community Cloud - o Community cloud is cost-effective because the whole cloud is being shared by several organizations or communities. o Community cloud is suitable for organizations that want to have a collaborative cloud with more security features than the public cloud. o It provides better security than the public cloud. o It provdes collaborative and distributive environment. o Community cloud allows us to share cloud resources, infrastructure, and other capabilities among various organizations. o Offers customization options to meet the unique needs and requirements of the community. o Simplifies compliance with industry-specific regulations and standards through shared security measures. o Provides scalability and flexibility, allowing organizations to scale resources based on changing demands. o Promotes efficient resource utilization, reducing wastage, and optimizing performance within the community. o Enables organizations to leverage shared expertise and experiences, leading to improved decision-making and problem-solving. Disadvantages of Community Cloud o Community cloud is not a good choice for every organization. o Security features are not as good as the private cloud. o It is not suitable if there is no collaboration. o The fixed amount of data storage and bandwidth is shared among all community members. o Challenges in ensuring consistent performance and availability when multiple organizations share the same resources. 23 TYCS UNIT 1 Cloud Computing o Limited scalability options as the shared resources determine the community cloud's capacity. o Potential conflicts of interest among community members regarding resource allocation and usage. o Transparent governance and agreement frameworks are required to address potential disputes and ensure fair resource distribution. o Inadequate technical support and service level agreements (SLAs) compared to private or public cloud options. Difference between public cloud, private cloud, hybrid cloud, and community cloud - Parameter Public Cloud Private Hybrid Community Multi-Cloud Cloud Cloud Cloud Enterprise Service Enterprise Community Multiple cloud Host (Third provider (Third party) (Third party) providers party) Selected Community Multiple Users General public Selected users users members organizations Internet, Access Internet Internet, VPN Internet, VPN Internet, VPN VPN Service Multiple Owner Enterprise Enterprise Community provider organizations Shared cost Variable Infrastructure Mixed Cost Pay-per-usage among depending on investment (variable) members usage Varied Varied Varied Provider's Enhanced Security (depends (depends on (depends on responsibility control on setup) setup) setup) Scalable Scalable Scalable Scalable Highly Scalability within within within within scalable resources resources resources resources Varied Varied Varied Limited Customization High control (depends (depends on (depends on control on setup) setup) setup) Varied Resource Shared among Shared among Not shared Not shared (depends Sharing community providers on setup) 24 TYCS UNIT 1 Cloud Computing Cloud Service Models Infrastructure as a Service | IaaS Iaas is also known as Hardware as a Service (HaaS). It is one of the layers of the cloud computing platform. It allows customers to outsource their IT infrastructures, such as servers, networking, processing, storage, virtual machines, and other resources. Customers access these resources on the Internet using a pay-as-per-use model. In traditional hosting services, IT infrastructure was rented out for a specific period of time, with pre-determined hardware configuration. The client paid for the configuration and time, regardless of the actual use. With the help of the IaaS cloud computing platform layer, clients can dynamically scale the configuration to meet changing requirements and are billed only for the services actually used. The IaaS cloud computing platform layer eliminates the need for every organization to maintain its IT infrastructure. IaaS is offered in three models: public, private, and hybrid cloud. The private cloud implies that the infrastructure resides at the customer's premise. In the case of the public cloud, it is located at the cloud computing platform vendor's data center, and the hybrid cloud is a combination of the two in which the customer selects the best of both public cloud and private cloud. Some of the Primary Characteristics of IaaS are: o Scalability: IaaS enables users to adjust computing capacity according to their demands without requiring long lead times or up-front hardware purchases. o Virtualization: IaaS uses virtualization technology to generate virtualized instances that can be managed and delivered on-demand by abstracting physical computer resources. o Resource Pooling: This feature enables users to share computer resources, such as networking and storage, among a number of users, maximizing resource utilization and cutting costs. o Elasticity: IaaS allows users to dynamically modify their computing resources in response to shifting demand, ensuring optimum performance and financial viability. o Self-Service: IaaS offers consumers "self-service" portals that let them independently deploy, administer, and monitor their computing resources without the assistance of IT employees. o Availability: To ensure the high availability and reliability of services, IaaS providers often run redundant and geographically dispersed data centers. 25 TYCS UNIT 1 Cloud Computing o Security: To safeguard their infrastructure and client data, IaaS companies adopt security measures, including data encryption, firewalls, access controls, and threat detection. o Customization: IaaS enables users to alter the operating systems, application stacks, and security settings of their virtualized instances to suit their unique requirements. IaaS, or infrastructure as a service, is a cloud computing model that offers users virtualized computer resources on a pay-per-use basis. Users can scale their resources up or down in accordance with their demands while taking advantage of high availability, security, and customization possibilities. IaaS provider provides the following services - Computing: To provision virtual machines (VMs) for end users, IaaS providers offer virtual central processing units (CPUs) and virtual main memory. As a result, users may run their workloads and apps on the provider's infrastructure without having to worry about managing the underlying hardware. Storage: Back-end storage services are provided by IaaS providers, enabling users to store and access their files and data. This offers scalable and trustworthy storage solutions for a variety of use cases and can include block storage, object storage, or file storage alternatives. Network: IaaS providers provide networking tools, including routers, switches, and bridges for the VMs through Network as a Service (NaaS). This enables connectivity and communication between VMs and other resources while also allowing customers to create and maintain their network architecture within the IaaS environment. Load balancers: Infrastructure-layer load balancing services are provided by IaaS providers. Incoming network traffic is split up among many virtual machines (VMs) or resources by load balancers, resulting in effective resource management and excellent application and service availability. Security: Security features and services are frequently offered by IaaS providers as part of their offering. To safeguard data and resources housed on the IaaS platform, this can include network security, firewall configurations, access controls, encryption, and other security measures. Backup and disaster recovery services are provided by some IaaS providers, enabling customers to create backup copies of their data and software and put recovery plans in place in the event of data loss or system problems. This promotes business continuity and data security. Monitoring and Management: IaaS suppliers provide tools and services for monitoring and controlling the resources and infrastructure. This can involve managing VMs, storage, and network configurations using management panels or APIs, as well as measuring resource utilization, automating scaling, and monitoring performance. 26 TYCS UNIT 1 Cloud Computing It's vital to remember that depending on the provider and their offerings, the precise services offered by IaaS providers may change. The list above illustrates some typical IaaS providers' common services. Virtualized Computing Resources: o Cloud computing's Infrastructure as a Service (IaaS) model must include virtualized computer resources. IaaS enables users to rent computer infrastructure from cloud service providers over the internet, including virtual machines (VMs), virtual networks, and storage. o In IaaS, virtual machines (VMs) are a crucial type of virtualized computing resource. Multiple operating systems and applications can operate on a single physical host machine thanks to virtual machines (VMs), which are software simulations of real hardware. Customers can select the VM that best matches their needs from a variety of VM types that IaaS providers normally offer, each with a different CPU, memory, and storage configuration. o Virtual Networks: Another virtualized computing resource in IaaS is virtual networks. Customers can design and maintain network topologies in the cloud, including subnets, IP addresses, and routing tables, using virtual networks. Virtual networks offer clients' applications and data a secure, decoupled environment and make it simple to integrate them with on-premises networks. o A crucial virtualized computing resource in IaaS is storage. IaaS providers frequently offer various storage options, including block, object, and file storage, each with its own performance, pricing, and cost-effectiveness features. Because storage resources are highly scalable, clients can alter their storage capacity as needed without having to change their actual hardware. o In comparison to conventional on-premises hardware architecture, virtualized computing resources have better scalability, flexibility, and cost-effectiveness. Without making expensive hardware investments or taking care of their own data centers, customers may rent the computing capabilities they require on demand and only pay for what they use. Advantages of IaaS Cloud Computing Layer There are the following advantages of the IaaS computing layer - 1. Shared infrastructure IaaS allows multiple users to share the same physical infrastructure. 2. Web access to the resources 27 TYCS UNIT 1 Cloud Computing Iaas allows IT users to access resources over the internet. 3. Pay-as-per-use model IaaS providers provide services based on a pay-as-per-use basis. The users are required to pay for what they have used. 4. Focus on the core business IaaS providers focus on the organization's core business rather than on IT infrastructure. 5. On-demand scalability On-demand scalability is one of the biggest advantages of IaaS. Using IaaS, users do not worry about upgrading software and troubleshooting issues related to hardware components. Disadvantages of IaaS Cloud Computing Layer Security: In the IaaS context, security is still a major problem. Although IaaS companies have security safeguards in place, it is difficult to achieve 100% protection. To safeguard their data and applications, customers must verify that the necessary security configurations and controls are in place. Maintenance and Upgrade: The underlying infrastructure is maintained by IaaS service providers, but they are not required to automatically upgrade the operating systems or software used by client applications. Compatibility problems could come from this, making it harder for customers to maintain their current software. Interoperability Issues: Interoperability Problems: Because of interoperability problems, moving virtual machines (VMs) from one IaaS provider to another can be difficult. As a result, consumers may find it challenging to transfer providers or integrate their IaaS resources with other platforms or services. This may result in vendor lock-in. Performance Variability: Due to shared resources and multi-tenancy, the performance of VMs in the IaaS system can change. During times of high demand or while sharing resources with other users on the same infrastructure, customers' performance may fluctuate. Dependency on Internet Connectivity: Internet access is crucial to IaaS, which is largely dependent on it. Any interruptions or connectivity problems could hinder access to cloud infrastructure and services, which would have an impact on productivity and business operations. Learning Curve and Complexity: Learning Curve and Complexity: Using and administering IaaS calls for a certain amount of technical know-how and comprehension of cloud computing principles. To efficiently use and manage the IaaS resources, organizations may need to spend money on IT employee training or turn to outside experts. 28 TYCS UNIT 1 Cloud Computing Cost Management: Cost Control: IaaS provides scalability and flexibility, but it can also result in difficult cost control. In order to prevent unforeseen charges, customers must keep an eye on and manage their resource utilization. Higher costs may be the result of inefficient use of resources or improper resource allocation. Platform as a Service | PaaS Platform as a Service (PaaS) provides a runtime environment. It allows programmers to easily create, test, run, and deploy web applications. You can purchase these applications from a cloud service provider on a pay-as-per-use basis and access them using an Internet connection. In PaaS, back-end scalability is managed by the cloud service provider, so end-users do not need to worry about managing the infrastructure. PaaS includes infrastructure (servers, storage, and networking) and platform (middleware, development tools, database management systems, business intelligence, and more) to support the web application life cycle. Examples: Google App Engine, Force.com, Joyent, Azure. Some of the Services Provided by PaaS are: Programming Languages: A variety of programming languages are supported by PaaS providers, allowing developers to choose their favorite language to create apps. Languages including Java, Python, Ruby,.NET, PHP, and Node.js are frequently supported. Application Frameworks: Pre-configured application frameworks are offered by PaaS platforms, which streamline the development process. These frameworks include features like libraries, APIs, and tools for quick development, laying the groundwork for creating scalable and reliable applications. Popular application frameworks include Laravel, Django, Ruby on Rails, and Spring Framework. Databases: Managed database services are provided by PaaS providers, making it simple for developers to store and retrieve data. These services support relational databases (like MySQL, PostgreSQL, and Microsoft SQL Server) and NoSQL databases (like MongoDB, Cassandra, and Redis). For its database services, PaaS platforms often offer automated backups, scalability, and monitoring tools. Additional Tools and Services: PaaS providers provide a range of extra tools and services to aid in the lifecycle of application development and deployment. These may consist of the following: o Development Tools: to speed up the development process, these include integrated development environments (IDEs), version control systems, build and deployment tools, and debugging tools. 29 TYCS UNIT 1 Cloud Computing o Collaboration and Communication: PaaS platforms frequently come with capabilities for team collaboration, including chat services, shared repositories, and project management software. o Analytics and Monitoring: PaaS providers may give tools for tracking application performance, examining user behavior data, and producing insights to improve application behavior and address problems. o Security and Identity Management: PaaS systems come with built-in security features like access control, encryption, and mechanisms for authentication and authorization to protect the privacy of applications and data. o Scalability and load balancing: PaaS services frequently offer automatic scaling capabilities that let applications allocate more resources as needed to manage a spike in traffic or demand. To improve performance and availability, load balancing features divide incoming requests among various instances of the application. Because of the services offered by PaaS platforms, developers may concentrate on creating applications rather than worrying about the infrastructure, middleware, or database management that supports them. A streamlined and effective environment is provided by PaaS for developing, deploying, and managing applications. Advantages of PaaS There are the following advantages of PaaS - 1) Simplified Development PaaS allows developers to focus on development and innovation without worrying about infrastructure management. 2) Lower risk No need for up-front investment in hardware and software. Developers only need a PC and an internet connection to start building applications. 3) Prebuilt business functionality Some PaaS vendors also provide already defined business functionality so that users can avoid building everything from very scratch and hence can directly start the projects only. 4) Instant community PaaS vendors frequently provide online communities where the developer can get ideas, share experiences, and seek advice from others. 30 TYCS UNIT 1 Cloud Computing 5) Scalability Applications deployed can scale from one to thousands of users without any changes to the applications. Disadvantages of PaaS Loud Computing Layer 1) Vendor lock-in One has to write the applications according to the platform provided by the PaaS vendor, so the migration of an application to another PaaS vendor would be a problem. 2) Data Privacy Corporate data, whether it can be critical or not, will be private, so if it is not located within the walls of the company, there can be a risk in terms of privacy of data. 3) Integration with the rest of the systems applications It may happen that some applications are local, and some are in the cloud. So there will be chances of increased complexity when we want to use data in the cloud with the local data. 4) Limited Customization and Control: The degree of customization and control over the underlying infrastructure is constrained by PaaS platforms' frequent provision of pre-configured services and their relative rigidity. Organizations can evaluate the viability of PaaS solutions for their unique requirements by taking into account these characteristics, as well as the trade-offs and potential difficulties involved in implementing such platforms. Popular PaaS Providers The below table shows some popular PaaS providers and services that are provided by them - 31 TYCS UNIT 1 Cloud Computing Providers Services App Identity, URL Fetch, Cloud storage client Google App Engine (GAE) library, Logservice Faster implementation, Rapid scalability, CRM Salesforce.com Services, Sales cloud, Mobile connectivity, Chatter. Windows Azure Compute, security, IoT, Data Storage. AppFog Justcloud.com, SkyDrive, GoogleDocs Openshift RedHat, Microsoft Azure. Cloud Foundry from VMware Data, Messaging, and other services. Software as a Service | SaaS SaaS is also known as "On-Demand Software." It is a software distribution model in which services are hosted by a cloud service provider. These services are available to end-users over the internet, so the end-users do not need to install any software on their devices to access these services. Characteristics of SaaS: o Web-based Delivery: SaaS apps can be accessed from anywhere with an internet connection because they are supplied over the internet, often through a web browser. Users no longer need to install and maintain software programs on their local machines as a result. o Multiple Users or "tenants" can access SaaS applications from a single instance of the program thanks to the concept of multi-tenancy. As a result, the provider can serve several clients with the same application without administering unique program instances for every client. o Automatic Updates: SaaS providers are in charge of keeping the software up to date and making sure that everyone has access to the newest features and security patches. Users are no longer required to manually install updates or fixes as a result. 32 TYCS UNIT 1 Cloud Computing o Scalable: SaaS systems are scalable, which can readily grow or shrink in response to user demand. This frees up enterprises from worrying about infrastructure or licensing fees and lets them add or remove users as needed. o Pricing on a Subscription Basis: SaaS programs are frequently sold using a subscription-based pricing model, in which customers pay a monthly or yearly price to access the program. As a result, companies won't need to invest significantly in software licenses upfront. o Data Security, including data encryption, access restrictions, and backups, is the responsibility of SaaS providers. Users no longer need to handle their own data security because of this. Access to Software Applications Over the Internet: o The majority of the time, SaaS companies host software programs on their own servers and provide them online. Using their login information, users can access the software through a web browser or mobile app, authenticating and gaining access to it. o Users don't need to install or maintain any software on their local machines because the provider hosts and maintains it. As a result, users may easily access the program from any location with an internet connection and on any device that can run mobile apps or web surfing. o All users have access to the most recent features and security updates because the provider is in charge of keeping the program updated and maintained. Users are no longer required to manually install updates or fixes as a result. o Users often pay a monthly or yearly charge to access the software through subscription- based SaaS providers. Because they don't have to make a significant upfront investment in software licenses, businesses are able to budget for their software costs more effectively as a result. o In general, SaaS gives enterprises a practical way to use and access software programs without having to worry about infrastructure or software upkeep. Providers are in charge of keeping the software up to date so that all users have access to the newest features and security patches. Users can access the software from any location with an internet connection. Pricing Models: Subscription or User-Based o Most SaaS companies use a subscription-based pricing structure; however, some may also provide a usage-based pricing structure. Users that choose a subscription-based pricing model for their software access pay a set monthly or yearly charge. 33 TYCS UNIT 1 Cloud Computing o The cost may vary according to the usage of the software's capabilities or the number of users. Businesses benefit from predictability and consistency thanks to this strategy because they can more efficiently budget for their software expenses. o In a usage-based pricing model, the costs are determined by how the program is actually used, such as the volume of data processed, the number of API requests, or the number of transactions. o For companies with erratic usage patterns or those that only want the program sometimes, this model may be more adaptable and economical. o According to their business strategy and the demands of their clients, SaaS providers may offer either a subscription-based or a usage-based pricing plan. SaaS offers organizations a cost-effective option to access and use software products without having to worry about infrastructure or software maintenance, regardless of the price model. Services Provided by SaaS: Business Services - SaaS Provider provides various business services to start up the business. The SaaS business services include ERP (Enterprise Resource Planning), CRM (Customer Relationship Management), billing, and sales. Document Management - SaaS document management is a software application offered by a third party (SaaS provider) to create, manage, and track electronic documents. Examples: Slack, Samepage, Box, and Zoho Forms. Social Networks - As we all know, social networking sites are used by the general public, so social networking service providers use SaaS for their convenience and handle the general public's information. Mail Services - To handle the unpredictable number of users and load on e-mail services, many e-mail providers offer their services using SaaS. Collaboration Tools: SaaS companies provide collaboration solutions that let teams collaborate effectively no matter where they are physically located. Platforms for project management, apps for team communication, and file-sharing services are some of these resources. Examples include Slack, Microsoft Office 365, and Google Workspace (formerly G Suite). Human Resources Management: SaaS-based HR management systems give companies tools to simplify key HR procedures, such as employee onboarding, payroll administration, timekeeping, performance reviews, and employee self-service portals. Workday, BambooHR, and ADP Workforce Now, as examples. 34 TYCS UNIT 1 Cloud Computing Customer Support and Help Desk: SaaS platforms provide customer support and help desk solutions that enable firms to manage customer inquiries, track support tickets, and promptly address customer issues. For instance, Salesforce Service Cloud, Freshdesk, and Zendesk. Marketing and Sales Automation: To increase productivity and boost income, firms can automate marketing campaigns, lead generation, customer relationship management, and sales activities using SaaS marketing and sales automation technologies. Examples include Marketo, Pardot, and HubSpot. E-commerce Platforms: SaaS-based e-commerce platforms make it simpler for businesses to launch and run online storefronts, maintain product catalogs, handle payments, and keep track of orders. Examples include WooCommerce (a WordPress plugin), BigCommerce, and Shopify. Advantages of SaaS Cloud Computing Layer 1. SaaS is easy to buy SaaS pricing is based on a monthly fee or annual fee subscription, so it allows organizations to access business functionality at a low cost, which is less than licensed applications. Unlike traditional software, which is sold as a licensed base with an up-front cost (and often an optional ongoing support fee), SaaS providers are generally pricing the applications using a subscription fee, most commonly a monthly or annual fee. 2. One to Many SaaS services are offered as a one-to-many model means a single instance of the application is shared by multiple users. 3. Less hardware required for SaaS The software is hosted remotely, so organizations do not need to invest in additional hardware. 4. Low maintenance required for SaaS Software as a service removes the need for installation, set-up, and daily maintenance for organizations. The initial set-up cost for SaaS is typically less than the enterprise software. SaaS vendors are pricing their applications based on some usage parameters, such as the number of users using the application. So SaaS does easy to monitor and automatic updates. 35 TYCS UNIT 1 Cloud Computing 5. No special software or hardware versions are required All users will have the same version of the software and typically access it through the web browser. SaaS reduces IT support costs by outsourcing hardware and software maintenance and support to the IaaS provider. 6. Multidevice support SaaS services can be accessed from any device, such as desktops, laptops, tablets, phones, and thin clients. 7. API Integration SaaS services easily integrate with other software or services through standard APIs. 8. No client-side installation SaaS services are accessed directly from the service provider using an internet connection, so they do not need to require any software installation. Disadvantages of SaaS Cloud Computing Layer: 1) Security Actually, data is stored in the cloud, so security may be an issue for some users. However, cloud computing is not more secure than in-house deployment. 2) Latency issue Since data and applications are stored in the cloud at a variable distance from the end-user, there is a possibility that there may be greater latency when interacting with the application compared to local deployment. Therefore, the SaaS model is not suitable for applications whose demand response time is in milliseconds. 3) Total Dependency on the Internet Without an internet connection, most SaaS applications are not usable. 4) Switching between SaaS vendors is difficult Switching SaaS vendors involves the difficult and slow task of transferring very large data files over the internet and then converting and importing them into another SaaS also. 36 TYCS UNIT 1 Cloud Computing Popular SaaS Providers The below table shows some popular SaaS providers and services that are provided by them – 37