In this article, we’ll analyze the situations in which it is more appropriate to implement a distributed database instead of a centralized (local) database. But before we do so, let’s see how the two of the database concepts differ.
Centralized (local) Database
A centralized database (also called local or CDB) is a locally stored database, which in all practicality simply means that all of the database’s data are present and sustained in a single location. Under the term of ‘single location,’ we can imagine a single central computer (thus the word ‘centralized’), such as a desktop, server or a mainframe computer. As far as accessing the centralized database, that can be done from “a number of different points, typically through a computer network.” (Distributed database, 2016).
Let’s see how centralized databases differ from the distributed databases. As the evolution of networking abilities kept progressing, database systems have also advanced. And the advancements in database storage systems introduces us to a brand new idea, that of a storing database on multiple well-organized network devices (illustrated in Diagram 2).
Note: The network devices (typically servers) may not necessarily be located in the same physical location. Distributed database can be installed on network devices in a local intranet, but can also reside spread across network servers in different corporate network locations; or even live on decentralized, independent computers on the Internet, such as in a blockchain, which is an excellent example of a distributed database system.
When should we use a distributed database?
Distributed database would be my preference in a scenario where all the computers were spread out across your country, or worldwide. This is because the choice of using a distributed database comes from advantages, such as having data stored in different network locations. So, if your corporation wants to take advantage of having a database accessible over different network location, this would likely be the best choice. In distributed databases, data can be manipulated between the various tables located on different database servers. Another huge advantage of distributed database systems is that of an increased database integrity, in the case of a system failure. A distributed database typically also considered to be a secure setup.
When would it be preferential to use a local database?
If all of our computers were localized in one building, I would use a local database, as this is a scenario where the business requirements call for a system that doesn’t need to be accessed from a remote location and where there is a likely a necessity of an overall performance of the system. I would also use a local database in the case where a single database format is a necessity (which isn’t always a case in distributed databases). Another situation which would likely require a local database is that of a system that cannot afford increased network traffic. However, most often the case for installing a local database is simply due to ease of setup, and when a business cannot spare resources on optimization and management of a distributed database system that often uses various DBMS products that overall increase the complexity of such tasks. Using mirroring, replication or fragmented database setup are problems that “are not present in more traditional centralized databases—how to disguise the distributed nature of the database so that it functions as a coherent system or how to ensure that replicated portions of a database remain duplicates of each other as updates occur. In turn, the study of distributed databases is a current area of research.” (Brooksher, 2014)
When would I use database mirroring?
A distributed database can exist in a state in which duplicates of the same database (mirrors/replicas) are stored on multiple network devices (Diagram 3). Such a setup is often used to speed up data retrieval process and also protect the data from loss, so that’s most likely the proper use case for mirroring or replicating.
How would I tailor a distributed database for the local environment?
A distributed database can store the data as fragments in databases installed on multiple network devices. Diagram 4 illustrates this state, which is an ideal use case for using a distributed database in a local environment.
Nowadays, the decision of using centralized or distributed database is a lot easier for business. We have achieved this mainly due to a number of recent advances made in design and quality of DBMS systems. The DBMS system is basically the application that can control the database and it doesn’t matter “whether the database is stored on a single machine or scattered among many machines within a network as a distributed database.” (Brooksher, 2014)
Brooksher (2014) Computer Science: AN OVERVIEW. 12th edn. United States: Prentice Hall. (Accessed: 2 October 2016).
Daoudi, S. (2013) Local VS distributed databases – Daoudi Samir’s tech Blog. Available at: http://www.daoudisamir.com/local-vs-distributed-databases/ (Accessed: 8 October 2016).
Distributed database (2016) in Wikipedia. Available at: https://en.wikipedia.org/wiki/Distributed_database (Accessed: 8 October 2016).
Alam, G. (2012) Distributed database vs local database. Available at: http://georgealam.com/?p=63 (Accessed: 8 October 2016).
Distributed database concepts (2001) Available at: https://docs.oracle.com/cd/B10501_01/server.920/a96521/ds_concepts.htm (Accessed: 8 October 2016).
DBMS: Centralised vs distributed – virtualMV2015wiki (no date) Available at: http://www.virtualmv.com/wiki/index.php?title=DBMS%3ACentralised_vs_Distributed (Accessed: 8 October 2016).
Centralized database (2016) in Wikipedia. Available at: https://en.wikipedia.org/wiki/Centralized_database (Accessed: 8 October 2016).
Raja, A. (2014) Why are distributed databases becoming so popular?. Available at: https://www.atlantic.net/blog/why-a-distributed-database-is-used-and-types-of-distributed-data/ (Accessed: 8 October 2016).
Posted and Rouse, M. (2016) What is distributed database? – definition from WhatIs.com. Available at: http://searchoracle.techtarget.com/definition/distributed-database (Accessed: 8 October 2016).
Admin (2013) ‘Advantages and disadvantages of distributed database’, SQL, 16 April. Available at: http://www.moreprocess.com/database/sql/advantages-and-disadvantages-of-distributed-database (Accessed: 8 October 2016).