0% found this document useful (0 votes)
2 views47 pages

CC - Module 1 - Distributed Computing & Technlges

Cloud computing is a paradigm that provides computing resources over the Internet on demand, allowing users to access servers, storage, software, and databases without owning physical hardware. It includes services like Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS), offering scalability, cost-effectiveness, and accessibility. Enabling technologies such as computer networks, communication protocols, and virtualization support the efficient operation of cloud computing systems.

Uploaded by

sneharose
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views47 pages

CC - Module 1 - Distributed Computing & Technlges

Cloud computing is a paradigm that provides computing resources over the Internet on demand, allowing users to access servers, storage, software, and databases without owning physical hardware. It includes services like Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS), offering scalability, cost-effectiveness, and accessibility. Enabling technologies such as computer networks, communication protocols, and virtualization support the efficient operation of cloud computing systems.

Uploaded by

sneharose
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

CLOUD COMPUTING

What is Computing?
• Definition:

Computing is the process of using computers to solve


problems by accepting data, processing it according to
instructions, storing it, and producing useful
information.
• In simple words, Computing means using computer
technology to perform calculations, process information,
communicate, and solve real-world problems.

• Everything we do on a computer—typing a document, sending


an email, playing a game, searching Google, or using AI—is an
example of computing.
Simple Real-Life Examples
• Suppose you use Google Maps.

1. You enter your destination.


2. The computer receives the input.
3. It calculates the shortest route.
4. It processes traffic information.
5. It displays the best path.

• This entire process is called computing.


• When you upload a photo to Instagram:

1. The phone captures the image.


2. The image is compressed.
3. It is uploaded through the Internet.
4. It is stored in servers.
5. Your friends can view it.

• All these operations together are computing.


Basic Functions of Computing
• Computing generally consists of four basic operations:

Input → Processing → Storage → Output

• Ex: System display student grade based on marks

[Link]:
• Student enters marks
2. Processing:
• Computer calculates total and percentage

3. Storage:
• Result stored in database

4. Output:
• Grade displayed on screen
What is a Computing Paradigm?
•Definition:

A computing paradigm is a model or style of


computing that describes how computers
process data and solve problems.
• Or simply, It is a different approach or method used
to perform computing tasks.

• Different computing paradigms were developed to


solve different types of problems more efficiently.
Imagine travelling from one city to another.
You can travel by:
• Bicycle
• Bike
• Car
• Train
• Airplane
• The destination is the same, but the method of travelling is
different.
• Similarly, The goal is computation, but the method used is called
a computing paradigm.
Common Computing Paradigms
Why Do We Need Different Computing Paradigms?
• Different applications have different requirements.

Application Best Computing Style


Personal Computer Standalone Computing
Office Network Client-Server Computing
Google Search Distributed Computing
Netflix Cloud Computing
Smart Home Devices Edge Computing
AI Applications Parallel Computing

Each paradigm is designed for specific needs.


KEY TAKE AWAY:

• "Computing means using computers to process data and solve


problems. Every time we use a smartphone, ATM, online banking, or
Google Search, computing happens in the background. Over time,
different methods of computing were developed to improve speed,
scalability, and efficiency. These methods are called computing
paradigms. Examples include distributed computing, parallel
computing, grid computing, and cloud computing."
1. Parallel Computing
Definition
• Parallel computing is a
computing paradigm in which
multiple processors or CPU
cores work simultaneously on
different parts of the same
problem to complete it faster.
• Or Parallel computing is the technique of using two or more
processors at the same time to solve a single problem more
quickly.
• Parallel computing is like dividing work among several people
instead of giving it to one person. Since everyone works at the
same time, the task is completed much faster.
• The goal of parallel computing is to save time and provide
concurrency.
Why Do We Need Parallel Computing?
• Some problems are too large or time-consuming for a
single processor.

• Instead of one processor doing all the work,


• The problem is divided into smaller tasks.
• Multiple processors work on those tasks simultaneously.
• Their results are combined to produce the final answer.

• This greatly reduces execution time.


Examples for Parallel Computing
Imagine in college library, librarian asks you to arrange 1,000 books.
• By One Student (Sequential Computing)
• One student arranges all 1,000 books. (10 books in 1 min)
• Time taken = 100 minutes
• Using 10 Students (Parallel Computing)
• Each student arranges 100 books.
• Everyone works at the same time.
• Time taken ≈ 10 minutes
• The work finishes much faster because it is done in parallel.
Preparing Food in a Restaurant

Imagine a customer orders:

• Pizza

• Burger

• Juice

