

Finding the Perfect Tech Stack - misshap
http://www.hubba.com/technology-stack-that-works-for-you

======
nukul
Thanks rcruz. Redis has a few advantages over other NoSQL databases

1\. Redis is a Disk-backed in-memory database so its blazing fast. 2\. Redis
also has an easy pub/sub built in so you can easily use it communicate between
servers in your nodejs cluser. 3\. Kue is an amazing open source priority
queue which uses it as a backend by default.

For small datasets that don't require you to query within your json, its an
amazing database.

------
caloriemate
Given that you're already using Redis with Kue, why not use Redis in place of
MongoDB?

Additionally, why have you chosen to use a key-value store initially instead
of a traditional SQL store?

~~~
nukul
MongoDB has a lot of advantages over Redis

1\. Retains some friendly properties of SQL. (Query, index) so its easier to
work with. Queries are javascript expressions so it fits in great with our
Stack. 2\. Master/slave replication (auto failover with replica sets),
Sharding built-in, Easier horizontal scaling than Redis. 3\. In-place updates,
means you only need update one part of the document. 4\. geospatial indexing,
if you use geospatial data this can be very powerful 5\. Data center awareness

You can do everything with Redis as well but we found that Mongo was easier to
work with.

------
rcruz
Great post.

I see you've chosen redis over other NoSQL variants. Does it give you a
certain advantage in this scenario?

~~~
misshap
we've used redis for our scheduled jobs and does a pretty good job. we still
do use mongoDB for our 'main' data. the reason for the redis option was
because we liked the 'kue' \-
[https://github.com/learnboost/kue](https://github.com/learnboost/kue)

