What are the most popular DBMSs in the software industry, and why are they popular? Read on to upgrade your knowledge.
As a software engineer or a student learning about databases, you may know and work with many database management systems (DBMSs) in your projects. There are hundreds of DBMSs in use in the modern database world, so it pays to know about the most popular DBMSs and their features, advantages, disadvantages, and their applications.
The popularity of a DBMS may depend on factors such as options for licensing, capabilities in common critical features, support by the best data modeling tools (i.e., Vertabelo), etc. What you take away from this article will help you in selecting the best DBMS based on the nature of your database project.
These are my top database management systems based on their popularity:
1. Oracle
Oracle is a widely used relational DBMS developed by the Oracle Corporation. Its primary database model is the relational database management system (RDBMS). Oracle DBMS is a multi-model DBMS, and its secondary database models are the document store, the graph DBMS, the RDF store, and the spatial DBMS.
Oracle has become a popular DBMS in the past couple of years for the following reasons:
- According to the Oracle team, it reduces the operational cost by up to 90% from automation. It manages, secures, and maintains your database with automation driven by machine learning. And it provisions, scales, tunes, protects, patches, and repairs the database automatically without user intervention.
- Oracle guards your database against data breaches with security solutions for encryption, key management, privileged user access controls, data masking, monitoring activities, etc.
- Oracle uses a single database for all data types.
- You can deploy your Oracle database wherever you want. It might be in your data center, in a public cloud, or in your private cloud.
Many top companies, including JPMorgan Chase, UnitedHealth, and Citigroup, use this DBMS.
Let’s discuss a few RDBMS features of the Oracle DBMS.
- It is an object-relational database management system (ORDBMS), which implements object-oriented features such as inheritance, user-defined types, and polymorphism. It makes it possible to store complex business models in a relational database.
- As an RDBMS, the Oracle DBMS has database schemas (a collection of logical data structures). An Oracle database supports many schema objects such as tables, indexes, etc.
- Oracle SQL supports data access and many other features that extend beyond standard SQL. PL/SQL, a procedural extension to the Oracle SQL, is integrated with the Oracle database. You can use PL/SQL to control the flow of SQL programs, use variables, and write error-handling procedures using Oracle database SQL statements, functions, and data types. The primary benefit of PL/SQL is the capability to store the application logic together with the database itself. In addition, the Oracle DBMS allows you to save program units written in Java. You can call PL/SQL programs through Java program units and call Java programs through PL/SQL.
- As a multiuser RDBMS, the Oracle DBMS also manages transactions with the basic principle of “all or nothing” (an atomic operation succeeds or fails as a whole), while controlling data concurrency and maintaining data consistency.
In addition to the most common RDBMS features, the recent versions of the Oracle DBMS like 18C, 19C, and 21C come with the latest extra features listed below:
- The Oracle Database Vault command rules protect the
ADMINISTER KEY MANAGEMENT
- You can now create schema-only accounts for object ownership without allowing clients to log into the schema.
- Encrypting sensitive credential data in the data dictionary is now enabled.
- You can grant administrative privileges to schema-only accounts.
These are just a few of the new features that come with the latest versions of the Oracle DBMS.
For licensing, Oracle offers many editions like Standard Edition 2, Enterprise Edition, Exadata, Database Cloud Service Enterprise Edition, etc., to be selected based on your requirements.
Also, many tools such as Vertabelo, Lucidchart, Visual Paradigm, etc., support data modeling for Oracle databases. Oracle supports server operating systems including AIX, HP-UK, Linux, Solaris, and Windows, programming languages including C, C#, C++, COBOL, Delphi, Java, JavaScript, and PHP. ODBC, JDBC, and Oracle Call Interface (OCI) are the APIs, and there are other access methods that support connecting to Oracle databases.
2. MySQL
MySQL is another widely used open-source relational database management system (RDBMS). It is also one of the best multi-model DBMSs. Its primary database model is the relational DBMS, and the secondary models are the document store and the spatial DBMS. The original MySQL developer was MySQL AB, which was acquired by Sun Microsystems, which was in turn acquired by Oracle Corporation in 2010.
MySQL is used by many of the world’s largest and fastest-growing organizations such as Facebook, Adobe, Google, and Zappos. WordPress uses the MySQL database management system to store its blogs.
MySQL has become the favorite DBMS of many big and small organizations and of developers mainly for the following reasons:
- MySQL can run on modest desktop systems with less strain on system resources. Because of the fast information retrieval of modest desktop systems and its modular design that speeds up information retrieval in large sites, this DBMS has become one of the most popular among both desktop-based small users and web administrators.
- It is easy to install, because it is small and fast.
- It provides a standard DBMS environment. Learning MySQL prepares you for moving to other DBMSs.
- It has strong, responsive, flexible, and open community support. There are conferences with lead developers of MySQL available for new ideas, and there are local MySQL groups in almost every major city. MySQL is open and free to use, so any skilled programmer can look at the program code, should that be needed to fix issues.
- MySQL offers a dual-license approach. You can use it to serve your internal data needs without paying a license fee. Or you can pay a license fee to create a product around it.
- While open-source, MySQL also has technical support to its users and developers.
- MySQL can be used easily as part of large software systems. Most major programming languages such as PHP, C, Perl, Ruby, Python, and Microsoft.Net have libraries of functions to write programs and interact directly with MySQL. It also supports ODBC (Open Database Connectivity) support. With the help of ODBC Interface Connector running under Windows, many programming languages such as Delphi and Visual Basic can talk to MySQL. Outside of Windows, it supports many other APIs and access methods like JDBC and ADO.Net for connecting to MySQL databases.
Let’s discuss some features which come with MySQL 5.6:
- Like other popular DBMSs, MySQL supports the client-server architecture. The client requests information or manipulation of data through SQL statements; the server responds to the client, executes the relevant SQL statement, manipulates the data in the database, and provides the requested information.
- It has many native storage engines such as InnoDB, MyISAM, Merge, Memory (heap), Federated, Archive, CSV, Blackhole, and NDB Cluster. Learn more about the storage engines used in MySQL here.
- MySQL Server is platform-independent and supports many operating systems including Linux, Windows, Apple Macintosh OS X, and Ubuntu.
- It is highly secure. Many experts around the world recommend MySQL as the safest and most reliable DBMS.
- For stored procedures, MySQL uses a procedural language that closely adheres to SQL/PSM (an ISO-standard SQL extension with a procedural language to use in stored procedures).
- It supports standard SQL elements like view, triggers, and stored procedures to administer large databases productively.
- Like in Oracle DBMS, transactions in MySQL are executed as one block. Also, MySQL supports foreign key constraints (fully supported for InnoDB tables).
- It now has a crash-safe, centralized data dictionary, in a more optimized format than the previous file-based metadata storage.
There are many MySQL GUI solutions available, each with different features. They include MySQL Workbench, phpMyAdmin, dbForge Tools for MySQL, and SQLite Online. Learn more about such tools here.
Many tools including Vertabelo and Navicat are available for database modelers to model their data for MySQL. Learn about data modeling tools compatible with MySQL here.
When we talk about MySQL, MariaDB is worth a mention. MariaDB is a fork of the MySQL database management system. The original author of both DBMSs is UIf Michael Widenius (nicknamed Monty; born in Finland), a founding member of the company MySQL AB and the CTO of the MariaDB Corporation AB.
MariaDB is an improved version of MySQL that comes with many powerful built-in features as well as with security and performance improvements not available in MySQL. The differences between these two DBMSs include:
- MariaDB has 12 new storage engines, more than in MySQL.
- MariaDB has a larger connection pool than in MySQL.
- MySQL supports data masking and dynamic columns, while MariaDB does not.
3. Microsoft SQL Server
Microsoft SQL Server (a.k.a. “SQL Server”) is one of the most popular RDBMSs developed by Microsoft Corporation. This DBMS is also a multi-model relational database management system (RDBMS). Its primary database model is the RDBMS, and the secondary models are the document store, the graph DBMS, and the spatial DBMS.
Many organizations around the world, including the American Red Cross (United States), Penguin Random House LLC (United States), and MSLGROUP (France), use this DBMS. It has become popular among users, administrators, and developers for the following reasons:
- It supports many transaction processing applications, analytics, and business intelligence in many different organizations.
- Microsoft SQL Server enables you to maintain your data in different tables with high security, integrity, and consistency.
- SQL Server optimizes data storage and maintains the ACID (atomicity, consistency, isolation, and durability) properties of transactions. It does so through key components such as Transact-SQL (T-SQL) to program queries and commands, SQL Server database engine to manage and process data, and the Tabular Data Stream protocol for the clients to connect to the servers.
- It provides a simple, cheaper, and less complex installation method to save you time.
- SQL Server has many optimized security features, including built-in data compression, data encryption, and access control pairing with permission management that is secure and efficient.
- It is easy to perform maintenance, training, backup, and recovery, and it has effective data management and data mining tools with disk partitioning.
Microsoft SQL Server Management Studio has a GUI solution to SQL Server users who like to manage their databases in a graphical environment.
Many tools such as Vertabelo, Lucidchart, Visual Paradigm, etc., support modeling SQL Server databases. Also, SQL Server supports many programming languages including C++, C#, Delphi, JavaScript (Node.js), PHP, and Visual Basic.
APIs and other access methods including ADO.Net, ODBC, JDBC, and OLE DB, are supported for connecting to SQL Server databases. SQL Server is compatible with Linux and Windows server operating systems.
4. PostgreSQL
PostgreSQL is a powerful, multi-model, and open-source object-relational database management system. Its primary database model is the RDBMS, and the document store and the spatial DBMS are the secondary models. PostgreSQL RDBMS uses and extends the SQL language, combining it with many features to enable storing and scaling more complex data workloads.
PostgreSQL has become popular among users, database administrators, and software developers for the following reasons:
- It has its own proven architecture.
- It provides a robust feature set with data integrity, reliability, and extensibility.
- It has a dedicated open-source community behind the software to deliver innovative solutions.
- It runs on all major operating systems including Windows, Linux, Unix, FreeBSD, HP-UX, OS X, and Solaris.
- This DBMS has been ACID compliant since 2001.
- It has powerful add-ons such as PostGIS geospatial database extender.
PostgreSQL supports SQL standards with slight changes in syntaxes and functions.
Many tools like Vertabelo, Lucidchart, and SqlDBM, among others, support database modeling for PostgreSQL. It supports programming languages including .Net, C, C++, Java, JavaScript (Node.js), and PHP. APIs and other methods like ADO.Net, JDBC, ODBC, and native C libraries support accessing PostgreSQL databases.
PostgreSQL is used by many major companies like Uber, Netflix, and Instagram.
5. MongoDB
MongoDB, developed by MongoDB, Inc., is one of the most popular source-available and cross-platform document-oriented database management systems. Its primary database model is the document store, while its secondary models are the spatial DBMS and the search engine. This DBMS is available as both a fully managed cloud service and for deployment on self-managed infrastructure.
It was designed as a solution for multiple technology demands of the modern apps:
- The document data model and MongoDB Query Language provide a faster way for developers to innovate and build transactional, operational, and analytical applications.
- A multi-cloud global network lets developers run their applications anywhere. It also provides the flexibility to move across private and public clouds based on specific requirements without changing a single line of code.
- MongoDB offers the MongoDB Atlas service in the public cloud, which makes its capabilities available on AWS, Azure, and GCP without any requirements to deploy, operate, or scale the software. MongoDB Atlas provides extended services such as MongoDB Atlas Data Lake, MongoDB Atlas Search, and MongoDB Realm.
Key customers of MongoDB include ADP, Adobe, AstraZeneca, and Barclays. Application scenarios include Internet of Things and time series (Jaguar Land Rover, Bosch), eCommerce and payment processing (Cisco, 7-Eleven), and analytics and AI (KPMG, Autotrader.com), just to name a few.
MongoDB has many licensing options for organizations of all sizes under different categories, such as cloud (database as a service) and on-premises (local MongoDB installation).
It supports programming languages such as ActionScript, C, C#, C++, Java, and JavaScript. Connecting to MongoDB databases uses a proprietary protocol based on JSON. Supported operating systems include Linux, OS X, Solaris, and Windows.
Let’s Recap the Popular DBMSs
There are four relational database management systems (Oracle, MySQL, Microsoft SQL Server, and PostgreSQL) and one non-relational database management system (MongoDB) on this list of most popular database management systems. They best match the needs of the world’s great organizations that use them. These DBMSs have become popular across the globe for various reasons, including cost-effectiveness, simplicity, ease of learning, licensing options, and supported platforms, APIs, and programming languages.
Database modeling is a critical step in the database system development life cycle. When you select a DBMS for a project, it is important to check the availability of compatible database modeling tools. Vertabelo is an online database modeling tool that supports many DBMSs, including all four relational database management systems mentioned in this article and a few more. Find out all of the DBMSs supported by Vertabelo here.