You can use Lua Scripting for this.
Example:
local a={}
a[1] = redis.call('hget',KEYS[1], KEYS[2])
a[2] = redis.call('hget',KEYS[3], KEYS[4])
a[3] = redis.call('hget',KEYS[5], KEYS[6])
return a
Coded for simplicity, ofcourse you'd make the parameters more flexible. You can also use cjson for input as well as output (if you keep in mind that serialisation eats up a tiny bit of CPU).
Another way is using pipelining, but I guess your question is about doing this atomically.
Hope this helps, TW