ALL > Computer and Education > courses > university courses > graduate courses > modern operating system > ZSTU-(2019-2020-2) Class > student directories > Bhupesh(l20192e060101) >
Homwwork4:: write a review paper about the detailed comparisons between Centralized systems and distributed systems , submit one choice question for the exam database and one dialog for self tutor. Version 0
๐Ÿ‘ค Author: by bhupeshaawasthi952gmailcom 2020-05-25 10:19:28
Centralized Systems

In a centralized system, all users are connected to a central network owner or โ€œserverโ€. The central owner stores data, which other users can access, and also user information. This user information may include user profiles, user-generated content, and more. A centralized system is easy to set up and can be developed quickly.But this system has an important limitation. If the server crashes, the system no longer works properly and users cannot access the data. Because a centralized system needs a central owner to connect all the other users and devices, the availability of the network depends on this owner. Add to that the obvious security concerns that arise when one owner stores (and can access) user data, and itโ€™s easy to understand why centralized systems are no longer the first choice for many organizations.

Example โ€“

Wikipedia. Consider a massive server to which we send our requests and the server responds with the article that we requested. Suppose we enter the search term โ€˜junk foodโ€™ in the Wikipedia search bar. This search term is sent as a request to the Wikipedia servers (mostly located in Virginia, U.S.A) which then responds back with the articles based on relevance. In this situation, we are the client node, wikipedia servers are central server.

Characteristics of Centralized System โ€“

  • Presence of a global clock: As the entire system consists of a central node(a server/ a master) and many client nodes(a computer/ a slave), all client nodes sync up with the global clock(the clock of the central node).

  • One single central unit: One single central unit which serves/coordinates all the other nodes in the system.

  • Dependent failure of components: Central node failure causes entire system to fail. This makes sense because when the server is down, no other entity is there to send/receive response/requests.


Scaling โ€“

Only vertical scaling on central server is possible. Horizontal scaling will contradict the single central unit characteristic of this system of a single central entity.

Components of Centralized System โ€“

Components of Centralized System are,

  • Node (Computer, Mobile, etc.).

  • Server.

  • Communication link (Cables, Wi-Fi, etc.).


Architecture of Centralized System โ€“

Client-Server architecture. The central node that serves the other nodes in the system is the server node and all the other nodes are the client nodes.

Limitations of Centralized System โ€“

  • Canโ€™t scale up vertically after a certain limit โ€“ After a limit, even if you increase the hardware and software capabilities of the server node, the performance will not increase appreciably leading to a cost/benefit ratio < 1.

  • Bottlenecks can appear when the traffic spikes โ€“ as the server can only have a finite number of open ports to which can listen to connections from client nodes. So, when high traffic occurs like a shopping sale, the server can essentially suffer a Denial-of-Service attack or Distributed Denial-of-Service attack.


Advantages of Centralized System โ€“

  • Easy to physically secure. It is easy to secure and service the server and client nodes by virtue of their location

  • Smooth and elegant personal experience โ€“ A client has a dedicated system which he uses(for example, a personal computer) and the company has a similar system which can be modified to suit custom needs

  • Dedicated resources (memory, CPU cores, etc)

  • More cost efficient for small systems upto a certain limit โ€“ As the central systems take less funds to set up, they have an edge when small systems have to be built

  • Quick updates are possible โ€“ Only one machine to update.

  • Easy detachment of a node from the system. Just remove the connection of the client node from the server and voila! Node detached.


Disadvantages of Centralized System โ€“

  • Highly dependent on the network connectivity โ€“ System can fail if the nodes lose connectivity as there is only one central node.

  • No graceful degradation of system โ€“ abrupt failure of the entire system

  • Less possibility of data backup. If the server node fails and there is no backup, you lose the data straight away

  • Difficult server maintenance โ€“ There is only one server node and due to availability reasons, it is inefficient and unprofessional to take the server down for maintenance. So, updates have to be done on-the-fly(hot updates) which is difficult and the system could break.


Applications of Centralized System โ€“

Application development โ€“ Very easy to setup a central server and send client requests. Modern technology these days do come with default test servers which can be launched with a couple commands. For example, express server, django server.

  • Data analysis โ€“ Easy to do data analysis when all the data is in one place and available for analysis

  • Personal computing


Use Cases โ€“

  • Centralized databases โ€“ all the data in one server for use.

  • Single player games like Need For Speed, GTA Vice City โ€“ entire game in one system(commonly, a Personal Computer)

  • Application development by deploying test servers leading to easy debugging, easy deployment, easy simulation

  • Personal Computers


DISTRIBUTED SYSTEMS:

This is the last type of system that we are going to discuss. Lets head right into it!

In decentralized systems, every node makes its own decision. The final behaviour of the system is the aggregate of the decisions of the individual nodes. Note that there is no single entity that receives and responds to the request.

Example โ€“

Google search system. Each request is worked upon by hundreds of computers which crawl the web and return the relevant results. To the user, the Google appears to be one system, but it actually is multiple computers working together to accomplish one single task (return the results to the search query).

Characteristics of Distributed System โ€“ :

  • Concurrency of components: Nodes apply consensus protocols to agree on same values/transactions/commands/logs.

  • Lack of a global clock: All nodes maintain their own clock.

  • Independent failure of components: In a distributed system, nodes fail independently without having a significant effect on the entire system. If one node fails, the entire system sans the failed node continue to work.


Scaling โ€“

Horizontal and vertical scaling is possible.

Components of Distributed System โ€“

Components of Distributed System are,

  • Node (Computer, Mobile, etc.)

  • Communication link (Cables, Wi-Fi, etc.)


Architecture of Distributed System โ€“

  • peer-to-peer โ€“ all nodes are peer of each other and work towards a common goal

  • client-server โ€“ some nodes are become server nodes for the role of coordinator, arbiter, etc.

  • n-tier architecture โ€“ different parts of an application are distributed in different nodes of the systems and these nodes work together to function as an application for the user/client


Limitations of Distributed System โ€“

  • Difficult to design and debug algorithms for the system. These algorithms are difficult because of the absence of a common clock; so no temporal ordering of commands/logs can take place. Nodes can have different latencies which have to be kept in mind while designing such algorithms. The complexity increases with increase in number of nodes. Visit this link for more information

  • No common clock causes difficulty in the temporal ordering of events/transactions

  • Difficult for a node to get the global view of the system and hence take informed decisions based on the state of other nodes in the system


Advantages of Distributed System โ€“

  • Low latency than centralized system โ€“ Distributed systems have low latency because of high geographical spread, hence leading to less time to get a response


Disadvantages of Distributed System โ€“

  • Difficult to achieve consensus

  • Conventional way of logging events by absolute time they occur is not possible here


Applications of Distributed System โ€“

  • Cluster computing โ€“ a technique in which many computers are coupled together to work so that they achieve global goals. The computer cluster acts as if they were a single computer

  • Grid computing โ€“ All the resources are pooled together for sharing in this kind of computing turning the systems into a powerful supercomputer; essentially.


Use Cases โ€“

  • SOA-based systems

  • Multiplayer online games


Organisations Using โ€“

Apple, Google, Facebook.

GeeksforGeeks has prepared a complete interview preparation course with premium videos, theory, practice problems, TA support and many more features. Please refer Placement 100 for details

Please login to reply. Login

Reversion History

Loading...
No reversions found.