Question: Say I want to implement a simple NoSql database containing a list of users. I want both the username and the email of the user to be unique. Which NoSql database can achieve this.

Answer: 
In Dynamo you can't, at least in a direct way. That's up to your model. For example, if your key is the username, and the range key is the email, you will be able to do it. However, if one of these fields are in the value, you won't be able to achieve uniqueness
you can user the incr command on a key in redis .
you will have something like thing like this

```
127.0.0.1:6379> INCR key
(integer) 1
127.0.0.1:6379> INCR key
(integer) 2
127.0.0.1:6379> INCR key
(integer) 3
127.0.0.1:6379> INCR key
(integer) 4

```

redis is very interressing database who can manage cache (like memcache but with persistence with a lot of keys types) and pub/sub.Can be very light and very effective.

I use it on a lot of case (Session, InterProcessCommunication, persistance, realtime messaging, light data storing, geopos calculation in lua,...) i love it.
 [more infomation](http://redis.io/documentation)