DBMS- its types and Applications
What is the difference between centralized and distributed DBMS?
Database is a collection of data which allows a user to easily create, read, update, or delete a record. Database in its relational guise is homogeneous and utilizes traditional tabular format. There are several concepts of database namely MySQL, SQL Server, Oracle, and others. These have become extremely popular across the globe defying the geographical barriers. A database management system is used to manage the modern databases as it provides ease of usage to the database administrators.
DBMS is the acronym used for database management system which is basically a software package. It provides easy access to certain functionalities such as creating, manipulating, retrieving, and managing the data stored into the database. It eliminates the processes which a database administrator must perform for the maintenance purposes of a database. Several popular database management systems are FoxPro, dBASE, MySQL, Oracle, and SQL Server.
Database in its basic terminology is the collection of data which is managed by a database management system. A DBMS can be described as a powerful software or a tool which eases out a lot of work for a database administrator. In this all the data can be easily manipulated and managed. Thus, enhancing the performance of the system by a generous margin. This is the reason why DBMS gets implemented in several heavy domains such as airlines, banking, education, retail etc.
Characteristics of Database Management System
A database management system provides security to the stored database and removes the redundant data. Thus it reduces the size of data and eventually increases its accuracy.
A DBMS allows the administrator or developer to form tables based on the entities and relationships among them. A logical structure can be generated which allows a user to easily understand the architecture of a database.
A database management system allows a database administrator to have multiple views of data stored, thus allowing users to concentrate on the desired data as per requirements.
A database management system abides by the ACID properties which are described as Atomicity, Consistency, Isolation and Durability. Primarily these are used in the cases of transactions which are induced to make changes into the database. Thus, they maintain the quality of data as per the properties in order to maintain the efficiency of the database.
A DBMS induces a greater sense of consistency which improves the quality of database by a considerable margin. It is due to the fact that it can detect all the inconsistent data transmissions and administrators can then mitigate them.
Almost all the modern databases utilize real-world entities in order to offer a better reference for users. Thus, the purpose of an attribute can easily be identified without any major issue.
Multi User Access
A DBMS has enough potential to allow multiple users to access data at the same time and make their desired changes in parallel. Although, in case more than one user tries to manipulate the same data, then the access is denied automatically.
Query language is used to perform data manipulations on a DBMS, which makes it altogether much more efficient, as all the operations can be performed with much accuracy. Also, it permits several distinct filtering options for the purpose of retrieving data.
The universities across the world give you a number of assignments. These college assignments demand high concentration and precision. Sometimes, due to a busy schedule, you tend to lose the balance. To help you sustain a positive flow, we at Assignmenthelp4me, are always available for you. You can place your assignment order with us anytime of the day and we would happily serve your request.
Application of DBMS
DBMS is extensively used in banking systems in order to keep track of all the transactions. Also, all the records of users, bank accounts, credit amount, debit amount, statements, loans, and other data is stored and managed with the help of DBMS.
E-commerce platforms have huge databases which cannot be handled without the help of DBMS. Thus, database administrators deploy DBMS software in order to easily manage the product data, order details, shipping information and several other significant information.
A single airline can have numerous planes across the world which have a much greater number of customers. So, DBMS is used to manage the records of customers, reservations along with the flight details in an appropriate and efficient manner.
Retail supermarkets have a plethora of products and a great customer base, thus they need to deploy a DBMS. Without this, they will be unable to manage such a huge amount of data.
Educational institutions across the globe utilize DBMS in order to manage the data of courses, students, staff, and other similar sets of data in an efficient way. If a DBMS is not implied, it would put considerable pressure on the database managers and administrators to manage such huge volumes of data.
Comparison – Centralized, Decentralized and Distributed Systems
A centralized database comprises a centralized single data server, where all the data is stored by an organization. A centralized system comprises numerous small data centers which are spread across various geographical locations. These data centers collect data at the low level and upon cleaning the data, it is sent to the centralized server which processes and stores the data. These local servers can fetch the data from a centralized server at any given instance of time, when the need arises. It is managed using a single mainframe computer which is connected to the database via LAN or WAN network.
- Central Documents management system
- User Management System
- Banking Systems
- Airline Reservation Systems
Characteristics of Centralized System
Single Central Unit
There is only a single central unit/node which serves all the other nodes of the system often called child nodes.
Dependent failure means that when the server is down due to some reason, no client node can send or receive any sought of request.
Single instance of time
All the client nodes connected to the centralized system sync as per the time of the global clock set on the central/primary node.
Scaling in Centralized System
Scaling is a significant concept in any system in order to sync with the increasing or decreasing business needs. However, a centralized server only supports vertical scaling as horizontal scaling will contradict with the single central server.vComponents of Centralized System
The primary components of a centralized system are:
- Client node
- Data transmission medium
Architecture of Centralized System
A central server system supports a client-server architecture as all the client nodes are connected to a single node of server.
Limitations of Centralized System
Although it can scale vertically, there is a limit. This means after a certain limit, the increase or decrease in hardware capabilities does not affect the server performance. Thus a drop in performance is experienced.
If there are only a certain number of ports open for a server, under the circumstances of increased traffic, bottlenecks can occur. This can lead to Distributed Denial-of-Service attack or Denial-of-Service attack.
Advantages of Centralized System
- A centralized database management is more secure as compared to any other because all the data is stored at a single place. Hence, stronger and much more effective security measures can be taken to safeguard the data.
- A centralized database management system is much more cost efficient than any other database management system available out there in the market. It is because it is being hosted on only single infrastructure using a single set of software and team.
- Data redundancy is absent, as it stores all the data in a single place which ensures that no redundant data is available.
- The data can easily be migrated from one place or system to another, as it is stored in a single place.
- Data integrity with a centralized database is much higher than any other because of single storage location.
Disadvantages of Centralized System
- Bottleneck situations can arise because of a single entity serving all the requests.
- The speed of storing and retrieving data is slow in comparison to others because huge volumes of data is stored in a single data server.
- There is minimal scope of database recovery, and it is almost impossible to create a redundant server due to the size of the primary server.
- If the security is compromised, the whole data of an organization is at risk as the attacker will gain access to all the data in one go.
Applications of Centralized Systems
- One of the major applications of a centralized system is personal computing, as all the data is stored at a single node rather than multiple. Also, whenever the need arises, the data is fetched from there only.
- It is also widely used for analysis of data, as it becomes easier to process and analyze data stored in a single data server.
- It is widely used for application development as it is very convenient to set up a central server to which client sends all the requests and fetches all the data.
Use Cases of Centralized System
- Personal Computers
- Single Player Games
- Test Servers for testing of newly developed applications
Organizations Using Centralized System
- National Informatics Center
The system is extremely popular because in this type of system, each node makes its own decision rather than being dependent on a single entity for sending or receiving the requests. There are less chances of system failure, as if one node gets fail, then it puts no effect on the others, so other work goes on smoothly.
- Mobile Database
- World Wide Web Database
Characteristics of Decentralized System
In this case, even though all the nodes are independent of each other, failure of a single node can cause a certain part of the system to fail instead of the entire system.
Multiple central nodes
Despite a single central node serving all the system, there are multiple number of central nodes in the whole system.
Absence of a single time instance
The network lacks consistency in the manner that each node works on their distinct time zone and clock.
Scaling in Decentralized System
There is no chance of increasing the performance of the entire system by just improving the performance of a single entity. Rather each node must upgrade its resources whether hardware or software which eventually enhances the performance of the entire system. Thus, only vertical scaling is supported in a decentralized system.
Components of Decentralized System
The primary components of a decentralized system are:
- Nodes which can either be a mobile or a computer
- Data transmission medium
Architecture of Decentralized System
A node cannot attain supremacy over the other by becoming a master, however, it can attain the role of a master by contributing towards a common objective and the voting.
In this type of architecture no one node can attain supremacy over any other node. Rather, all the nodes work as peers to each other.
Limitations of Decentralized System
- There is no option by which activity of nodes can be monitored by the admin or any parent node. This is due to the fact that each node makes their own decision regardless of their position in the system.
- This type of system is not suited at enterprise level, because with distinct behavior of each node and self-decision-making capabilities, it becomes easier to attain a collective objective which the organizations thrive for.
Advantages of Decentralized System
- The nodes are not dependent on a central node for availability, rather availability is measured on the up-time of each node. Hence, there can be certain nodes which are available all the time, thus offering high availability and relatively greater performance.
- Also, as there is no single point of contact for all the nodes which must receive and respond to the request of the clients. Thus, there are very less chances of bottlenecks occurring and slowing down the performance of each system.
Disadvantages of Decentralized System
- As each node is responsible for their independent behavior, thus it is hard to enforce regulations and policies.
- In case of a failure, it is difficult to determine the point of failure, as there are too many nodes and all work independently of each other.
- In a decentralized system, whenever a request is made and served, it is difficult to determine which node has served the request.
Database assignments are many times tough to understand. These not only require high intelligence but long hours to finish the assignment. Thus to to partner you in completing your database assignment, we at Assignmenthelp4me, are 24*7 available for you. You can anytime connect with us and order your college assignment.
Applications of Decentralized Systems
- These kinds of systems have gained momentum in cryptocurrency, as there was a need to keep the transactions secret which this system is most capable of. Also, it was majorly used because the transactions are secure in case of a decentralized system due to its non traceable feature.
- These are also majorly used in case of private networks as all the nodes need to maintain their privacy over the network and need not to be identified. Hence, multiple peer nodes can be connected over the network easily while maintaining complete privacy.
Use Cases of Decentralized System
- Cloud Platforms
- Decentralized Databases
Organizations Using Decentralized System
- Tor Network
Difference between centralized and decentralized
|Centralized System||Decentralized System|
|Single central node which handles all the request from client||No central node is present to handle requests from the clients|
|Every node is dependent on the central node for behavior||Every node exhibit independent behavior|
|Decision making is carried out by top-management||Decision making is done by individual nodes|
|Decision making is efficient||Decision making is time consuming|
|Predictable outcomes||Unpredictable outcomes|
|It is commonly implemented in large organizations or enterprises||It is more commonly implemented in medium size organizations.|
|If central node is down, whole system fails to respond||If a single node is down, a relatively smaller part gets down and rest of it continues to operate normally|
|Data is much more accurate as it is easier to maintain data consistency and integrity||Data is much less accurate as it is easier to maintain data consistency and integrity|
|There are minimal chances of data redundancy||There are greater chances of data redundancy|
|It utilizes fewer human resources||It utilizes greater number of human resources|
A distributed system is kind of similar to that of a decentralized system, as the nodes are independent of each other and are responsible for their individual behavior and there is no central node which receives and responds to a request either. However, unlike a decentralized system, the result from a distributed system is based on the collective result obtained from every node out of the system.
- Online peer-to-peer games
- Google Search System
- Electronic Banking
- Sensor Network
- Telecommunication network
Characteristics of Distributed System
In case of a distributed system, there are numerous nodes and despite the failure of a single node, the system still produces results. This is because majority of other nodes are contributing towards the single objective.
Absence of a single time instance
Unlike a centralized system, each node has its own clock time and works accordingly rather than a single time instance in case of a centralized system.
Scaling in Distributed System
A distributed system is quite extensive and flexible in nature, thus both vertical and horizontal scaling is possible.
Components of Distributed System
The primary components of a decentralized system are:
- Nodes which can either be a mobile or a computer
- Data transmission medium
Architecture of Distributed System
A client server architecture as suggested by the name, consists of client and server in which some of the nodes act as a server. Primarily, these attributes are the coordinator nodes.
Peer-to- peer architecture
Peer-peer architecture is the most suited for this kind of system, as individual nodes produce results in order to contribute towards a common goal.
In this type of architecture, distinct modules of an application are divided into multiple nodes so that these nodes can act together and collectively as a client.
Limitations of Distributed System
- Because of the lack of a common time instance, there might be certain issues in management of transactions.
- As there are numerous nodes, formulating an algorithm or enforcing policies becomes difficult.
Advantages of Distributed System
- Accuracy of result is high, because the average of results gathered from all the individual nodes are collectively described and output is produced.
- The overall throughput of the system is considerably low because there is widespread use of the nodes which leads to low latency.
Disadvantages of Distributed System
- Maintaining consistency across the system gets difficult because of the absence of a single instance of time.
- It is difficult to enforce policies because of multiple distributed systems.
Applications of Distributed Systems
- All the resources can be collectively used to achieve a common objective, thus creating a sought of a supercomputer, thus delivering the functionality of a grid computer.
- With the help of distributed systems, cluster computing can also be achieved. Moreover it is possible as multiple devices collectively work together to attain a common objective, thus creating a cluster of computers.
Use Cases of Distributed System
- Multiplayer online games
- Rendering of computer graphics in distributed manner
- Peer-to-peer networks
- SOA-based systems
Organizations Using Distributed System
Difference between distributed and decentralized
|Distributed System||Decentralized System|
|Every single entity contributes its decision to generate a collective result which is average of all.||Each node produces its own decision independent of each other|
|Node generating decision can easily be tracked||Node generating decision cannot be tracked easily|
|It produces more accurate results||The results are less accurate|
|It has a complex structure||It has less complex structure|
|It has high fault tolerance||It has moderate fault tolerance|
|Maintenance is considerably higher||Maintenance is relatively moderate|
|Highly scalable, but structure get more complex each time||Moderately scalable|
|Best Suited for large scale organizations||Best suited for medium scale organizations|
The above article describes the concept of database in detail and describes why a database management system (DBMS) is required. It is observed that a DBMS offers a much better and enhanced software to manipulate and manage the data much more efficiently and effectively by a database administrator than otherwise. It is attained that a DBMS plays a crucial role in maintaining the security of the system along with maintaining consistency of the data. The systems which can be deployed are of three types namely centralized, decentralized and distributed. Each system offers distinct functionality and its own purpose for different sets of industries. A centralized system offers a client server architecture where all nodes are dependent on a single central node for storing and retrieving data. On the other hand, in case of a decentralized system, all the entities are independent and produce their own decision, thus eliminating the risk of a single point of failure. However, a distributed system is widely used in large organizations primarily due to the fact that the accuracy is high, and it has a much higher fault tolerance than others. This is because multiple nodes produce results independently and deliver it collectively to attain a single decision or a result which is highly accurate.