Lecture 7 (Cloud & Serverless Computing) Flashcards
What are the disadvantages of “Hardware Ownership”?
- High maintenance costs
- Fast depreciation
- Variable demand
- Inefficient usage (15-20%)
- Overprovisioning or Under-provisioning of resources
What is “Cloud Computing” and what are its characteristics?
Cloud computing is the provisioning of hardware and software services over the internet. Its characteristics are as follows:
- On demand availability
- Resource pooling
- Rapid Elasticity
- Computing resources available via network access
- Pay per use
Benefits:
- Low cost
- Low entry barrier
- scalability of services
What are the different kinds of cloud service models?
- SaaS (Software as a service)
- IaaS (Infrastructure as a service)
- PaaS (Platform as a service)
- FaaS (Function as a service)
Explain Saas
SaaS i.e Software as a service is a delivery model that provides users access to hosted applications over the internet via a thin client (web browser/app). It’s characteristics are:
- Limited customisation possible
- Subscription-based service
- Multi-tenant i.e the same application is provided to multiple users over the internet.
- Fragmented
- Eg: Workday, Google Docs etc
Explain IaaS
Iaas i.e Infrastructure as a service is a delivery model in which users rent access to raw infrastructure like servers, data storage etc. It’s characteristics are:
- Time consuming
- Utility computing (users pay for the time the servers are used)
- Users have full control over the setup, OS and are responsible for scalability.
Explain PaaS
Paas i.e Platform as a service is a delivery model in which users are allowed rent access to a platform upon which they can build their own and store their own data. Its characteristics are:
- Multi-tenant i.e multiple users are provided the same platform which can be used by them in varying ways.
- Users pay for the time the platform is used
- Cloud service provider is responsible for scalability.
- Eg: Force.com
Explain FaaS & its disadvantages
FaaS i.e Function as a service is a serverless computing delivery model whereby individual software functions are executed using external computing resources. Its disadvantages are as follows:
- Limited resources
- No support for interaction between communication
- No control over function placement’
- Not suited for warm/stateful functions that have a lot of dependencies
What are the different types of Cloud development models?
There are 4 types of cloud development models:
- Public: Access shared with multiple users and provided to the general market.
- Community: Access shared to a certain group of individuals who have a shared concern eg: academic institution.
Private: Access shared with only one user
Hybrid: A combination of the other types of clouds, generally private and public as a fallback for peak times.
What are “Service Level Agreements” ?
Contracts that stipulate agreements on the quality of service. It includes:
- Distribution of Responsibility
- Agreement of service quality
- Penalties for non-conformance
What are the limitations of SaaS, PaaS, IaaS?
Metered usage:
- Not possible for SaaS because it is offered as a subscription based service.
- Not possible for IaaS & PaaS because the servers are left running sometimes due their configurations or are being used for data storage.
Elasticity:
- IaaS:
- Cloud user responsible for capacity monitoring and scaling up or dow.
- Requires skilled engineers to prepare new VM’s.
Independence:
- IaaS and Paas enable execution together, which does not promote or facilitate independence.
What are the different types of Serverless computing technologies in Information Systems?
- Virtualisation
- Containerisation
- Lambdas
Explain Virtualisation
- Layer between the OS and hardware
- Slices hardware into multiple machine or combines them into one
- Characteristics:
- Isolation of different users
- Flexible in specification for different users
- Demanding in terms of memory, setup time and storage
Explain Containerisation
- Layer between OS and applications
- Enables concurrent execution of application by multiple users of a system
- Setup can be either:
- Stateful/warm i.e prior data is available
- Stateless/cold i.e prior data is unavailable
- Each users gets own sandbox i.e container but uses the same OS.
Explain Lambdas
- Layer that subsumes basic applications (eg: database software)
- enables concurrent execution of stateless applications without worrying about the specifics.
- No idle capacity, quick setup and no server or container management.
- Scalability possible at individual execution level
- Execution is independent and stateless/cold i.e code runs in empty environment.
What is Event based architecture?
Events = Triggers + Actions
Online commerce revolves around recurring events -> Event based architecture are IS built around triggers and actions.