Cloud Computin1
Cloud Computin1
1) Atomicity
The term atomicity defines that the data remains atomic. It means if any operation is performed on the data, either it should be
performed or executed completely or should not be executed at all. It further means that the operation should not break in
between or execute partially. In the case of executing operations on the transaction, the operation should be completely executed
and not partially.
Example: If Remo has account A having $30 in his account from which he wishes to send $10 to Sheero's account, which is B. In
account B, a sum of $ 100 is already present. When $10 will
be transferred to account B, the sum will become $110. Now,
there will be two operations that will take place. One is the
amount of $10 that Remo wants to transfer will be debited
from his account A, and the same amount will get credited
to account B, i.e., into Sheero's account. Now, what happens
- the first operation of debit executes successfully, but the
credit operation, however, fails. Thus, in Remo's account A,
the value becomes $20, and to that of Sheero's account, it
remains $100 as it was previously present.
2) Consistency
The word consistency means that the value should remain preserved always. In DBMS, the integrity of the data should be
maintained, which means if a change in the database is made, it should remain preserved always. In the case of transactions, the
integrity of the data is very essential so that the database remains consistent before and after the transaction. The data should
always be correct.
Example:
3) Isolation
The term 'isolation' means separation. In DBMS, Isolation is the property of a database where no data should affect the other one
and may occur concurrently. In short, the operation on one database should begin when the operation on the first database is
complete. It means if two operations are being performed on
two different databases, they may not affect the value of one
another. In the case of transactions, when two or more
transactions occur simultaneously, the consistency should
remain maintained. Any changes that occur in any particular
transaction will not be seen by other transactions until the
change is not committed in the memory.
Example: If two operations are concurrently running on two
different accounts, then the value of both accounts should not
get affected. The value should remain persistent. As you can
see in the below diagram, account A is making T1 and T2
transactions to account B and C, but both are executing
independently without affecting each other. It is known as
Isolation.
4) Durability
Durability ensures the permanency of something. In DBMS, the term durability ensures that the data after the successful execution
of the operation becomes permanent in the database. The durability of the data should be so perfect that even if the system fails
or leads to a crash, the database still survives. However, if gets lost, it becomes the responsibility of the recovery manager for
ensuring the durability of the database. For committing the values, the COMMIT command must be used every time we make
changes.
2. Hypervisor:
A hypervisor is a form of virtualization software used in Cloud hosting to divide and allocate the resources on various
pieces of hardware. The program which provides partitioning, isolation, or abstraction is called a virtualization hypervisor.
The hypervisor is a hardware virtualization technique that allows multiple guest operating systems (OS) to run on a single
host system at the same time. A hypervisor is sometimes also called a virtual machine manager(VMM).
Types of Hypervisors –
TYPE-1 Hypervisor:
The hypervisor runs directly on the underlying host system. It is also known as a “Native Hypervisor” or “Bare metal
hypervisor”. It does not require any base server operating system. It has direct access to hardware resources. Examples of
Type 1 hypervisors include VMware ESXi, Citrix XenServer, and Microsoft Hyper-V hypervisor.
Benefits of hypervisors
Using a hypervisor to host several virtual machines has many advantages:
• Speed: The hypervisors allow virtual machines to be built instantly unlike bare-metal servers. This makes
provisioning resources for complex workloads much simpler.
• Efficiency: Hypervisors that run multiple virtual machines on the resources of a single physical machine often
allow for more effective use of a single physical server. O
• Flexibility: Since the hypervisor distinguishes the OS from the underlying hardware, the program no longer relies
on particular hardware devices or drivers, bare-metal hypervisors enable operating systems and their related
applications to operate on a variety of hardware types.
• Portability: Multiple operating systems can run on the same physical server thanks to hypervisors (host machine).
The hypervisor's virtual machines are portable because they are separate from the physical computer.
3.What is RDBMS?
RDBMS stands for Relational Database Management Systems. It is basically a program that allows us to create, delete, and
update a relational database. A Relational Database is a database system that stores and retrieves data in a tabular format
organized in the form of rows and columns. It is a smaller subset of DBMS which was designed by E.F Codd in the 1970s.
The major DBMSs like SQL, My-SQL, and ORACLE are all based on the principles of relational DBMS.
Relational DBMS owes its foundation to the fact that the values of each table are related to others. It has the capability to
handle larger magnitudes of data and simulate queries easily.
Relational Database Management Systems maintains data integrity by simulating the following features:
• Entity Integrity: No two records of the database table can be completely duplicate.
• Referential Integrity: Only the rows of those tables can be deleted which are not used by other tables.
Otherwise, it may lead to data inconsistency.
• User-defined Integrity: Rules defined by the users based on confidentiality and access.
• Domain integrity: The columns of the database tables are enclosed within some structured limits, based on
default values, type of data or ranges.
Characteristics of RDBMS
• Data must be stored in tabular form in DB file, that is, it should be organized in the form of rows and
columns.
• Each row of table is called record/tuple . Collection of such records is known as the cardinality of the table
• Each column of the table is called an attribute/field. Collection of such columns is called the arity of the
table.
• No two records of the DB table can be same. Data duplicity is therefore avoided by using a candidate
key. Candidate Key is a minimum set of attributes required to identify each record uniquely.
• Tables are related to each other with the help for foreign keys.
4. Differences:
No. SOAP REST
2) SOAP stands for Simple Object Access REST stands for REpresentational State Transfer.
Protocol.
3) SOAP can't use REST because it is a protocol. REST can use SOAP web services because it is a concept and can use any protocol
like HTTP, SOAP.
4) SOAP uses services interfaces to expose the REST uses URI to expose business logic.
business logic.
5) JAX-WS is the java API for SOAP web services. JAX-RS is the java API for RESTful web services.
6) SOAP defines standards to be strictly REST does not define too much standards like SOAP.
followed.
7) SOAP requires more bandwidth and REST requires less bandwidth and resource than SOAP.
resource than REST.
8) SOAP defines its own security. RESTful web services inherits security measures from the underlying transport.
9) SOAP permits XML data format only. REST permits different data format such as Plain text, HTML, XML, JSON etc.
10) SOAP is less preferred than REST. REST more preferred than SOAP.
5. Service-Oriented Architecture:
A Service-Oriented Architecture or SOA is a design pattern which is designed to build distributed systems that deliver services
to other applications through the protocol. It is only a concept and not limited to any programming language or platform.
What is Service?
A service is a well-defined, self-contained function that represents a unit of functionality. A service can exchange information from
another service. It is not dependent on the state of another service. It uses a loosely coupled, message-based communication
model to communicate with applications and other services.
Service Connections
The figure given below illustrates the service-oriented architecture. Service consumer sends a service request to the service
provider, and the service provider sends the service response to the service consumer. The service connection is understandable
to both the service consumer and service provider.
Service-Oriented Terminologies
o Services - The services are the logical entities defined by one or more published interfaces.
o Service provider - It is a software entity that implements a service specification.
o Service consumer - It can be called as a requestor or client that calls a service provider. A service consumer can be
another service or an end-user application.
o Service locator - It is a service provider that acts as a registry. It is responsible for examining service provider interfaces
and service locations.
o Service broker - It is a service provider that pass service requests to one or more additional service providers.
AD
Characteristics of SOA
o They are loosely coupled.
o They support interoperability.
o They are location-transparent
o They are self-contained.
Functional aspects
o Transport - It transports the service requests from the service consumer to the service provider and service responses
from the service provider to the service consumer.
o Service Communication Protocol - It allows the service provider and the service consumer to communicate with each
other.
o Service Description - It describes the service and data required to invoke it.
o Service - It is an actual service.
o Business Process - It represents the group of services called in a particular sequence associated with the particular rules
to meet the business requirements.
o Service Registry - It contains the description of data which is used by service providers to publish their services.
Advantages of SOA
o Easy to integrate - In a service-oriented architecture, the integration is a service specification that provides
implementation transparency.
o Manage Complexity - Due to service specification, the complexities get isolated, and integration becomes more
manageable.
o Platform Independence - The services are platform-independent as they can communicate with other applications
through a common language.
o Loose coupling - It facilitates to implement services without impacting other applications or services.
o Parallel Development - As SOA follows layer-based architecture, it provides parallel development.
o Available - The SOA services are easily available to any requester.
• Integration with Google Cloud’s data services for advanced analytics and processing.
Advantages
• Ease of Use: Simplifies the process of application development and deployment.
• Scalability: Automatic scaling without manual intervention.
• Integration: Seamless integration with a wide array of Google Cloud services.
• Cost Efficiency: Pay for what you use with detailed cost tracking and management.
• Pay-as-you-go pricing models where users pay for the resources they consume.
• Options for reserved instances or savings plans to reduce costs for long-term usage.
Examples of Relational Database Engines in Cloud Computing:
1. Amazon RDS (Relational Database Service):
• Supports multiple database engines including Amazon Aurora, MySQL, PostgreSQL, MariaDB, Oracle,
and SQL Server.
• Provides automated backups, software patching, monitoring, and scaling.
2. Google Cloud SQL:
• Fully managed relational database service for MySQL, PostgreSQL, and SQL Server.
• Offers automated backups, replication, and seamless integration with other Google Cloud services.
3. Azure SQL Database:
• Managed SQL Server database engine with features like built-in high availability, backup, and scaling.
• Offers various deployment options including single databases, elastic pools, and managed instances.
4. IBM Db2 on Cloud:
• Managed Db2 database service with options for high availability and disaster recovery.
• Provides advanced data management, analytics, and AI integration capabilities.
5. Oracle Autonomous Database:
• Fully managed database service that includes Oracle Database with automation for tuning, patching, and
scaling.
• Offers both OLTP (Online Transaction Processing) and OLAP (Online Analytical Processing) workloads.
Use Cases
1. Web Applications:
• Store and manage relational data for web applications, ensuring high availability and scalability to handle
varying traffic loads.
2. Enterprise Applications:
• Support enterprise workloads such as ERP (Enterprise Resource Planning) and CRM (Customer Relationship
Management) systems with robust performance and security features.
3. Data Warehousing:
• Use managed relational databases for data warehousing and analytics, integrating with tools for data
processing and business intelligence.
4. Mobile and Gaming:
• Backend data storage for mobile applications and games, providing real-time data access and high
concurrency support.
5. E-commerce:
• Manage product catalogs, customer information, and transaction data with reliable and scalable database
solutions.
• Ensures applications remain available and responsive under varying loads by automatically scaling
resources.
• Prevents performance degradation during traffic spikes and maintains service levels.
Benefits of Elasticity
1. Improved Resource Utilization:
• Dynamically adjusts resource allocation to match workload demands, ensuring efficient use of resources.
2. Enhanced User Experience:
• Maintains application performance and availability during traffic fluctuations, leading to a better user
experience.
3. Operational Efficiency:
• Reduces the need for manual intervention in resource management, allowing IT teams to focus on strategic
tasks.
4. Cost Savings:
• Avoids the costs associated with over-provisioning and ensures resources are only paid for when in use.
Use Cases of Elasticity
1. Web Applications:
• Handles traffic spikes during events like sales promotions, news releases, or viral content by automatically
scaling resources to meet demand.
2. E-commerce Platforms:
• Adjusts resource allocation during peak shopping seasons or flash sales to ensure smooth and responsive
user experience.