All the business and personal data we use on a daily basis is in a database management system or a storage array somewhere in the world. These can range from a thumb drive or smartphone to a data center array all the way to an unlimited cloud storage system.
How does one go about determining which DBMS is the right one for your enterprise? A significant factor in that decision will be the requirements of all your enterprise applications. Do you need data center servers to run the database yourself, or should you subscribe to a public or private cloud service in Oracle, Dell EMC, AWS, Azure, Google or another cloud provider?
The answer is that it all depends on what type of application use cases your company requires. if you’re a regulated industry in the financial services, health care or defense sectors, for example, you likely will need hybrid systems. If you’re a small business, perhaps all you need is a simple cloud service. Most of the companies noted in this article offer both options.
eWEEK has been researching and reporting on databases and their management systems since the beginning of the publication as PC Week in the late 1980s, when IBM’s DB2, Microsoft’s SQL Server and Sybase were the big players in the business. In this article, we have sought out and evaluated 10 of the best agile database management systems and compiled them into this article. We discuss both proprietary and open source database systems.
According to Statistica, as of December 2020, 79.6 percent of the database management systems in operation had open source licenses. Over the years, open source DBMSs have become more and more popular.
Best Database Management Software Vendors
You’ll recognize some familiar names—systems that have stood the test of time—and you may find some new ones you didn’t know about previously. Here are eWEEK’s Top 10 Database Management Systems, updated from our last examination in May 2019. Here’s a recent analysis of the market by Statistica, with other input from Gartner Research, Forrester Research and eWEEK reporting.
Oracle RDMS
While Oracle’s frontline database system has been top of the line for a long time, the fact is that The Company That Larry Built is feverishly pushing its clients–new and old–toward their DB services in the cloud. On premises or not, the same high-end functionality is made available in the Oracle RDMS along with the same ultra-tight security that the various U.S. government three-letter agencies have sought to protect their often highly classified data loads.
Big, powerful and relatively expensive are terms often affiliated with Oracle’s enterprise databases, and you generally get what you pay for. Oracle has dominated this category for more than three decades, and the company has a 43-year history in the business. Oracle has engineered its database hardware and software to work together—in the cloud and in the data center. The company contends that this eliminates complexity and simplifies IT in general. It’s generally correct, but users must be cautioned that they can get locked into a single-vendor system that can be difficult to change later on, should use cases and circumstances evolve.
As a company that pooh-poohed cloud systems early on, it is now an aggressive seller of cloud-based DBMS systems to go with its Exadata data center servers. Times have indeed changed, and Oracle has indeed changed with the times.
For customers needing modular solutions, Oracle’s open architecture and multiple operating system options provide unmatched benefits from best-of-breed products in every layer of the stack. This allows customers to build the most optimized infrastructure possible for their enterprise.
Key values/differentiators:
- Oracle SQL’s Unix-based database management systems, in person and in the cloud, offer the flexibility of choosing to run an enterprise database inside any operating system. Dedicated languages are only compatible with operating systems from the same manufacturer. For example, you can only run Microsoft SQL Server on a Windows-based machine. In comparison, you can install Oracle SQL on a Unix server and benefit from the reliability of Unix while keeping the standardization of SQL.
- Unix is less vulnerable to many common computer viruses, which keeps information secure.
- Oracle SQL is also backward-compatible, so users have the option of upgrading in the future without losing any data.
- Oracle DBMS gets updates once or twice per year, and they are sent out iteratively on a regular basis.
Who uses it: Midrange to large enterprises
How it works: cloud deployments, physical on-prem services
Also see: Best Data Visualization Tools
Microsoft SQL Server
This is an industry-standard database management system that began in 1989 with the Microsoft SQL Server 1.0, a 16-bit server for the IBM OS/2 operating system. It has been updated and improved dozens of times since then. Microsoft SQL Server has been redeveloped by Microsoft to work optimally with its own Windows operating system. Similar to other database management systems, its primary function is storing and retrieving data as requested by other software applications–which may run either on the same data center or on another computer across a network, including the internet. In fact, nearly half of Microsoft SQL Server instances are deployed in Microsoft’s Azure cloud.
Key values/differentiators:
- Here is a list of new features in SQL Server as of mid-2020.
- Microsoft has developed at least a dozen editions of Microsoft SQL Server, aimed at different audiences and for workloads ranging from small single-machine applications to large Internet-facing applications with many concurrent users. Thus it is by far the most versatile deployment of MySQL available.
- SQL Server Enterprise Edition: This includes both the core database engine and add-on services, with a range of tools for creating and managing a SQL Server cluster. It can manage databases as large as 524 petabytes and address 12 terabytes of memory and supports 640 logical processors (CPU cores).
- Standard Edition: SQL Server Standard edition includes the core database engine, along with the stand-alone services. It differs from Enterprise edition in that it supports fewer active instances (number of nodes in a cluster) and does not include some high-availability functions such as hot-add memory (allowing memory to be added while the server is still running), and parallel indexes. Web SQL Server Web Edition is a low-TCO option for Web hosting.
- Business Intelligence: Introduced in SQL Server 2012 and focusing on Self Service and Corporate Business Intelligence. It includes the Standard Edition capabilities and Business Intelligence tools: PowerPivot, Power View, the BI Semantic Model, Master Data Services, Data Quality Services and xVelocity in-memory analytics.
- SQL Server gets major updates once or twice per year, with a new version will be released later this year that will include intelligent query processing, big data clusters and more features. Thanks to @SQLPedro for this info.
Who uses it: SMBs, midrange, edge servers, large enterprises
How it works: subscription cloud services and physical on-prem services
MySQL by Oracle
Oracle-owned MySQL’s name is a combination of “My,” the name of co-founder Michael Widenius’s daughter, and “SQL,” the abbreviation for Structured Query Language. This is a widely utilized open-source relational database management system that is a cost-saving and effective DBMS but requires dedicated knowledge of database systems to install and maintain. MySQL is free and open-source software under the terms of the GNU General Public License and is also available under a variety of proprietary licenses. MySQL was created and sponsored by the Swedish company MySQL AB, which was bought by Sun Microsystems. In 2010, when Oracle acquired Sun, Widenius forked the open-source MySQL project to create MariaDB.
Key values/differentiators:
- MySQL long has received positive reviews, and reviewers claim it performs extremely well in the average case and that the developer interfaces are there, and the documentation (not to mention feedback in the real world via Web sites and the like) is very, very good.
- It has also been tested to be a fast, stable and true multi-user, multi-threaded SQL database server.
- Its open-source core and properties enable any amount of configuration as required by use cases.
- Oracle has a large and expert corps of support personnel to work with its MySQL customers.
- MySQL works in most enterprise servers—they do not have to be Oracle servers.
- It has an impressive list of users. MySQL is used by many database-driven web applications, including Drupal, Joomla, phpBB and WordPress. MySQL is also used by many popular websites, including Facebook,Twitter, Flickr and YouTube.
- MySQL gets updates several times per year from its team at Oracle, and they are sent out iteratively on a regular basis.
Who uses it: SMBs to large enterprises
How it works: subscription cloud services, physical on-prem services
IBM Db2
IBM Db2, created in 1983, is an industry standard database management system with a rock-solid reputation for reliability. Db2 represents an entire lineup of data management systems, including servers made available in the cloud and on premises, originally developed by IBM in the early 1980s. They support the relational Db model, but in recent years, some products have been extended to support object-relational features and non-relational structures, such as JSON and XML.
IBM’s long-range goal for Db2 is to become the AI database that will power cognitive applications. IBM Hybrid Data Management (HDM) that is built on the Db2 Common SQL Engine provides a platform to manage all data types across all sources and destinations.
Due to the software’s high reliability, resilience and security, thousands of organizations use IBM Hybrid Data Management and Db2—a market standard in online transaction processing (OLTP), online analytical processing (OLAP) and big data segments—to run mission-critical applications. IBM intends Db2, a core component of the hybrid data management platform, to enable users to accelerate their AI application development while automating some data management.
IBM Db2 now has drivers for popular data science languages and frameworks including Go, Ruby, Python, PHP, Java, Node.js, Sequelize and Jupyter notebooks, to enable developers and data scientists to build AI applications with Db2 data for the first time. These drivers are available now at GitHub.
Key values/differentiators:
- Here is an update as of November 2020 for Db2: Version 11.5.5.0 is now available with improvements that include an upgraded Db2 Warehouse engine.
- An important feature of Db2 systems is error handling. The SQL communications area (SQLCA) structure was once used exclusively within a Db2 program to return error information to the application program after every SQL statement was executed. The primary, but not singularly useful, error diagnostic is held in the field SQLCODE within the SQLCA block.
- IBM’s trademark, with a reputation built over decades of product development and services, means a great deal in all data center system software and equipment.
- DB2 gets major updates once or twice per year with incremental fixes on as as-needed basis.
Who uses it: SMBs to large enterprises
How it works: cloud service, physical on-prem services
Redis Labs
Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. The Redis In-Memory Database Management System is a second-generation core open source system designed for speed and efficiency. Redis Labs, No. 1 in the market for commercial Redis providers, powers applications with its faster-than-average enterprise-class Redis DBMS. Its Redis Labs Enterprise Cluster and Redis Cloud solutions are used by thousands of developers and enterprise customers for high performance, high scalability, true high availability and best-in-class expertise and support use cases. These include real-time analytics, fast high-volume transactions, social app functionality, application job management and caching.
Key values/differentiators:
- Redis is considered a first-class database for the following use cases: analytics, big data, cloud data services, enterprise software, information technology, open source, software as a service.
- Redis Labs is the main contributor to Redis, which has been benchmarked as the fastest database available in 2019.
- Redis has also ranked the No. 1 growing database in popularity among developers and No. 12 among all developer tools and services.
- Redis gets major updates on a regular basis, sometimes once per week.
Who uses it: Midrange to large enterprises
How it works: cloud service only
Apache Cassandra
Cassandra originally was developed at Facebook to power its inbox search feature. Now it has been developed into one of the leading in-memory open source database management systems in the world. It is a free and open-source, distributed, wide-column store, NoSQL database management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure. Cassandra offers robust support for clusters that span multiple data centers, with asynchronous masterless replication allowing low-latency operations for all clients.
The most recent version 3.4.5; details are here.
Key values/differentiators:
- Scalability: Designed to have read and write throughput both increase linearly as new machines are added, with the aim of no downtime or interruption to applications.
- Fault-tolerant: Data is automatically replicated to multiple nodes for fault-tolerance. Replication across multiple data centers is supported. Failed nodes can be replaced with no downtime.
- Every node in the cluster has the same role. There is no single point of failure. Data is distributed across the cluster (so each node contains different data), but there is no master as every node can service any request.
- Supports replication and multi data center replication: Replication strategies are configurable. Cassandra is designed as a distributed system, for deployment of large numbers of nodes across multiple data centers. Key features of Cassandra’s distributed architecture are specifically tailored for multiple-data center deployment, for redundancy, for failover and disaster recovery.
- Tunable consistency: Cassandra is typically classified as an AP system, meaning that availability and partition tolerance are generally considered to be more important than consistency in Cassandra, Writes and reads offer a tunable level of consistency, all the way from “writes never fail” to “block for all replicas to be readable,” with the quorum level in the middle.
- Cassandra gets major updates several times per year.
Who uses it: Midrange to large enterprises
How it works: cloud service only
PostGres SQL
PostgreSQL is an object-relational database management system with an emphasis on extensibility and standards-compliance. It can handle workloads ranging from single-machine applications to Web services or data warehousing with many concurrent users. PostgreSQL is developed by the PostgreSQL Global Development Group, a diverse group of many companies and individual contributors. It is free and open-source software released under a permissive software license.
Here are details for the latest revision, v9.1, as of November 2020.
Key values/differentiators:
- PostgreSQL is cross-platform and runs on many operating systems including Linux, FreeBSD, Solaris, and Microsoft Windows. It can handle workloads ranging from small single-machine applications to large internet-facing applications with many concurrent users. Recent versions also provide replication of the database itself for security and scalability.
- PostgreSQL supports standards such as ANSI SQL and SQL/MED and yet is highly extensible with support for over 12 procedural languages, GIN and GIST Indexes, Spatial data support, and multiple NoSQL-similar features for document or key-value based applications.
- PostgreSQL is ACID-compliant and transactional. It offers support for RDBMS features such as updatable and materialized views, triggers, foreign keys; functions and stored procedures.
- PostgreSQL gets updates periodically during the year.
Who uses it: SMBs, midrange, edge servers, large enterprises
How it works: subscription cloud services, physical on-prem services
MongoDB
MongoDB is an open source, cross-platform document-oriented database management system. Classified as a NoSQL database management system, MongoDB uses JSON-like documents with schemata. MongoDB is developed by MongoDB Inc. and licensed under the Server Side Public License (SSPL). As an open source product, pricing is a lot more reasonable for smaller companies, as opposed to the full-service offerings of larger, more established DB vendors.
Key values/differentiators:
- MongoDB can run over multiple servers, balancing the load or duplicating data to keep the system up and running in case of hardware failure.
- MongoDB provides high availability with replica sets, which consist of two or more copies of the data. Each replica set member may act in the role of primary or secondary replica at any time. All writes and reads are done on the primary replica by default.
- Secondary replicas maintain a copy of the data of the primary using built-in replication. When a primary replica fails, the replica set automatically conducts an election process to determine which secondary should become the primary. Secondaries can optionally serve read operations, but that data is only eventually consistent by default.
- MongoDB scales horizontally using sharding (a shard is a master with one or more replicas).
- MongoDB gets updates several times per year.
Who uses it: midrange to large enterprises
How it works: subscription cloud services, physical on-prem services
Microsoft Access
Like other Microsoft Office applications, Access is supported by Visual Basic for Applications (VBA), an object-based programming language that can reference a variety of objects including DAO (Data Access Objects), ActiveX Data Objects, and many other ActiveX components. Visual objects used in forms and reports expose their methods and properties in the VBA programming environment, and VBA code modules may declare and call Windows operating system operations.
Microsoft Access is a second-generation database management system (DBMS) that combines the relational Microsoft Jet Database Engine with a graphical user interface and its own set of software-development tools. It is a member of the Microsoft Office suite of applications, included in the Professional and higher editions or sold separately. Microsoft Access stores data in its own format based on the Access Jet Database Engine. It can also import or link directly to data stored in other applications and databases.
Key values/differentiators:
- Access tables support a variety of standard field types, indices, and referential integrity including cascading updates and deletes. Access also includes a query interface, forms to display and enter data, and reports for printing. The underlying Jet database, which contains these objects, is multi-user and handles record-locking.
- In addition to serving as its own database storage file, Microsoft Access also may be used as the front end of a program while other products act as the backend tables, such as Microsoft SQL Server and non-Microsoft products such as Oracle and Sybase. Multiple backend sources can be used by a Microsoft Access Jet Database (ACCDB and MDB formats).
- Similarly, some applications such as Visual Basic, ASP.NET or Visual Studio .NET will use the Microsoft Access database format for its tables and queries. Microsoft Access may also be part of a more complex solution, where it may be integrated with other technologies such as Microsoft Excel, Microsoft Outlook, Microsoft Word, Microsoft PowerPoint and ActiveX controls.
- Microsoft give Access gets major updates once or twice per year with incremental fixes on as as-needed basis. No major updates expected this year.
Who uses it: Midrange to large enterprises
How it works: cloud service, physical on-prem services
Honorable mentions: Sybase by SAP (SAP Adaptive Server), SAP HANA, Quest, CA, BMC