Professional Documents
Culture Documents
It-3022 (CC) - CS End April 2024
It-3022 (CC) - CS End April 2024
2. b) Cluster computing in cloud computing indeed involves multiple nodes or computers working
together to form a unified system. 5 marks
One of the primary reasons for employing cluster computing in cloud environments is scalability. By
distributing tasks across multiple nodes, the workload can be scaled up or down dynamically based on
demand. This allows for efficient resource utilization and ensures that the system can handle varying
workloads effectively.
• In a clustered environment, if one node fails or experiences issues, other nodes can continue to operate,
ensuring high availability and fault tolerance. Cloud providers often design their clusters with
redundancy and failover mechanisms to minimize service disruptions.
• By harnessing the computational power of multiple nodes simultaneously, cluster computing can
significantly enhance performance. Tasks can be parallelized and executed concurrently across nodes,
leading to faster processing times and improved overall system performance.
• Cluster computing enables efficient resource sharing among nodes. Resources such as CPU, memory,
and storage can be pooled together and allocated dynamically based on workload requirements. This
ensures optimal resource utilization and prevents any single node from becoming a bottleneck.
• Utilizing cluster computing in cloud environments can be cost-effective compared to traditional
dedicated hardware setups. Cloud providers offer pay-as-you-go pricing models, allowing users to only
pay for the resources they consume. Additionally, the ability to scale resources up or down based on
demand helps in optimizing costs and avoiding over-provisioning.
• Cloud computing offers on-demand resources, but for highly complex tasks, a single virtual machine
might not be enough. Cluster computing combines the processing power of multiple nodes, acting as a
single, powerful unit. This allows tackling computationally intensive workloads like scientific
simulations, data analysis, and large-scale rendering much faster.
Semester: 4th
Semester: 6thSub & Code: OS & CS - 2009
Subject Name:- Cloud
Branch (s):Computing& Code:-
CSE, IT, CSSE, IT-3022
CSCE
Branch (s): - CSE,IT, CSCE, CSSE
Cluster computing in cloud environments combines the computational power of multiple nodes to form
a unified system, enabling scalability, fault tolerance, improved performance, resource sharing, and
cost-effectiveness.
5 (b). A company currently works on a centralized server mechanism. But with the increasing
workload, it wants to distribute the workload among multiple servers. Explain the type of scaling
required for the same. Mention its characteristics and benefits over others. 3+1+1 marks
Semester: 4th
Semester: 6thSub & Code: OS & CS - 2009
Subject Name:- Cloud
Branch (s):Computing& Code:-
CSE, IT, CSSE, IT-3022
CSCE
Branch (s): - CSE,IT, CSCE, CSSE
Ans Hint:
The student should mention the following benefits of Cloud Based Application Deployment over
Centralized Server Based Application Deployment:
Cloud-based application deployment has various advantages over traditional, centralized server-based
application deployment:
Scalability: Cloud-based apps can simply scale up and down in response to demand. Cloud systems
provide on-demand resources, allowing applications to manage unexpected traffic surges or scale back
during periods of low activity. This scalability is frequently automated and can be altered in real-time,
giving flexibility and cost savings.
Cost-effectiveness: Cloud deployment eliminates the need for upfront hardware investments and
ongoing maintenance costs associated with traditional servers. Instead, customers pay for the resources
they use on a pay-as-you-go basis, lowering capital costs and improving cost predictability.
Global Accessibility: Cloud-based applications are accessible from any location with an internet
connection, making them available to users all over the world. Cloud companies often have data centers
spread across numerous geographic zones, allowing for reduced latency access and increased
performance for consumers in various places.
High Availability and Reliability: Cloud platforms incorporate redundancy and failover techniques to
achieve high availability and reliability. Auto-scaling, load balancing, and data replication are examples
of cloud-based application features that can reduce downtime and improve fault tolerance.
Elasticity: With cloud-based deployment, apps can assign resources dynamically based on workload
requirements. This elasticity allows programs to manage changing traffic patterns more efficiently and
assures optimal resource use without requiring manual intervention.
Automatic upgrades and Maintenance: Cloud providers manage infrastructure maintenance, security
patches, and software upgrades, reducing the workload for IT teams and guaranteeing that applications
run on the most recent software versions. This eliminates the downtime and security concerns associated
with outdated software.
Scalable Storage Alternatives: Cloud platforms provide several storage alternatives, such as object
storage, block storage, and database services, which can be scaled to meet growing data volumes. This
eliminates the need to manage and provision storage hardware separately and enables seamless
application integration.
DevOps Integration: Cloud deployment is compatible with DevOps principles, allowing teams to
automate application deployment, testing, and monitoring processes. Cloud platforms include a variety
of tools and services for continuous integration, continuous delivery (CI/CD), and infrastructure as code
(IaC), which improve cooperation and agility in software development workflows.
Why horizontal scaling is preferred not the vertical scaling
Semester: 4th
Semester: 6thSub & Code: OS & CS - 2009
Subject Name:- Cloud
Branch (s):Computing& Code:-
CSE, IT, CSSE, IT-3022
CSCE
Branch (s): - CSE,IT, CSCE, CSSE
Vertical scaling refers to boosting the capacity of a single server by adding more resources such as CPU,
RAM, or storage. While vertical scaling may be appropriate for certain cases, it is not optimal for
managing the increasing demand in a distributed system for various reasons.
Limited Scalability: Vertical scaling has intrinsic scalability constraints. There is a limit to how much
a server can be vertically scaled in terms of resources such as CPU, RAM, and storage. Eventually,
you'll reach the hardware's maximum capacity, making further growth unfeasible or excessively
expensive.
Single Point of Failure: When you vertically scale a server, you rely on a single, larger server to
handle the whole workload. If the server fails, it might cause downtime and disruption to the entire
system. In contrast, horizontal scaling distributes the workload over numerous servers, mitigating the
impact of individual server failures.
Cost inefficiency: To meet rising workload needs, vertical scaling frequently necessitates the
purchase of high-end, costly gear. This upfront expenditure can be prohibitively expensive, particularly
for businesses with limited budgets. Horizontal scaling, on the other hand, allows you to increase
incrementally while using more affordable commodity hardware.
Upgrading a single, large server can be complicated and disruptive. It may require downtime for
maintenance or updates, affecting the application's availability. Horizontal scaling, on the other hand,
enables seamless upgrades and maintenance because individual servers may be taken offline without
affecting the entire system.
Limited Flexibility: Vertical scaling restricts your program to the capabilities of a single server. You'll
face difficulties if you need to expand beyond those constraints or react to shifting workload patterns.
Horizontal scaling increases flexibility by allowing you to add or remove servers based on demand.
Overall, while vertical scaling may be appropriate for specific cases where the workload can be
accommodated within the boundaries of a single server, it is unsuitable for managing an increasing
burden in a distributed system. Horizontal scaling offers a more scalable, fault-tolerant, cost-effective,
and adaptable solution for fulfilling the demands of current applications.
Horizontal scaling, also known as scale-out scaling, is the sort of scaling necessary to distribute
workload across numerous servers, particularly in a cloud context.
Features of horizontal scaling:
Horizontal scaling is the process of adding extra machines or servers to your pool of resources to
handle a rising workload. It's a more gradual and adaptable strategy than vertical scaling, which requires
upgrding to more powerful gear.
Distributed Architecture: Horizontal scaling distributes the burden over numerous devices or servers.
Each server handles a share of the overall workload, decreasing the stress on any single server while
boosting overall system performance and dependability.
Semester: 4th
Semester: 6thSub & Code: OS & CS - 2009
Subject Name:- Cloud
Branch (s):Computing& Code:-
CSE, IT, CSSE, IT-3022
CSCE
Branch (s): - CSE,IT, CSCE, CSSE
Fault Tolerance: Horizontal scalability improves fault tolerance because if one server fails, the
workload may be automatically shifted to other servers, ensuring ongoing operation with minimal
impact on overall system performance.
Linear Scalability: Horizontal scaling often provides linear scalability, which means that adding more
servers results in a proportional increase in system capacity and performance. This enables easy and
predictable expansion as the workload increases.
Advantages of horizontal scaling versus vertical scaling:
Horizontal scaling is frequently more cost-effective since it allows you to employ less expensive
commodity gear and scale only when needed, rather than investing in pricey high-end technology up
front.
Better Resource Utilization: Horizontal scaling makes better use of resources by dividing the
workload over different servers. This prevents any single server from being overworked while others are
underutilized, resulting in optimal resource allocation.
Improved Scalability: Horizontal scaling is more scalable than vertical scaling, particularly in cases
where workload growth is unpredictable or varies over time. You can easily add or delete servers as
needed, with minimal disturbance to the system.
Horizontal scaling increases flexibility and agility by allowing you to scale your infrastructure in
smaller increments and adjust to changing workload demands more readily. This agility is critical in
dynamic contexts where requirements change quickly.
Overall, horizontal scaling is well-suited for distributed architectures such as cloud-based environments,
as it provides cost-effectiveness, fault tolerance, linear scalability, and flexibility, all of which are
required to handle growing workloads efficiently and effectively.
6(a) Q. Application of Cloud computing in business. 5 marks
Ans. Cloud Computing has indeed changed the way how business operates. There are an abundance of
business applications that a cloud computing system can support. Here are few ways of cloud computing
business applications explained .
Infrastructure as a Service:
With cloud computing, you can offer your clients the use of your infrastructure to host their cloud
services. Another option is to sell third-party infrastructure for creating websites to promote clients’
products and services.
Platform as a Service:
Alternatively, you can offer your platform to clients through cloud computing. Most online platforms
run on cloud computing today, because they are available to anyone with a connection. Companies are
rapidly moving to the cloud to eliminate the need for computer hardware in their own offices decreasing
their IT cost.
Semester: 4th
Semester: 6thSub & Code: OS & CS - 2009
Subject Name:- Cloud
Branch (s):Computing& Code:-
CSE, IT, CSSE, IT-3022
CSCE
Branch (s): - CSE,IT, CSCE, CSSE
File Storage;
File storage is a common use for cloud computing. You can store pretty much any type of file on the
cloud, and if you need limited access to your files, private cloud services can be made highly secure.
Cloud storage is essentially only limited to the maximum storage available from your provider.
Data Backup:
Data backup is another common use of cloud computing. While you can backup to your computer or a
drive, either of these can be physically damaged in a storm, flood or fire.The cloud offers you a place to
backup data that is away from your location and will keep data safe in a secure environment. If needed,
you can also share these backup files to other members of your team.
Disaster Recovery:
In the event of a disaster, you can recover your files, programs and data from the cloud as long as you
have a computer and an internet connection. Cloud computing is a good way to safeguard your
important business information for recovery later on.
Increasing Collaboration:
Collaboration within your company and with other companies has become a global concern. Cloud
computing makes collaboration easy no matter where you and your collaborators are physically located
because you can all access the project files on a shared cloud space. This type of collaboration can be
made private until you are ready to bring your finished work to public attention. Even if you are
working from home with other people from your company, the cloud offers more opportunities to work
24/7 with your partners without any restrictions based on available resources.
Testing New Projects:
Tech companies often use their company’s private cloud to test new programs or processes before they
see the light of day. An engineer can easily set up a test program on the cloud, add data sets and then run
the data through the program to find any leftover problems, before pronouncing it ready to send to a
client. Once the test is done, the cloud space is relinquished back to the pool.
Website hosting:
Many users prefer cloud hosting rather than purchasing physical server to host your website. Web
Hosting is far more cost effective than a dedicated server as you only need to pay for the service you are
using instead of paying the full cost of running an entire server. You also need to be well aware of the
security risks when choosing cloud hosting.
Work Management:
Tracking and allocating of work is much easier with the help of cloud computing. If you have a team
who are sitting at office or who are working on field or remotely then work management solution hosted
on cloud is very much useful. You can simply share the files required, communicate to your team,
allocate timelines and set reminders for work.
Semester: 4th
Semester: 6thSub & Code: OS & CS - 2009
Subject Name:- Cloud
Branch (s):Computing& Code:-
CSE, IT, CSSE, IT-3022
CSCE
Branch (s): - CSE,IT, CSCE, CSSE
CRM:
Customer Relationship Management Software solution is one of the widely used method to manage and
improve customer relationships. CRM on cloud offers number of benefits to you and your team in
increasing the business profits and helping in bringing and efficient business model. CRM lets your
store and access all client related information.
Many CRM products provide automated functions letting you to capture new prospects or to finish up
the customer queries within the turn around time.
Sales & Marketing Management:
With the sales & marketing management system, you will always have an easy reach to the latest
data. Track all the converted, potential customers or even enquiries. It can help in analysing customer
information to see where you have missed out interesting leads and those who use marketing techniques
for sending emails can make use of cloud solutions in an effective level.
6(b) Dynamic Load balancing in cloud computing 5 marks
A load balancer is a hardware component that divides network or application traffic among several
servers, serving as a reverse proxy. Dedicated hardware or software, like a multilayer switch or a
Domain Name Service server process, is typically used for load balancing.
Dynamic load balancing is a more flexible load balancing strategy that can determine which system
should carry the load and how much weight has to be shed dynamically during runtime.
Benefits:
Flexibility: Because dynamic load balancing adapts instantly to changing circumstances, it works
effectively in environments where workloads are diverse and unpredictable.
Optimal Resource Utilization: It improves system performance by allocating traffic to the
servers that have the most resources available and are capable of handling it.
Scalability: Due to its ability to effectively spread workloads among a changing number of
servers, dynamic load balancing is particularly scalable and can adapt to changes in system
capacity or size.
Drawbacks:
Complexity: More intricate algorithms and processes are needed to implement dynamic load balancing.
It can also include more complicated devices and extra expense.
Computational Overhead: Continual tracking and real-time modifications may lead to a rise in
computational overhead, which undoubtedly impacts the performance of the system.
Configuration Challenges: Improper settings should lead to subpar performance because fine-tuning
dynamic load balancing algorithms and parameters might be more challenging than setting up a static
configuration.
6 c. Integration of Cloud with WSN 5 marks
Semester: 4th
Semester: 6thSub & Code: OS & CS - 2009
Subject Name:- Cloud
Branch (s):Computing& Code:-
CSE, IT, CSSE, IT-3022
CSCE
Branch (s): - CSE,IT, CSCE, CSSE
Diagram with explanation, advantages, approaches