• French Fries
This is parallel computing: many workers perform different parts of the
same job simultaneously to finish faster.
Advantages

•Faster execution
•Better performance
•Efficient use of multiple processors
•Can solve large and complex problems
•Reduces processing time
Disadvantages

•More complex programming


•Requires synchronization between processors
•Higher hardware cost
•Communication between processors can add
overhead
2. Cluster Computing

• Each computer
performs part of
the work, and the
combined result is
returned to the
user.
What is Cluster Computing?
Definition:

• Cluster computing is a computing paradigm in which multiple


computers (called nodes) are connected through a high-speed
network and work together as a single system to perform a task.

• Or Cluster computing means connecting many computers so that


they work together like one powerful computer.
3. Distributed Computing
What is Distributed Computing?
Definition

Distributed computing is a computing paradigm in which multiple


computers located in different places communicate through a
network and cooperate to solve a common problem.

Distributed computing means many computers connected through


a network work together to complete a task by sharing the
workload.
Enabling Technologies for Distributed
Computing

• For distributed computing to work efficiently, several


supporting technologies are required. These technologies are
called Enabling Technologies because they enable (make
possible) the communication, coordination, and resource
sharing among distributed computers.
Definition

• Enabling Technologies for Distributed Computing are


the technologies that support and facilitate
communication, resource sharing, coordination, and
execution of tasks among multiple computers
connected through a network.
Major Enabling Technologies
1. Computer Networks

Definition
• A computer network is a collection of interconnected
computers that communicate and share resources.

• Without networking, distributed computing cannot exist


because computers would not be able to exchange
information.
Functions
• Connects multiple computers
• Shares files and printers
• Transfers data between systems
• Enables communication

Types
• LAN (Local Area Network) – Small area (office, school)
• MAN (Metropolitan Area Network) – City-wide
• WAN (Wide Area Network) – Country or world-wide

Ex: A college computer lab where all computers share files and printers.
2. Communication Protocols

Definition
• Protocols are rules that govern communication between computers. They
ensure reliable and secure transmission of data.
Common Protocols
• TCP/IP
• HTTP
• HTTPS
• FTP
• SMTP
Ex: When opening a website, HTTP/HTTPS transfers web pages from the
server to your browser.
3. Internet Technology
Definition
• Internet technology provides worldwide communication using TCP/IP
protocols, allowing computers across the globe to exchange information.
• It enables distributed applications to communicate regardless of their location.
Features
• Global connectivity
• Fast communication
• Standard communication protocols
• Supports web applications and cloud services
Example
• Google Search, Gmail, YouTube, Online Banking
4. Web Services and APIs

Definition
• Web services allow different software applications to
communicate over the Internet.
• APIs enable one application to use services provided by
another application.
Example
• A food delivery app using Google Maps API to show
delivery locations.
5. Distributed Databases

Definition
• A distributed database stores data across multiple computers while
appearing as a single database to users.

Advantages
• Faster access
• High availability
• Better reliability

Ex: Bank branches storing customer records at multiple locations


while providing unified access.
6. Cloud Computing

Definition
• Cloud computing provides computing resources over the Internet
on demand.
• Users can access servers, storage, software, and databases
without owning physical hardware.

Services
• IaaS (Infrastructure as a Service)
• PaaS (Platform as a Service)
• SaaS (Software as a Service)
Advantages
• Scalable
• Cost-effective
• Accessible anywhere
• High availability

Example
• Google Drive, Microsoft OneDrive, AWS
• 7. Cluster Computing
Definition
• Cluster computing connects multiple computers in the same
location to work together as a single high-performance system.
Features
• High speed
• Central management
• Same operating system
• Same local network
Example
• A university supercomputer built using many connected computers.
8. Virtualization
Definition
• Virtualization allows multiple virtual computers (Virtual Machines) to
run on one physical computer.
• It improves resource utilization and flexibility.
Advantages
• Better hardware utilization
• Easy management
• Reduced cost
• Supports cloud computing
Example
• One server running Windows, Linux, and Ubuntu virtual machines
simultaneously.
Summary
• Enabling Technologies for Distributed Computing are the
technologies that make distributed systems possible by providing
communication, coordination, resource sharing, and
management among multiple computers.
• Important enabling technologies include Computer Networks,
Internet Technology, Communication Protocols, Middleware,
Virtualization, Cloud Computing, Cluster Computing, Grid
Computing, Distributed Databases, and Web Services.
• These technologies enable distributed systems to operate
efficiently, reliably, and at large scale.
So, What is Cloud
Computing ?

You might also like