Stream data type looks very interesting as well. Is the goal to be competitive to Kafka-like use-case?
Stream data type looks very interesting as well. Is the goal to be competitive to Kafka-like use-case?
I've a non-competitive style when the matter is software :-) I simply think that Redis streams could be very useful, in some way I borrowed Kafka ideas, in other ways I totally refused the Kafka implementation / approach, and in general Redis streams have a lot of cons and pro at the same time in a mixed way, due to the total difference between Kafka end Redis. So I think it's the users that should apply the right tools for the right jobs, I'll avoid any comparison. I just gave Kafka credits in the Redis doc because certain ideas are clearly from Kafka or popularized by Kafka.
It was probably a bit too early for production use, but it worked perfectly!
One nice advantage of it vs. Kafka is that given that it's so lightweight, a Redis instance with streams can be dedicated to each customer with its own port and firewall setup and give you a really solid security story for clients who are paranoid about such things. (Kafka security is possible too of course...but harder to explain for a layman.)
Thanks antirez - it's great. I've written a python Redis iterator that I'm looking forward to PR'ing to the python client to encapsulate the XREAD timestamp tracking bit and manage timeouts.