Relational Databases
Advantages
RDBMS minimize data storage
by not repeatedly the same information row by row. This is because relational
database can store reference data in one table and allow other tables to
reference it. Hence it is allowing a One to Many relationship through
relational references Example: Students and Classes
This is not available in
Flat Files and NoSQL Database Minimize Updates Example: Let say the student address
changes but classes stay the same. Because every row has a student address the
whole data must be updated accordingly.
RDBMS ensure data integrity.
Not available in Flat Files and NoSQL
RDBMS ODBMS ensure data
is kept central live. Not available in FlatFiles multiple copies.
RDBMS ODBMS ensure data
is transactional and accurately tallied. Not available in FlatFiles and NoSQL.
Example: School Fees and
Credit Card Payment Tallied correctly even if one fails. Flat Files
Relational Databases
Disadvantages
RDBMS does not maintain integrity
rules over specific types of data away from the data storage layer. ODBMS does.
Example: Object Oriented Relational Database can specify English / Mathematics
/ Humanities as Classes (Subjects) away from another Class like ART. RDBM does
not distinguish this through its structure. They are both though accurate and centrally
located data stored in centrally located server.
RDBMS Integrity makes it difficult
to import 3rd part non-conforming data. Thus data integrity is
enforced rigorously in RDBMS. Same for ODBMS. FlatFiles and NoSql does not
enforce this rule.
RDBMS Performance Slow
for storing data like html and is slow than transforming to table format and
does grow the database making it slow down. As a result Indexes need to be
optimised for inserts and updates and viewing. NoSQL does not have a
performance hit and is very fast. So are Flat Files.
RDBMS Table(s) Requires
programs to be written to display data in a user friendly manner to display
business information. FlatFile is raw format of the data and software already
available. NoSQL and ODBMS has the same limitation.
Conclusion
As a result, the main
reason for RDBMS is for real time live data inserts, updates and viewing. Also,
when interfacing to other systems RDBMS accomplishes this to be done with full
data integrity in real time using Transactions