DBMS > CouchDB vs. Firebase Realtime Database vs. KeyDB vs. PouchDB vs. Titan
Vergleich der Systemeigenschaften CouchDB vs. Firebase Realtime Database vs. KeyDB vs. PouchDB vs. Titan
Redaktionelle Informationen bereitgestellt von DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CouchDB steht für "Cluster Of Unreliable Commodity Hardware" Xaus Vergleich ausschliessen | Firebase Realtime Database Xaus Vergleich ausschliessen | KeyDB Xaus Vergleich ausschliessen | PouchDB Xaus Vergleich ausschliessen | Titan Xaus Vergleich ausschliessen | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Titan has been decommisioned after the takeover by Datastax. It will be removed from the DB-Engines ranking. A fork has been open-sourced as JanusGraph. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kurzbeschreibung | Ein JSON - Document Store inspiriert durch Lotus Notes der von Server-Clustern bis Mobile Phones skaliert | Cloud-hosted realtime document store. iOS, Android, and JavaScript clients share one Realtime Database instance and automatically receive updates with the newest data. | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | JavaScript DBMS mit einem von CouchDB inspirierten API | Titan ist ein Graph DBMS optimiert für verteilte Clusters. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primäres Datenbankmodell | Document Store | Document Store | Key-Value Store | Document Store | Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sekundäre Datenbankmodelle | Spatial DBMS using the Geocouch extension | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | couchdb.apache.org | firebase.google.com/products/realtime-database | github.com/Snapchat/KeyDB keydb.dev | pouchdb.com | github.com/thinkaurelius/titan | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technische Dokumentation | docs.couchdb.org/en/stable | firebase.google.com/docs/database | docs.keydb.dev | pouchdb.com/guides | github.com/thinkaurelius/titan/wiki | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Entwickler | Apache Software Foundation Apache Top-Level Projekt, ursprünglich entwickelt von Damien Katz, ehemaliger Lotus Notes Entwickler | Google acquired by Google 2014 | EQ Alpha Technology Ltd. | Apache Software Foundation | Aurelius, owned by DataStax | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Erscheinungsjahr | 2005 | 2012 | 2019 | 2012 | 2012 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Aktuelle Version | 3.3.3, Dezember 2023 | 7.1.1, Juni 2019 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lizenz Commercial or Open Source | Open Source Apache Version 2 | kommerziell | Open Source BSD-3 | Open Source | Open Source Apache Lizenz, Version 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ausschließlich ein Cloud-Service Nur als Cloud-Service verfügbar | nein | ja | nein | nein | nein | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS Angebote (gesponserte Links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementierungssprache | Erlang | C++ | JavaScript | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server Betriebssysteme | Android BSD Linux OS X Solaris Windows | gehostet | Linux | Serverlos, benötigt eine JavaScript Umgebung (Browser, Node.js) | Linux OS X Unix Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datenschema | schemafrei | schemafrei | schemafrei | schemafrei | ja | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typisierung vordefinierte Datentypen, z.B. float oder date | nein | ja | teilweise Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | nein | ja | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML Unterstützung Verarbeitung von Daten in XML Format, beispielsweise Speicherung von XML-Strukturen und/oder Unterstützung von XPath, XQuery, XSLT | nein | nein | nein | nein | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sekundärindizes | ja über Views | ja | ja by using the Redis Search module | ja über Views | ja | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | nein | nein | nein | nein | nein | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs und andere Zugriffskonzepte | RESTful HTTP/JSON API | Android iOS JavaScript API RESTful HTTP API | Proprietäres Protokoll RESP - REdis Serialization Protoco | HTTP REST only for PouchDB Server JavaScript API | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Unterstützte Programmiersprachen | C C# ColdFusion Erlang Haskell Java JavaScript Lisp Lua Objective-C OCaml Perl PHP PL/SQL Python Ruby Smalltalk | Java JavaScript Objective-C | 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 | JavaScript | Clojure Java Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-seitige Scripts Stored Procedures | View Functions in JavaScript | limited functionality with using 'rules' | Lua | View Functions in JavaScript | ja | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | ja | Callbacks are triggered when data changes | nein | ja | ja | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitionierungsmechanismen Methoden zum Speichern von unterschiedlichen Daten auf unterschiedlichen Knoten | Sharding improved architecture with release 2.0 | Sharding | Sharding mit couchdb-lounge, einem proxy-basierten Framework für CouchDB | ja über integrierbare Storage Backends | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replikationsmechanismen Methoden zum redundanten Speichern von Daten auf mehreren Knoten | Multi-Source Replikation Source-Replica Replikation | Multi-Source Replikation Source-Replica Replikation | Multi-Source Replikation auch mit CouchDB Datenbanken Source-Replica Replikation auch mit CouchDB Datenbanken | ja | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Bietet ein API für Map/Reduce Operationen | ja | nein | nein | ja | ja mittels Faunus, eine Graph Analytics Engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Konsistenzkonzept Methoden zur Sicherstellung der Konsistenz in einem verteilten System | Eventual Consistency | Eventual Consistency if the client is offline Immediate Consistency if the client is online | Eventual Consistency Strong eventual consistency with CRDTs | Eventual Consistency | Eventual Consistency Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Fremdschlüssel referenzielle Integrität | nein | nein | nein | nein | ja Beziehungen in Graph | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaktionskonzept Unterstützung zur Sicherstellung der Datenintegrität bei nicht-atomaren Datenmanipulationen | nein atomare Operationen innerhalb eines Dokumentes möglich | ja | Optimistic locking, atomic execution of commands blocks and scripts | nein | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Unterstützung von gleichzeitig ausgeführten Datenmanipulationen | ja Strategie: optimistic locking | ja | ja | ja | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Dauerhafte Speicherung der Daten | ja | ja | ja Configurable mechanisms for persistency via snapshots and/or operations logs | ja mittels IndexedDB, WebSQL oder LevelDB | ja Unterstützt verschiedene Storage Backends: Cassandra, HBase, Berkeley DB, Akiban, Hazelcast | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-Memory Unterstützung Gibt es Möglichkeiten einige oder alle Strukturen nur im Hauptspeicher zu halten | nein | ja | ja | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Berechtigungskonzept Zugriffskontrolle | Zugriffsrechte für Benutzer pro Datenbank definierbar | yes, based on authentication and database rules | einfacher Passwort-basierter Zugriffsschutz und ACL | nein | Benutzer Authentification und Sicherheit via Rexster Graph Server | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Weitere Informationen bereitgestellt vom SystemherstellerWir laden Vertreter der Systemhersteller ein uns zu kontaktieren, um die Systeminformationen zu aktualisieren und zu ergänzen, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Zugehörige Produkte und DienstleistungenWir laden Vertreter von Anbietern von zugehörigen Produkten ein uns zu kontaktieren, um hier Informationen über ihre Angebote zu präsentieren. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Weitere Ressourcen | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CouchDB steht für "Cluster Of Unreliable Commodity Hardware" | Firebase Realtime Database | KeyDB | PouchDB | Titan | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines Blog Posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | Cloud-based DBMS's popularity grows at high rates | New kids on the block: database management systems implemented in JavaScript | Graph DBMS increased their popularity by 500% within the last 2 years Graph DBMSs are gaining in popularity faster than any other database category How to install the CouchDB NoSQL database on Debian Server 11 IBM Cloudant pulls plan to fund new foundational layer for CouchDB CouchDB 3.0 ends admin party era • DEVCLASS CouchDB 3.0 puts safety first How to Connect Your Flask App With CouchDB: A NoSQL Database - MUO bereitgestellt von Google News Realtime vs Cloud Firestore: Which Firebase Database to go? Atos cybersecurity blog: Misconfigured Firebase: A real-time cyber threat Don't be like these 900+ websites and expose millions of passwords via Firebase Google Firebase may have exposed 125M records from misconfigurations Hundreds of Google Firebase websites might have leaked data online bereitgestellt von Google News Snap snaps up database developer KeyDB to make its infrastructure more snappy Snap Acquires KeyDB for Open-Source Services Garnet–open-source faster cache-store speeds up applications, services Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store Microsoft open-sources Garnet cache-store -- a Redis rival? bereitgestellt von Google News Building an Offline First App with PouchDB — SitePoint Getting Started with PouchDB Client-Side JavaScript Database — SitePoint 3 Reasons To Think Offline First Create Offline Web Apps Using Service Workers & PouchDB — SitePoint Offline-first web and mobile apps: Top frameworks and components bereitgestellt von Google News Beyond Titan: The Evolution of DataStax's New Graph Database Amazon DynamoDB Storage Backend for Titan: Distributed Graph Database | Amazon Web Services DataStax acquires Aurelius, the startup behind the Titan graph database DSE Graph review: Graph database does double duty 5 Q's with Graph Database Expert Marko Rodriguez – Center for Data Innovation bereitgestellt von Google News |
Teilen sie diese Seite mit ihrem Netzwerk