A database is a collection of records or data that is stored in a computer system. Database tools and applications are designed to help you store and manage data in a controlled and structured manner. A database is a vital system for any organisation that stores mission critical information. The continual failure of a company’s database system will inevitably lead to the demise of the organisation; companies cannot function without a fully working database system.
There are a number of different types of database. The most popular choice in storing data such as personal information, financial records, and medical records is the relational database management system. This type of system makes use of common ‘keys’ to tie related information together with data being manipulated with the SQL data definition and query language. SQL has many strengths for querying data. However, there are some disadvantages inherent in SQL. For example, SQL does not scale horizontally particularly well.
There are other types of databases available in situations where relational databases are not well suited. Document-oriented databases are particular strong in situations where horizontal scalability is required. As your database grows, additional servers or resources from the cloud can be added thereby avoiding the need to use expensive supercomputers.
Document-based databases do not store data in tables with uniform sized fields for each record. Instead, each record is stored as a document without the need to define in advance the schema of the data. This means that any number of fields of any length can be added to a document. JSON (JavaScript Object Notation) objects are frequently used in document-oriented databases. This type of database operates on something similar to distributed hash tables.
There is a good selection of Linux document-oriented databases that are available under an open source license. This article selects our personal pick of databases which can offer better performance in your application as well as quicker development time. Here’s our verdict. All the software is free and open source. We allow Couchbase to be included as while its time-limited license is not open source, it converts back to an open source license after 4 years.
Here’s our verdict captured in a legendary LinuxLinks-style ratings chart.

Click the links in the table below to learn more about each database.
| Document-Oriented Databases | |
|---|---|
| SurrealDB | Scalable, distributed, collaborative, document-graph database |
| Couchbase | Distributed key-value database management system |
| CouchDB | Scalable, fault-tolerant, and schema-free written in Erlang |
| ArangoDB | Native multi-model database |
| eXist-db | Database management system entirely built on XML technology |
| RethinkDB | Scalable database built for realtime applications |
| BaseX | XML database engine |
| OrientDB | Document Database supporting ACID Transactions, SQL and Native Queries |
| Aerospike | Key-Value Store and high performance real-time NoSQL (flex-schema) database |
| RavenDB | Fully-transactional NoSQL ACID database |
| FerretDB | Database proxy that offers an open-source alternative to MongoDB |
| DocumentDB | MongoDB-compatible document database engine |
| Jackrabbit | Open-source content repository for Java |
| TerminusDB | Knowledge graph and document store |
| Kinto | Minimalist JSON storage service |
| CrateDB | Distributed SQL database management |
This article has been updated to reflect the changes outlined in our recent announcement.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Know a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |


Hi, thanks for the article. You forgot the SurrealDB link: is that correct?
I didn’t forget the link. For some reason, a stale copy of the table is being shown for this page. I am investigating.
UPDATE: It should be fixed now. Thanks for the spot.