MongoDB vs Riak

Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

MongoDB
MongoDB

17.1K
13.6K
+ 1
3.9K
Riak
Riak

77
72
+ 1
35
Add tool

MongoDB vs Riak: What are the differences?

Developers describe MongoDB as "The database for giant ideas". MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding. On the other hand, Riak is detailed as "A distributed, decentralized data storage system". Riak is a distributed database designed to deliver maximum data availability by distributing data across multiple servers. As long as your client can reach one Riak server, it should be able to write data. In most failure scenarios, the data you want to read should be available, although it may not be the most up-to-date version of that data.

MongoDB and Riak can be categorized as "Databases" tools.

"Document-oriented storage" is the top reason why over 788 developers like MongoDB, while over 9 developers mention "High Performance " as the leading cause for choosing Riak.

MongoDB and Riak are both open source tools. It seems that MongoDB with 16.3K GitHub stars and 4.1K forks on GitHub has more adoption than Riak with 3.24K GitHub stars and 530 GitHub forks.

According to the StackShare community, MongoDB has a broader approval, being mentioned in 2189 company stacks & 2218 developers stacks; compared to Riak, which is listed in 15 company stacks and 10 developer stacks.

What is MongoDB?

MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.

What is Riak?

Riak is a distributed database designed to deliver maximum data availability by distributing data across multiple servers. As long as your client can reach one Riak server, it should be able to write data. In most failure scenarios, the data you want to read should be available, although it may not be the most up-to-date version of that data.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose MongoDB?
Why do developers choose Riak?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con
    What companies use MongoDB?
    What companies use Riak?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with MongoDB?
    What tools integrate with Riak?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to MongoDB and Riak?
    Amazon DynamoDB
    With it , you can offload the administrative burden of operating and scaling a highly available distributed database cluster, while paying a low price for only what you use.
    Couchbase
    Developed as an alternative to traditionally inflexible SQL databases, the Couchbase NoSQL database is built on an open source foundation and architected to help developers solve real-world problems and meet high scalability demands.
    MySQL
    The MySQL software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software.
    PostgreSQL
    PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions.
    Cassandra
    Partitioning means that Cassandra can distribute your data across multiple machines in an application-transparent matter. Cassandra will automatically repartition as machines are added and removed from the cluster. Row store means that like relational databases, Cassandra organizes data by rows and columns. The Cassandra Query Language (CQL) is a close relative of SQL.
    See all alternatives
    Decisions about MongoDB and Riak
    MongoDB
    MongoDB

    I starting using MongoDB because it was much easier to implement in production then hosted SQL, and found that a lot of the limitation you think of from a document store vs a relational database were overcome by connecting the application to a graphql API, making retrieval seamless. Mongos latest upgrades as well as Stitch and Mongo mobile make it a perfect fit especially if your application will be cross platform web and mobile.

    See more
    Anton Sidelnikov
    Anton Sidelnikov
    Backend Developer at Beamery · | 6 upvotes · 9.2K views
    PostgreSQL
    PostgreSQL
    MongoDB
    MongoDB

    In my opinion PostgreSQL is totally over MongoDB - not only works with structured data & SQL & strict types, but also has excellent support for unstructured data as separate data type (you can store arbitrary JSONs - and they may be also queryable, depending on one of format's you may choose). Both writes & reads are much faster, then in Mongo. So you can get best on Document NoSQL & SQL in single database..

    Formal downside of PostgreSQL is clustering scalability. There's not simple way to build distributed a cluster. However, two points:

    1) You will need much more time before you need to actually scale due to PG's efficiency. And if you follow database-per-service pattern, maybe you won't need ever, cause dealing few billion records on single machine is an option for PG.

    2) When you need to - you do it in a way you need, including as a part of app's logic (e.g. sharding by key, or PG-based clustering solution with strict model), scalability will be very transparent, much more obvious than Mongo's "cluster just works (but then fails)" replication.

    See more
    Zach Coffin
    Zach Coffin
    Software Developer · | 3 upvotes · 7.6K views