The World is all about Data. Know more about DBMS and RDBMS…and what’s next.
Data and Information Management is not new. Nevertheless, this article is for those people who are new to the data world and are constantly seeking and searching for relevant information online. In this article, we are going to take a dip into DBMS and RDBMS.
1. Comparison and Differences between DBMS and RDBMS
As you may know, the core and heart of Information technology is data, without which computers and computing devices will have nothing to store, interpret and report back. With millions of computing devices operating across the globe processing zillions of gigabytes of data, it is highly essential to store data in a structured and robust manner and enable access to users whenever and wherever required. Management Systems are broadly classified into Database Management Systems (DBMS) and Relational Database Management Systems (RDBMS). Here is a brief introduction to a few well-known database models.
DBMS are software applications that help you build and maintain databases. Here are 4 types of DBMS models.
In a hierarchical database model, data is organized into nodes in a tree-like structure. A node is connected to only one parent node above it. Hence data in this model has a one-to-many relationship. An example of this model is the Document Object Model (DOM) often used in web browsers.
The network database model is a refined version of a hierarchical model. Here too, data is organized in a tree-like structure. However, one child node can be connected to multiple parent nodes. This gives rise to a many-to-many relationship between data nodes. IDMS (Integrated Database Management System), Integrated Data Store (IDS) are examples of Network Databases.
A relational database is organized into tables, records, and column and there is a well-defined relationship between database tables. A relational database management system (RDBMS) is an application that allows you to create, update, and administer a relational database. Tables communicate and share information which enables data search, data organization, and reporting. Most RDBMS use the SQL language to access the database.
SQL (Structured Query Language) is a programming language used to communicate with data stored in databases. SQL language is relatively easy to write, read, and interpret.
In an object-oriented database model, data is represented by objects. For example, a multimedia file or record in a relational database is stored as a data object as opposed to an alphanumeric value.
Relational Database Management System (RDBMS) is a ‘subset’ of a DBMS system. RDBMS is a powerful data management system and is based on the relational model of DBMS.
Now, let us see a few salient points that make RDBMS a powerful data management system as compared to the traditional DBMS.
DBMS stores data in form of files. Some popular DBMS are dBase, Foxpro, and other XBase products which follow the .dbf file format or in flat-files used by the Main Frame systems. I am sure you know that most of the above DBMS formats are obsolete in the digital technology context. In a DBMS, data can also be stored as XML files in an XML database.
In an RDBMS data is stored in a tabular structure in columns (header names) and rows (actual data).
1.2.2 Data Redundancy
Data redundancy is very common in a DBMS system as there is no relationship between the tables and files. Hence maintenance and management of data is a humongous task.
In RDBMS, data is structured and normalized to enable data integrity and reduce data redundancy. Primary keys and foreign keys are assigned to key fields in the tables and this sets a relationship between tables.
DBMS follows the navigation and network models and hence retrieval of data is very slow as it needs extensive and long programs. Data retrieval in RDBMS is faster and powerful since a Structured Query Language (SQL) is used.
DBMS is used for small applications hence the hardware requirements like hard disks, i/o channels for data, RAM with low configurations are manageable. RDBMS is used for complex and Enterprise applications. Hence hardware requirements need high-end configuration to sustain and manage the applications.
DBMS is low cost and affordable, whereas RDBMS requires a big investment in infrastructure. With high availability of Cloud computing platforms such as Amazon Web Services (AWS) and Azure from Microsoft, RDBMS deployment on the cloud can be done easily and cost-effectively. Unless there is a specific demand for an on-premise system, physical infrastructure for RDBMS can be eliminated.
1.2.6 Distributed Database
Unlike traditional DBMS which requires to be centrally located, RDBMS can be distributed over a network and can be stored in multiple computers in different locations. This supports data mirroring and storage, and helps recover lost data should there be a situation of data disaster in any of the databases.
2. Security Vulnerabilities of DBMS and RDBMS
In a file-based DBMS, there are high chances of having multiple copies of the same data being maintained by different users in different locations. This leads to data anomalies, inconsistencies and security vulnerabilities. RDBMS simply scores over traditional DBMS from a security standpoint. Here are few dominant RDBMS security features:
- Complex design – As an RDBMS data structure is normalized, the database design is complex and hence it is not easy for an unauthorized user to retrieve data.
- Data storage – RDBMS architecture is highly proprietary and supports data encryption and decryption. Complex algorithms used for encryption and decryption make RDBMS less vulnerable to data thefts and access.
- Role-based Security – Here, data access/security is based on the roles played by the users such as Database Administrator (DBA) and any other user types.
- Audits – RDBMS is versatile in that it provides tools and processes to create data access logs and trails on transactions that are done on databases. This allows organizations to keep checks and balances on data access, besides performing periodic audits on data exchange.
People Also Read: Popular Java Blogs, Websites, and Newsletters
3. User profiles for DBMS and RDBMS
- Database Administrator – generally called as DBA, is a role usually within the Information Technology department, charged with the creation, maintenance, backups, querying, tuning, user rights assignment and security of an organization’s databases.
- Application Programmer – Is the developer of software applications who access databases.
- End User: Uses a console interface to access applications and relevant databases. Users typically have different levels of access rights to databases which are defined at the organization level.
4. Popular Databases in 2018
The world has moved so much away from traditional DBMS and has scaled a lot in the RDBMS domain. Some of the well known and widely deployed RDBMS platforms are Oracle 8.7 by Oracle Corporation, DB2 by IBM, Microsoft SQL server, MySQL – open source RDBMS which is efficient, reliable and cost effective. Note that RDBMS is used only for structured data.
‘Postgresql’ is a cross-platform ORDBMS that runs on different operating systems like Linux, Windows, and Solaris etc. It is an open source database that is ‘Free’ to use under a free software license model. It is developed by the PostgreSQL development group.
5. What is next in the world of data and databases?
In a Digitally and Socially connected world where huge volumes – thousands of terabytes – of data are processed in real time in an unstructured format, a completely different database model is required. To address this exponential growth in data transaction, NoSQL – a non-relational, cross-platform document-oriented database system is in place. NoSQL stores unstructured data such as Social media – Facebook, Twitter, LinkedIn etc. Few well known NoSQL databases are MongoDB, RavenDB and Couch DB.
People Also Read: DBMS Normalization
6. Making your choice between DBMS, RDBMS, and NoSQL
The database you decide to use depends on the data type, application, and user environment. It requires a prudent and discerning approach to the process of selecting the right database solution. Nevertheless, despite the developments and innovations in database technology space, RDBMS is here is to stay and will continue to rule the structured data environment. Other alternatives such as NoSQL in the unstructured domain will also continue to grow in specific applications and user domains.