DB-EnginesDo you need a hard real time database?English
Deutsch
Knowledge Base of Relational and NoSQL Database Management Systemsprovided by solid IT

DBMS > FoundationDB vs. HyperSQL vs. KeyDB vs. Solr

System Properties Comparison FoundationDB vs. HyperSQL vs. KeyDB vs. Solr

Please select another system to include it in the comparison.

Editorial information provided by DB-Engines
NameFoundationDB  Xexclude from comparisonHyperSQL infoalso known as HSQLDB  Xexclude from comparisonKeyDB  Xexclude from comparisonSolr  Xexclude from comparison
Created as commercial project in 2013, FoundationDB has been acquired by Apple in March 2015 and was withdrawn from the market. As a consequence, the product was removed from the DB-Engines ranking. In April 2018, Apple open-sourced FoundationDB and it therefore reappears in the ranking.
DescriptionOrdered key-value store. Core features are complimented by layers.Multithreaded, transactional RDBMS written in Java infoalso known as HSQLDBAn ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocolsA widely used distributed, scalable search engine based on Apache Lucene
Primary database modelDocument store infosupported via specific layer
Key-value store
Relational DBMS infosupported via specific SQL-layer
Relational DBMSKey-value storeSearch engine
Secondary database modelsSpatial DBMS
DB-Engines Ranking infomeasures the popularity of database management systemsranking trend
Trend Chart
Score1.48
Rank#142  Overall
#24  Document stores
#27  Key-value stores
#70  Relational DBMS
Score5.46
Rank#76  Overall
#41  Relational DBMS
Score0.34
Rank#268  Overall
#40  Key-value stores
Score56.61
Rank#20  Overall
#3  Search engines
Websitewww.foundationdb.orghsqldb.orggithub.com/­JohnSully/­KeyDB
keydb.dev
lucene.apache.org/­solr
Technical documentationapple.github.io/­foundationdbhsqldb.org/­web/­hsqlDocsFrame.htmldocs.keydb.devlucene.apache.org/­solr/­resources.html
DeveloperFoundationDBEQ Alpha Technology Ltd.Apache Software Foundation
Initial release2013200120192006
Current release6.2.28, November 20202.6.1, October 20219.0.0, May 2022
License infoCommercial or Open SourceOpen Source infoApache 2.0Open Source infobased on BSD licenseOpen Source infoBSD-3Open Source infoApache Version 2
Cloud-based only infoOnly available as a cloud servicenononono
DBaaS offerings (sponsored links) infoDatabase as a Service

Providers of DBaaS offerings, please contact us to be listed.
Implementation languageC++JavaC++Java
Server operating systemsLinux
OS X
Windows
All OS with a Java VM infoEmbedded (into Java applications) and Client-Server operating modesLinuxAll OS with a Java VM inforuns as a servlet in servlet container (e.g. Tomcat, Jetty is included)
Data schemeschema-free infosome layers support schemasyesschema-freeyes infoDynamic Fields enables on-the-fly addition of new fields
Typing infopredefined data types such as float or dateno infosome layers support typingyespartial infoSupported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexesyes infosupports customizable data types and automatic typing
XML support infoSome form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT.nonoyes
Secondary indexesnoyesyes infoby using the Redis Search moduleyes infoAll search fields are automatically indexed
SQL infoSupport of SQLsupported in specific SQL layer onlyyesnoSolr Parallel SQL Interface
APIs and other access methodsHTTP API infoJDBC via HTTP
JDBC
ODBC
Proprietary protocol infoRESP - REdis Serialization ProtocoJava API
RESTful HTTP/JSON API
Supported programming languages.Net
C
C++
Go
Java
JavaScript infoNode.js
PHP
Python
Ruby
Swift
All languages supporting JDBC/ODBC
Java
C
C#
C++
Clojure
Crystal
D
Dart
Elixir
Erlang
Fancy
Go
Haskell
Haxe
Java
JavaScript (Node.js)
Lisp
Lua
MatLab
Objective-C
OCaml
Pascal
Perl
PHP
Prolog
Pure Data
Python
R
Rebol
Ruby
Rust
Scala
Scheme
Smalltalk
Swift
Tcl
Visual Basic
.Net
Erlang
Java
JavaScript
any language that supports sockets and either XML or JSON
Perl
PHP
Python
Ruby
Scala
Server-side scripts infoStored proceduresin SQL-layer onlyJava, SQLLuaJava plugins
Triggersnoyesnoyes infoUser configurable commands triggered on index changes
Partitioning methods infoMethods for storing different data on different nodesShardingnoneShardingSharding
Replication methods infoMethods for redundantly storing data on multiple nodesyesnoneMulti-source replication
Source-replica replication
yes
MapReduce infoOffers an API for user-defined Map/Reduce methodsnononospark-solr: github.com/­lucidworks/­spark-solr and streaming expressions to reduce
Consistency concepts infoMethods to ensure consistency in a distributed systemLinearizable consistencyImmediate ConsistencyEventual Consistency
Strong eventual consistency with CRDTs
Eventual Consistency
Foreign keys infoReferential integrityin SQL-layer onlyyesnono
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of dataACIDACIDOptimistic locking, atomic execution of commands blocks and scriptsoptimistic locking
Concurrency infoSupport for concurrent manipulation of datayesyesyesyes
Durability infoSupport for making data persistentyesyesyes infoConfigurable mechanisms for persistency via snapshots and/or operations logsyes
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.yesyesyes
User concepts infoAccess controlnofine grained access rights according to SQL-standardsimple password-based access control and ACLyes

More information provided by the system vendor

We invite representatives of system vendors to contact us for updating and extending the system information,
and for displaying vendor-provided information such as key customers, competitive advantages and market metrics.

Related products and services

We invite representatives of vendors of related products to contact us for presenting information about their offerings here.

More resources
FoundationDBHyperSQL infoalso known as HSQLDBKeyDBSolr
DB-Engines blog posts