-
Notifications
You must be signed in to change notification settings - Fork 2
Graph Databases as a Replacement to Relational Databases.
Graph Databases have been in use for quite some time now in scenarios such as Social Network, Knowledge Graphs, Recommendation Engines & more
While offering us with
- Easily Supported Queries
- Explicitly Detailed Relationships &
- Adaptability
It still has failed to appear as a popular choice to customers and researchers due to its lacking from a few benchmarks it has yet to reach :
- A Standardized Query Language &
- Mainstream Support
[1]
| Criteria | RDBMS | Object-oriented database | Graph database(NoSql database) |
|---|---|---|---|
| Data storage | The basic formate to organize the data is in the form of row and columnData is stored in the form of rows and columns. Since RDBMS does not store relationships, it requires less space. | Stores data as objects as well as methods to use it. Needs higher space in comparison to RDBMS. | Graph data is kept in store files, each of which contains data for a specific part of the graph, such as nodes, relationships, labels, and properties |
| Flexibility: adaptability to change | Changing the table design may require a complete rebuild. Can be altered once the database is deployed however can take significantly more time than the graph database. | New objects can easily be constructed from existing objects. | Allows the addition of new nodes and relationship without compromising the existing network |
| Query language | Standard query language (SQL) | Exist a standard language but hardly implemented | No standard query language yet |
| Query Performance | Performs well for simple, structured data but low performance for data with many many-to-many relationships. | No join is required as objects can be accessed by using pointers hence faster performance | Performs exceptionally well for traversal queries, highly interconnected data, deep and complex queries. |
| Integrity constraints: Rule that defines the set of consistent database states or changes of state or both. | There are four types of integrity constraints: Domain Constraint, Entity Integrity constraints, Referential Integrity Constraint, Key Constraint | Consistency constraints have not been fully implemented. Provides only a limited number of features for integrity constraints | Integrity constraints support is still under development in a graph database |
| Maturity and level of support: how thoroughly tested it is | Development of RBMS leads back to 1974 making it one of the oldest and reliable DBMS. | Development is still going on therefore a sufficient number of Programmers and Database Administrators are available for OODBMS. | Development of graph database boomed in 1998 however it is still not widely adopted. |
| Ease of programming | The common language makes transitioning between implementation easier | It is direct and extensive support to OO programming. | Graph database are language-specific and have their own API making transitioning between graphs databases difficult |
| Security | contains extensive support for ACL-based security, built-in multi-user support | most of the Object-Oriented Databases do not support the authorization | Contains some access control list (ACL) security mechanism but lack support for multiuser environments(both handled in application level) |
| Scalability | Relational model operations cannot be extended because the Relational Data Model has a fixed number of SQL operations. | It provides full support to advance applications. A set of processes can be extended easily | Functionality can be extended easily by using API and plugins. |
[2][3][4]
From above we can conclude that the choice of databases depends on the type of data we have on hand. If our data is quite simple and structured then a Relational Database is enough however to deal with highly interrelated data, a Graph database would be a wise choice. A graph database is highly efficient for deep and complex analysis. Whereas for handling the complex graphical & hypermedia data and advanced applications, an Object-Oriented Database System can be an alternative to traditional database
-
Graham Pearson.graph-databases-replace-rdbms-technologies. https://www.linkedin.com/pulse/graph-databases-replace-rdbms-technologies-graham-pearson
-
Angles, R., A Comparison of Current Graph Database Models,2012 IEEE 28th International Conference on Data Engineering Workshops, IEEE, 2012. https://www.researchgate.net/publication/261076480_A_Comparison_of_Current_Graph_Database_Models
-
Vicknair, C.; Macias, M.; Zhao, Z.; Nan, X.; Chen, Y. & Wilkins, D. A comparison of a graph database and a relational database Proceedings of the 48th Annual Southeast Regional Conference on - ACM SE '10, ACM Press, 2010. https://www.researchgate.net/publication/220996559_A_comparison_of_a_graph_database_and_a_relational_database_A_data_provenance_perspective
-
Aziz, T.; Haq, E.-u. & Muhammad, D., Performance-based Comparison between RDBMS and OODBMS International Journal of Computer Applications, Foundation of Computer Science, 2018, 180, 42-46. https://www.researchgate.net/publication/323218317_Performance_based_Comparison_between_RDBMS_and_OODBMS