CrateDB vs. NoSQL Comparisongo.cratedb.com/rs/...Cassandra-MongoDB-Comparison.pdf · NoSQL...

3
© 2017 Crate.io, Inc. CrateDB vs. NoSQL Comparison The Ease of SQL with the Power of NoSQL NoSQL databases like MongoDB and Apache Cassandra have pushed database technology beyond the schema, scalability and performance limitations of traditional relational databases. But proprietary data access interfaces make them harder to learn, use, and integrate than SQL DBMSs, and increase lock-in. The newest wave of databases, including CrateDB, are distributed SQL databases built on top of NoSQL foundations (storage, indexing, networking). They make data management much simpler for mainstream SQL developers (who still outnumber NoSQL developers 45:1 according to LinkedIn), by combining the familiarity of SQL access with the versatility and scalability of NoSQL. Real time, Time Series, Search, and AI for the Fire hose of “Things” Data The new SQL databases are arriving just in time to enable the era of IoT and machine data applications: Fire hose of data—ingest millions of data points per second. Query versatility—support time series, geospatial, text search, anomaly detection, aggregations, and many other analytics. Data versatility – process structured and unstructured sensor readings, network messages, IT events/logs, geospatial, BLOBs, and others. Extreme performance—analyze data in real time, or in large volumes, to monitor, and improve the security, productivity, and efficiency of connected “things” and the people who use them. Simple scalability—grow your ability to handle an increasing load of things, data, and users. These are the requirements CrateDB is built to handle—simply, and without having to give up SQL. Here’s how CrateDB compares to other database categories for this type of workload: Traditional SQL NoSQL CrateDB Fire hose of data No Yes Yes Query versatility & real-time performance No No Yes Data versatility No Yes Yes SQL access Yes No Yes Simple scalability No Yes Yes The next page provides more detail on how CrateDB compares with a few popular NoSQL databases.

Transcript of CrateDB vs. NoSQL Comparisongo.cratedb.com/rs/...Cassandra-MongoDB-Comparison.pdf · NoSQL...

Page 1: CrateDB vs. NoSQL Comparisongo.cratedb.com/rs/...Cassandra-MongoDB-Comparison.pdf · NoSQL databases like MongoDB and Apache Cassandra have pushed database technology beyond the schema,

© 2017 Crate.io, Inc.

CrateDBvs.NoSQLComparison

The Ease of SQL with the Power of NoSQL NoSQL databases like MongoDB and Apache Cassandra have pushed database technology beyond the schema, scalability and performance limitations of traditional relational databases. But proprietary data access interfaces make them harder to learn, use, and integrate than SQL DBMSs, and increase lock-in. The newest wave of databases, including CrateDB, are distributed SQL databases built on top of NoSQL foundations (storage, indexing, networking). They make data management much simpler for mainstream SQL developers (who still outnumber NoSQL developers 45:1 according to LinkedIn), by combining the familiarity of SQL access with the versatility and scalability of NoSQL. Real time, Time Series, Search, and AI for the Fire hose of “Things” Data The new SQL databases are arriving just in time to enable the era of IoT and machine data applications:

• Fire hose of data—ingest millions of data points per second. • Query versatility—support time series, geospatial, text search, anomaly detection, aggregations,

and many other analytics. • Data versatility – process structured and unstructured sensor readings, network messages, IT

events/logs, geospatial, BLOBs, and others. • Extreme performance—analyze data in real time, or in large volumes, to monitor, and improve the

security, productivity, and efficiency of connected “things” and the people who use them. • Simple scalability—grow your ability to handle an increasing load of things, data, and users.

These are the requirements CrateDB is built to handle—simply, and without having to give up SQL. Here’s how CrateDB compares to other database categories for this type of workload:

TraditionalSQL NoSQL CrateDBFire hose of data No Yes Yes Query versatility & real-time performance No No Yes

Data versatility No Yes Yes

SQL access Yes No Yes

Simple scalability No Yes Yes The next page provides more detail on how CrateDB compares with a few popular NoSQL databases.

Page 2: CrateDB vs. NoSQL Comparisongo.cratedb.com/rs/...Cassandra-MongoDB-Comparison.pdf · NoSQL databases like MongoDB and Apache Cassandra have pushed database technology beyond the schema,

© 2017 Crate.io, Inc.

CrateDBvs.MongoDBandCassandraHere is a more detailed comparison of CrateDB vs. MongoDB and Apache Cassandra

All offer the data flexibility and scalability of NoSQL. CrateDB doesn’t force you to abandon SQL to get it.

SQL access aside, CrateDB also features these differentiators relative to MongoDB & Cassandra:

• Easy-to-change schemas, indexing, ad hoc querying • In-memory columnar indexes for real-time query performance • Aggregate queries • Queries with Joins, Sub-selects, User-defined functions • Better fit for time series data (mixed insert/query workload and fast aggregation queries) • Full-text search (Lucene) • Shared-nothing microservices architecture (can scale via container)

Cassandra and CrateDB both feature columnar indexing, data compression, and eventual consistency, which make them good fits for analytic applications that deliver fast query performance against streams of data or large data volumes. Cassandra is famously hard to change and optimize as application requirements evolve; CrateDB is not. And support for data aggregation, text search, joins make CrateDB an easier fit for time series and many other types of use cases.

MongoDB tends to be used for more user-interactive transactional applications, and CrateDB is better suited for Query & INSERT-intensive analytic applications. CrateDB also scales more easily and reliably due to its shared-nothing architecture verses the MongoDB cluster with specialized writeable nodes and read-only nodes. If you need schema flexibility and query versatility and performance, CrateDB is the better fit.

CrateDB MongoDB CassandraImplementation Model

Cluster type Shared-nothing Master/slave Shared-nothing

Consistency Eventual Eventual Eventual

Horizontal scaling Full, with automatic data rebalancing

Limited (master/slave), with automatic data

rebalancing

Full, with automatic data rebalancing

Replication

Configurable at table level.

Replication is immediate and synchronous

Configurable at partition level

Configurable at cluster level

Backup Full or incremental snapshot & restore.

Full or incremental snapshot & restore.

Full or incremental snapshot & restore.

On-disk compression LZF No LZ4, et al

Implementation language Java C++ Java

Open source Apache 2.0 AGPL V3 Apache 2.0

Page 3: CrateDB vs. NoSQL Comparisongo.cratedb.com/rs/...Cassandra-MongoDB-Comparison.pdf · NoSQL databases like MongoDB and Apache Cassandra have pushed database technology beyond the schema,

© 2017 Crate.io, Inc.

CrateDB MongoDB Cassandra

Query & Data Model

Access language ANSI SQL

Via JDBC, ODBC, REST, PostgreSQL wire protocol

MongoDB query language CQL

Schemas Dynamic

SQL-DDL plus objects (JSON), arrays of objects

Dynamic Static

Columnar Indexing Yes Memory-resident No Yes

Aggregation queries Yes No No

JOINs Full No No

Full-text search Yes (Lucene powered) Limited Limited

Geospatial Yes (Lucene powered) No No

Access control Yes Yes Yes

Learn more If you would like to discuss how well CrateDB might support your use cases relative to MongoDB, Cassandra, or any other DBMS, please visit Crate.io to read the documentation, try CrateDB, or request a technical meeting and demonstration.