As a data store, sure... something like this could work:
Store analytics in hashes[1], store the keys of the hashes to process in a list[2], which is your unprocessed raw data.
Then BRPOPLPUSH [3] -> in progress list -> and then BRPOPLPUSH again onto a finished queue. You could have weighted sets to calculate rollup info based on score (timestamps) of when the analytics came in, eg per hour gets tablulated with INCR [4] counts for things like the URL, browser types, etc.
However, Redis doesn't do any of the actual mapping or reducing. Your code would act as the workers to move data from raw -> processing -> tabulate -> done. Someone may have already put together Hadoop & Redis or similar.