DBMS > AlaSQL vs. Apache IoTDB vs. OceanBase vs. PouchDB vs. Riak TS
System Properties Comparison AlaSQL vs. Apache IoTDB vs. OceanBase vs. PouchDB vs. Riak TS
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | AlaSQL Xexclude from comparison | Apache IoTDB Xexclude from comparison | OceanBase Xexclude from comparison | PouchDB Xexclude from comparison | Riak TS Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | JavaScript DBMS library | An IoT native database with high performance for data management and analysis, deployable on the edge and the cloud and integrated with Hadoop, Spark and Flink | A distributed, high available RDBMS compatible with Oracle and MySQL | JavaScript DBMS with an API inspired by CouchDB | Riak TS is a distributed NoSQL database optimized for time series data and based on Riak KV | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Time Series DBMS | Relational DBMS | Document store | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | alasql.org | iotdb.apache.org | en.oceanbase.com | pouchdb.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | github.com/AlaSQL/alasql | iotdb.apache.org/UserGuide/Master/QuickStart/QuickStart.html | en.oceanbase.com/docs/oceanbase-database | pouchdb.com/guides | www.tiot.jp/riak-docs/riak/ts/latest | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Andrey Gershun & Mathias R. Wulff | Apache Software Foundation | OceanBase previously Alibaba and Ant Group | Apache Software Foundation | Open Source, formerly Basho Technologies | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2018 | 2010 | 2012 | 2015 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.1.0, April 2023 | 4.3.0, April 2024 | 7.1.1, June 2019 | 3.0.0, September 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source MIT-License | Open Source Apache Version 2.0 | Open Source Commercial license available | Open Source | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | JavaScript | Java | C++ | JavaScript | Erlang | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less, requires a JavaScript environment (browser, Node.js) | All OS with a Java VM (>= 1.8) | Linux | server-less, requires a JavaScript environment (browser, Node.js) | Linux OS X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | yes via views | restricted | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | Close to SQL99, but no user access control, stored procedures and host language bindings. | SQL-like query language | yes | no | yes, limited | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JavaScript API | JDBC Native API | JDBC ODBC ODP.NET Oracle Call Interface (OCI) Proprietary native API Table API | HTTP REST only for PouchDB Server JavaScript API | HTTP API Native Erlang Interface | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | JavaScript | C C# C++ Go Java Python Scala | Ada in MySQL-compatible model C in Oracle- and MySQL- compatible models C++ in Oracle- and MySQL- compatible models D in MySQL-compatible model Delphi in MySQL-compatible model Eiffel in MySQL-compatible model Erlang in MySQL-compatible model Haskell in MySQL-compatible model Java in Oracle- and MySQL- compatible models JavaScript (Node.js) in MySQL-compatible model Objective-C in MySQL-compatible model OCaml in MySQL-compatible model Perl in MySQL-compatible model PHP in MySQL-compatible model Python in MySQL-compatible model Ruby in MySQL-compatible model Scheme in MySQL-compatible model Tcl in MySQL-compatible model | JavaScript | C unofficial client library C# C++ unofficial client library Clojure unofficial client library Dart unofficial client library Erlang Go unofficial client library Groovy unofficial client library Haskell unofficial client library Java JavaScript unofficial client library Lisp unofficial client library Perl unofficial client library PHP Python Ruby Scala unofficial client library Smalltalk unofficial client library | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes | PL/SQL in oracle-compatible mode, MySQL Stored Procedure in mysql-compatible mode | View functions in JavaScript | Erlang | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes | yes | yes | yes pre-commit hooks and post-commit hooks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | horizontal partitioning (by time range) + vertical partitioning (by deviceId) | horizontal partitioning (by hash, key, range, range columns, list, and list columns) | Sharding with a proxy-based framework, named couchdb-lounge | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | selectable replication methods; using Raft/IoTConsensus algorithm to ensure strong/eventual data consistency among multiple replicas | Multi-source replication using Paxos | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | selectable replication factor | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | Integration with Hadoop and Spark | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Eventual Consistency Strong Consistency with Raft | Immediate Consistency | Eventual Consistency | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | yes | no | no links between datasets can be stored | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes only for local storage and DOM-storage | no | ACID | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes by using IndexedDB, SQL.JS or proprietary FileStorage | yes | yes | yes by using IndexedDB, WebSQL or LevelDB as backend | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | yes | Access rights for users, groups and roles according to SQL-standard | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AlaSQL | Apache IoTDB | OceanBase | PouchDB | Riak TS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | HarperDB - How and Why We Built It From The Ground Up on NodeJS Multi faceted data exploration in the browser using Leaflet and amCharts provided by Google News | AMD Zen 5 Not Affected By Inception/SRSO, mitigations=off Yields No Benefit On Ryzen 9000 Series TsFile: A Standard Format for IoT Time Series Data AMD EPYC 8534P / EPYC 8534PN Benchmarks - Siena Delivers Incredible Value & Energy Efficiency For Linux Servers Review Apache Promotes IoT Database Project IoTDB Provides Data Management for Industrial Edge IT provided by Google News | Fintech giant Ant Group spins off database firm as Alibaba affiliates take stake Meet the Database Built for Modern-Day Pressures (And Your AI Dreams Too) OceanBase Inks Agreement with NTU Singapore in Database Optimization and Green Computing Advancements OceanBase Cloud Database Will Be Available on Google Cloud Marketplace OceanBase announces its listing on Google Cloud Marketplace, expanding cloud database services to 80 availability zones worldwide provided by Google News | Getting Started with PouchDB Client-Side JavaScript Database Create Offline Web Apps Using Service Workers & PouchDB Building an Offline First App with PouchDB provided by Google News | Is Riak A Good NoSQL Database Option For Enterprises? Best open source databases for IoT applications provided by Google News |
Share this page