Skip to content
Login
Get CrateDB
Login
Get CrateDB
Home CrateDB comparison CrateDB vs MongoDB

Compare CrateDB

How is CrateDB different from other databases in the market?

MongoDB is the king of NoSQL, a robust database optimally suited to a wide variety of web-scale use cases. Nevertheless, CrateDB is a better choice for real-time applications with huge data volumes and heavy load — especially if they deal with time-series data.

CrateDB is more efficient than MongoDB in terms of memory and storage, and it is easier to scale. It offers real-time responses even with high data volumes, high concurrency, and a variety of data types. On top of that, CrateDB is accessible through SQL.

 

Scalability

MongoDB is configured with primary and secondary nodes, making it difficult (and expensive) to scale MongoDB horizontally. This is especially relevant for IoT, considering the vast scalability requirements of many IoT use cases.

Screen-Shot-2020-09-23-at-8.55.48-AM

MongoDB is mostly used as a single-node database: its performance is optimized for single-node operations. On the contrary, CrateDB is a database with shared-nothing nodes and automatic replication and cluster rebalancing. CrateDB is built to scale, and thus it shows the best results when operated in a multi-node cluster.

 
MongoDB
CrateDB
Cluster type Primary/Secondary Shared-nothing
Scalability Limited Full horizontal scalability
Data replication At partition level At table level
On-disk compression ZLIB, ZSTD LZF
Open-source AGPL v3 Apache 2.0
Access language MongoDB query language ANSI SQL
Schemas Dynamic Dynamic
Columnar indexing No Yes
JOINs No Full
Full-text search Limited Yes (Lucene powered)
 

Developer productivity

CrateDB provides all the versatility of NoSQL, but without abandoning SQL. Querying is way easier when compared to MongoDB, which demands considerably more code when working, for example, with time-series data.

Screen-Shot-2020-09-23-at-7.58.17-AM

 

On top of that, CrateDB schemas are dynamic. MongoDB doesn’t enforce a schema, but it is necessary to define a schema initially in order to get good results. Besides, MongoDB's indexing can cause problems in IoT use-cases.

MongoDB offers excellent development tools, but it is a database quite complex to operate and maintain. To integrate MongoDB with existing applications is often difficult, and the risk of getting locked in is high.

Content Kit
 

From CrateDB to MongoDB: Migration Starter Kit

To use MongoDB for large-scale IoT projects is like using a Swiss Army Knife for changing a flat tire: not a good fit. Migrate to CrateDB and start scaling smoothly for a fraction of the costs.

Read more

 

What about the price?

Due to its document-store structure, MongoDB is not efficient at handling high volumes of IoT time-series data. We compared the cost of running an industrial IoT use case with MongoDB and with CrateDB.

For the same monthly budget, MongoDB gave you access to fewer resources; it also required more memory, and ~60% more storage than CrateDB. In the use case studied, MongoDB's default index already exceeded the RAM available, forcing the user to upgrade to a more expensive machine.

 

gfx-cratedb-vs-mongodb-price-comparison gfx-cratedb-vs-mongodb-storage-comparison

CONTINUE READING


Picture2

BLOG

Comparing databases for an industrial IoT use-case

We talk about our experience working with MongoDB, TimescaleDB and InfluxDB

Picture4

WHITE PAPER

The cost of running MongoDB, TimescaleDB and CrateDB for industrial IoT

Find out how much the monthly price can vary if different databases are used

Picture5

WHITE PAPER

Introduction to Industrial time series

A discussion about the particularities of industrial time-series data. Why are they different from other time series?

Subscribe to the CrateDB Newsletter now