DB-EnginesExtremeDB: mitigate connectivity issues in a DBMSEnglish
Deutsch
Knowledge Base of Relational and NoSQL Database Management Systemsprovided by solid IT

DBMS > Apache Impala vs. Citus vs. PouchDB vs. SurrealDB

System Properties Comparison Apache Impala vs. Citus vs. PouchDB vs. SurrealDB

Please select another system to include it in the comparison.

Editorial information provided by DB-Engines
NameApache Impala  Xexclude from comparisonCitus  Xexclude from comparisonPouchDB  Xexclude from comparisonSurrealDB  Xexclude from comparison
DescriptionAnalytic DBMS for HadoopScalable hybrid operational and analytics RDBMS for big data use cases based on PostgreSQLJavaScript DBMS with an API inspired by CouchDBA fully ACID transactional, developer-friendly, multi-model DBMS
Primary database modelRelational DBMSRelational DBMSDocument storeDocument store
Graph DBMS
Secondary database modelsDocument storeDocument store
DB-Engines Ranking infomeasures the popularity of database management systemsranking trend
Trend Chart
Score13.77
Rank#40  Overall
#24  Relational DBMS
Score2.21
Rank#118  Overall
#56  Relational DBMS
Score2.28
Rank#115  Overall
#21  Document stores
Score0.86
Rank#203  Overall
#34  Document stores
#18  Graph DBMS
Websiteimpala.apache.orgwww.citusdata.compouchdb.comsurrealdb.com
Technical documentationimpala.apache.org/­impala-docs.htmldocs.citusdata.compouchdb.com/­guidessurrealdb.com/­docs
DeveloperApache Software Foundation infoApache top-level project, originally developed by ClouderaApache Software FoundationSurrealDB Ltd
Initial release2013201020122022
Current release4.1.0, June 20228.1, December 20187.1.1, June 2019v1.5.0, May 2024
License infoCommercial or Open SourceOpen Source infoApache Version 2Open Source infoAGPL, commercial license also availableOpen SourceOpen Source
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++CJavaScriptRust
Server operating systemsLinuxLinuxserver-less, requires a JavaScript environment (browser, Node.js)Linux
macOS
Windows
Data schemeyesyesschema-freeschema-free
Typing infopredefined data types such as float or dateyesyesnoyes
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.noyes infospecific XML type available, but no XML query functionalityno
Secondary indexesyesyesyes infovia views
SQL infoSupport of SQLSQL-like DML and DDL statementsyes infostandard, with numerous extensionsnoSQL-like query language
APIs and other access methodsJDBC
ODBC
ADO.NET
JDBC
native C library
ODBC
streaming API for large objects
HTTP REST infoonly for PouchDB Server
JavaScript API
GraphQL
RESTful HTTP API
WebSocket
Supported programming languagesAll languages supporting JDBC/ODBC.Net
C
C++
Delphi
Java
JavaScript (Node.js)
Perl
PHP
Python
Tcl
JavaScriptDeno
Go
JavaScript (Node.js)
Rust
Server-side scripts infoStored proceduresyes infouser defined functions and integration of map-reduceuser defined functions inforealized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc.View functions in JavaScript
Triggersnoyesyes
Partitioning methods infoMethods for storing different data on different nodesShardingShardingSharding infowith a proxy-based framework, named couchdb-lounge
Replication methods infoMethods for redundantly storing data on multiple nodesselectable replication factorSource-replica replication infoother methods possible by using 3rd party extensionsMulti-source replication infoalso with CouchDB databases
Source-replica replication infoalso with CouchDB databases
MapReduce infoOffers an API for user-defined Map/Reduce methodsyes infoquery execution via MapReducenoyesno
Consistency concepts infoMethods to ensure consistency in a distributed systemEventual ConsistencyImmediate ConsistencyEventual Consistency
Foreign keys infoReferential integritynoyesno
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of datanoACIDnoACID
Concurrency infoSupport for concurrent manipulation of datayesyesyes
Durability infoSupport for making data persistentyesyesyes infoby using IndexedDB, WebSQL or LevelDB as backendyes
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.nonoyes
User concepts infoAccess controlAccess rights for users, groups and roles infobased on Apache Sentry and Kerberosfine grained access rights according to SQL-standardnoyes, based on authentication and database rules

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
Apache ImpalaCitusPouchDBSurrealDB
DB-Engines blog posts

New kids on the block: database management systems implemented in JavaScript
1 December 2014, Matthias Gelbmann

show all

Recent citations in the news

Apache Impala 4 Supports Operator Multi-Threading
29 July 2021, iProgrammer

Cloudera Bringing Impala to AWS Cloud
28 November 2017, Datanami

Apache Impala becomes Top-Level Project
28 November 2017, SDTimes.com

Apache Doris just 'graduated': Why care about this SQL data warehouse
24 June 2022, InfoWorld

Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop
12 March 2017, Uber

provided by Google News

Ubicloud wants to build an open source alternative to AWS
5 March 2024, TechCrunch

Ubicloud reels in $16M for its open-source cloud platform
5 March 2024, SiliconANGLE News

Microsoft acquires Citus Data, re-affirming its commitment to Open Source and accelerating Azure PostgreSQL ...
24 January 2019, Microsoft

Microsoft Benchmarks Distributed PostgreSQL DBs
10 July 2023, Datanami

Distributed PostgreSQL Benchmarks: Azure Cosmos DB, CockroachDB, and YugabyteDB
8 July 2023, InfoQ.com

provided by Google News

Building an Offline First App with PouchDB — SitePoint
10 March 2014, SitePoint

Getting Started with PouchDB Client-Side JavaScript Database — SitePoint
7 September 2016, SitePoint

3 Reasons To Think Offline First
22 March 2017, ibm.com

Create Offline Web Apps Using Service Workers & PouchDB — SitePoint
7 March 2017, SitePoint

Offline-first web and mobile apps: Top frameworks and components
22 January 2019, TechBeacon

provided by Google News

SD Times Open-Source Project of the Week: SurrealDB
10 May 2024, SDTimes.com

Meet Tobie Morgan Hitchcock, CEO & Co-Founder Of SurrealDB
25 April 2024, TechRound

Cloud, privacy and AI: Trends defining the future of data and databases
27 September 2023, Sifted

SurrealDB raises $6M for its database-as-a-service offering
4 January 2023, TechCrunch

Introducing SurrealDB: A Quantum Leap in Database Technology
11 September 2023, TechRound

provided by Google News



Share this page

Featured Products

Milvus logo

Vector database designed for GenAI, fully equipped for enterprise implementation.
Try Managed Milvus for Free

RaimaDB logo

RaimaDB, embedded database for mission-critical applications. When performance, footprint and reliability matters.
Try RaimaDB for free.

Datastax Astra logo

Bring all your data to Generative AI applications with vector search enabled by the most scalable
vector database available.
Try for Free

Neo4j logo

See for yourself how a graph database can make your life easier.
Use Neo4j online for free.

AllegroGraph logo

Graph Database Leader for AI Knowledge Graph Applications - The Most Secure Graph Database Available.
Free Download

Present your product here