Skip to main content
TrustRadius
Riak

Riak

Overview

What is Riak?

Riak is a NoSQL database from Basho Technologies in Bellevue, Washington.

Read more
Recent Reviews

TrustRadius Insights

Riak, a versatile database, has been widely utilized by various teams within organizations for a range of purposes. Users have found it …
Continue reading

My Riak Review

9 out of 10
December 11, 2015
Incentivized
We are using Riak as a backend to our weekly build cycle that processes data for millions of industrial parts each week. The system that …
Continue reading
Read all reviews

Reviewer Pros & Cons

View all pros & cons
Return to navigation

Pricing

View all pricing
N/A
Unavailable

What is Riak?

Riak is a NoSQL database from Basho Technologies in Bellevue, Washington.

Entry-level set up fee?

  • No setup fee

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services

Would you like us to let the vendor know that you want pricing?

9 people also want pricing

Alternatives Pricing

What is MongoDB?

MongoDB is an open source document-oriented database system. It is part of the NoSQL family of database systems. Instead of storing data in tables as is done in a "classical" relational database, MongoDB stores structured data as JSON-like documents with dynamic schemas (MongoDB calls the format…

What is Redis™*?

Redis is an open source in-memory data structure server and NoSQL database.

Return to navigation

Product Details

Riak Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(11)

Community Insights

TrustRadius Insights are summaries of user sentiment data from TrustRadius reviews and, when necessary, 3rd-party data sources. Have feedback on this content? Let us know!

Riak, a versatile database, has been widely utilized by various teams within organizations for a range of purposes. Users have found it extremely valuable in migrating applications from data centers to the cloud, thanks to its ability to write data that is replicated in the cloud for service lookups. Additionally, Riak's unique feature of linking objects in the database has proven instrumental in constructing hierarchical trees of documents that represent important student administrative and testing data. It serves as a foundation for the operational data store's data model and plays a pivotal role as the backend for the weekly build cycle, which processes massive amounts of data for millions of industrial parts every week. Users have also leveraged Riak's capability to simultaneously feed metadata about each item, which ensures a reliable picture of what the front-end should look like and aids in purging old data. Furthermore, Riak serves as the main database for various web applications such as storage of generated daily merchant statements and for products like the Dittach Platform, where it stores information on all objects and documents managed within the environment. One of the key factors behind choosing Riak is its high availability, scalability, and built-in Apache SOLR for fast searching and indexing, which further enhances its suitability across different use cases.

Attribute Ratings

Reviews

(1-5 of 5)
Companies can't remove reviews or game the system. Here's why
Nicholas Adams | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Used as a data store in multiple scenarios. Everything from individual pair values such as datetime against currency exchange value through to large scale storage for videos and images. This was implemented in multiple clusters and tried on hardware varying from Raspberry Pi through to full rack mount servers. We also contributed towards the open source codebase.
  • Key-Value storage along with CRDTs
  • Fault tolerance
  • 100% uptime
  • Massively scalable
  • Consistent response speeds
  • Multi datacentre replication
  • Geographic replication/redundancy
  • Is free to use
  • Lots of client libraries
  • Missing a free text search function
  • More security work
  • Multi-tenant reporting
  • More types of index optimised for different structures
  • Automating repairs especially after unclean shutdowns
  • WebDAV/Samba shares for Riak CS
  • Implementing the SQL queries from Riak TS in Riak KV
  • Settable replication bandwidth caps
  • Safemode start up after failure
  • More client integrations
Riak is well suited to applications such as:
Transaction logging e.g. financial transactions and/or exchange rates.
Storing time series data, especially IoT.
Storing massive amounts of data e.g. corporation wide backups, data lakes etc.
A fully s3 compatible replacement for Amazon S3 ensuring data privacy.

Riak is not as well suited to:
Traditional RDBMS functions, especially those that join the outputs of one or more queries together to produce the desired result.
NoSQL Databases (7)
94.28571428571429%
9.4
Performance
100%
10.0
Availability
100%
10.0
Concurrency
100%
10.0
Security
60%
6.0
Scalability
100%
10.0
Data model flexibility
100%
10.0
Deployment model flexibility
100%
10.0
  • Great ROI, has helped us generate significant revenue.
  • Low support costs as it hardly ever has any problems once correctly set up.
  • The only issue we had in so far was one development cluster overheating and periodically shutting down when its cooling system failed but that's a hardware issue, not a software one.
MongoDB seems to have copied a lot of functionality from Riak. This may be because MongoDB hired a number of former Basho engineers when Basho went bankrupt. That said, the new functions added to Riak after it became open source have successfully differentiated itself from MongoDB.

Amazon S3 is a nice tool but when you are at significant scale with regionally specific data (joys of GDPR), it's much easier to keep it in house and Riak CS lets you do exactly that. All you need to do is point your application at Riak CS instead of Amazon S3 and it just works as if nothing has changed.

When we evaluated against Cassandra, we found the tools available did not match our needs at the time.
Despite Basho going bankrupt and the project becoming fully open-source, community support is reasonably good, albeit a little slow at times. Paid enterprise-grade support is also available from former Basho engineers but the same company also contributes to the community support for free for basic questions or specific knowledge areas.
As a full disclaimer, I used to be a Basho CSE (until 2017), so have experienced the support firsthand on both sides of the fence. For those with engineers who are very familiar with Riak and its workings, there is no need to purchase support. However, if your engineers are inexperienced with Riak, I would recommend getting support at least for your first year to make sure everything gets set up properly.
Yes
Yes. I have reported multiple issues over the years and have even had some patches I submitted accepted and added in to the repositories.
Adam Stern | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Riak is used as the main database/K-V Store for the company's product, the Dittach Platform. It is used to store information on all the objects/documents we manage in our environment. We selected Riak because it is highly available, highly scalable, and has Apache SOLR built into the data store for fast searching and indexing.
  • Highly available: If nodes go offline for any reason, the system still operates.
  • Highly scalable: There is a minimum of 5 nodes, which can handle a lot by themselves. When scaling is required, it can be done easily, with minimal to no downtime on large scales.
  • Very fast searching: Riak has SOLR indexing built-into the core product, which makes querying for data very fast.
  • When the index definition changes, reindexing takes an extremely long time.
  • Support (both paid and community based) is very very lacking.
  • It is expensive to run.
NoSQL Databases (7)
94.28571428571429%
9.4
Performance
90%
9.0
Availability
100%
10.0
Concurrency
100%
10.0
Security
90%
9.0
Scalability
100%
10.0
Data model flexibility
90%
9.0
Deployment model flexibility
90%
9.0
Riak is very good if you need a resilient data store that can handle large amounts of documents very fast. If you have 1,000,000 documents and need to execute complex queries, it is great.
Riak's SOLR engine is fast, however if you have extremely high amount of queries in a very limited time range, it can fail in a bad way.
  • Riak has had a positive impact in the fact that it is still a very fast data store and can scale very well over time.
  • Riak has had a negative impact as it is one of the most expensive pieces of our architecture.
  • Riak's SOLR engine failed us at a critical moment which seriously hurt the company. Our use case is very different than the norm, so I don't expect this to affect most people.
Every database has positives and negatives. Redis is very good at set operations, but not as good at executing fast queries. MongoDB is a much cheaper data store than Riak, but not as highly available and scalable. Searching Riak is also faster than searching MongoDB or Redis. Riak also scales better than MongoDB in the long run.
Riak has overall performed very well in development, staging, and production environments. We have included Riak in our long term scaling plan, and as long as everything continues to run smoothly, I see no reason to change.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
It is being used as a backend for a web application used for storage of generated daily merchant statements.
  • Consistency model is highly distributed, so uptime of our documents is always available.
  • Simple to use RESTful interface, which was easy to access from our Java application.
  • Data model using catalogs and indexes was simple, making it easy to store and retrieve our statements.
  • It does not have any native startup scripts in Linux.
  • Since it's built on Erlang, its a bit difficult to administer.
Riak is well suited for storing documents using a RESTful URL, such as files in byte format. I would not recommend using it for structured data with many relations.
  • Riak has positively allowed us to store our documents with high availability and redundancy.
  • Riak has made troubleshooting our application easy by using RESTful URLs to identify where data may be inconsistent.
  • Riak performs well under high load.
Because of the RESTful HTTP interface, the consistency model, and because of the catalog-driven data model, Riak was an easy win over Redis and Memcached.
Riak met all the requirements needed for a scalable, available, consistent statement store.
10
Riak is primarily used for document store via its RESTful interface.
4
The primary support case for Riak is for datastore design as well as replication management and migrations.
  • Document store for reports.
  • Key value store.
  • High availability.
  • We have been considering using Riak as a hierarchical key value store for configuration purposes.
  • Additional reports servers, and transaction data store for BI data.
Jared Holmberg | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
I used Riak's ability to link objects in the database as a way to build up a hierarchical tree of documents representing student administrative and testing data as part of a project to integrate across dozens of systems in a large technology and education company. Riak was used as the basis for the data model used in the operational data store.
  • If you're considering a NoSQL solution, one of Riak's strengths is that it is built to scale with very low management overhead. Compare Riak to something like HBase (requires a full Hadoop cluster, along with YARN, and Zookeeper), and you'll find it's much easier to set up and maintain.
  • Schemaless design in Riak makes it really easy to apply whatever design you like. Since you're not locked into seeing things just the SQL way, you've got more freedom with the type of data you store and the way you store it.
  • Riak is highly reliable. It's built on a platform that's meant to be incredibly resistant to failure. If you run in Riak in a cluster or cloud based environment, you can trust that it will be very dependable.
  • At the time I was using Riak, data was stored as blobs so you couldn't query the data directly on the server. This has since been remedied with the addition of full-text search support.
When I'm considering doing analysis on a large data set using machine learning algorithms, admittedly, Riak is not my first choice. I'd probably look into the idea of using something like Spark to run a distributed algorithm on my data. That means I'd have to copy data out of Riak into HDFS to run it. If you had good integration with Spark, that would be a welcome addition. That would save a lot of time in moving data between the Riak cluster and the HDFS cluster.
  • Riak's simple API and simple management model made it a no brainer when it came to adopting it as a technology for the team.
At the time I worked on the project those were the three competing technologies I evaluated. Couchbase didn't have memcache integrated at the time. Riak was by far the easiest to set up, and it's linking capability struck the right balance of having just enough relational capability for our needs.
Right now, I'm on a project where we need databases that can run on embedded systems. Riak isn't necessarily the best fit for that scenario. But when we need a clustered database, that's where we'd start considering Riak.
Gerald Chenvert | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Incentivized
We use Riak as a datacenter/cloud replicating noSQL database. It is being used by various teams in our organization to write data which is then replicated to the cloud for cloud based service lookups. Riak allows us to provide data to the cloud in a secure manner via the "hub and spoke" replication model. Riak has proved instrumental in allowing us to move applications from a datacenter, to the cloud.
  • Riak is great at handling large volumes of requests. We've seen Riak perform well under large volume while keeping response times quite low.
  • Riak is also fast providing consistent sub 10ms reads in both the datacenter and cloud.
  • Flexible allowing storage of numerous data types. We heavily leverage this to store various JSON documents in a single bucket.
  • We really like the RESTful interface that is provided. Makes the learning curve almost invisible and provides a quick speed to market in using Riak.
  • Deletes!!! We've seen on numerous occasions where Riak has "resurrected" deleted data. We've worked with Basho numerous times and tried multiple changes to the way we interact with Riak to prevent the problem but it still remains. The deletes seem to reappear weeks, even months, after the delete was issued. We've had to work around this issue by providing a "deleted" flag for all data objects stored in Riak. Thus, we do no delete but simply flip the flag. Excess baggage we would really like to not have to worry about.
  • Search. Currently there's no way to tell what data you have in Riak without already knowing a particular bucket/key. There is a way to list the keys for a given bucket but due to performance implications, this is not a viable method to lookup data. Especially when you have a large amount of keys in the bucket.

Riak is well suited as a key value store. It does exactly what it says it does. If you have well known buckets/keys, Riak is a great solution for a ton of different use cases. The lack of ability to search is somewhat problematic for other use cases requiring this ability.

Also, while the ability to store a variable array of data into a single bucket/key is extremely useful, if you have a use case requiring parts of that value to be updated independently, Riak does not support transactions so you open yourself up to contention issues if the data is being updated regularly in small portions. One solution to this is to use multiple bucket/key parts to store the data, which will remove the contention issue, but then you have to increase your Riak footprint which results in more buckets and can sometimes make things more difficult than needed. This has been a nagging issue we've had to deal with on multiple occasions.

  • It provided a solution for use to securely write data to the cloud. This has been instrumental in allowing us to move more applications to the cloud. Writes are performed behind firewalls and then replicated to the cloud for application consumption. By moving more applications to the cloud, we free up internal resources and can serve information in a much more scalable and reliable way.
Riak is a key/value pair store which is great for certain use cases. For our use case, the ability to search is an extremely useful feature. Apache Cassandra can provide this while Riak cannot. Also again for our use case, the ability to delete is critical as we strive to maintain clean data which means we like to purge old or obsolete data. Riak, while providing the ability to do so, is not reliable as we've seen data resurrect on numerous occasions. Apache Cassandra allows for deletes and in our proof of concept testing where we've explicitly tested this feature, it permanently deleted the data. One other key feature for us looking at Apache Cassandra is the ability to update multiple pieces of data simultaneously for a given row (Cassandra) or key (Riak). Riak only allows for updating at the key level by replacing the data that was there. Thus, if you have multiple threads updating the same data in Riak, contention issues arise and the possibility of overwriting data is a real concern. Apache Cassandra helps this use case by storing the data in columns rather than one big value. Thus, updating various columns for a given key removes contention issues in Cassandra.
Riak works great for our use case but the fact that deletes seem to resurrect is a real issue for us. Unless we can get this solved, we'll continue to look at other products to see if our use case fits. Otherwise Riak is a great product and it fits our use case 95%. We have found work arounds to the remaining 5%.
Return to navigation