I can't believe sentinels still re-write their own config in /etc. There are so many issues with sentinels they really are still a hacked together afterthought just to try and tick off a few reliability boxes.
Redis 2.8.7 is out
31–40 of 45 posts
Re: Redis 2.8.7 is out
#32For me, beauty of redis lies in being 'data structure server '. All kinds of lists/sets/hashes redis has are very powerful. But in last few releases redis has not introduced many new types. I would like to see more focus on that in future releases, please. Also improvements on memory consumption. Thanks for all work behind redis. You guys rock, take a bow!!
I totally think you are right. Redis 3.2 was already announced to be the "back to API" release where more data structures and APIs will be added. Oh well, in the next weeks we'll get native support for bloom filters, I hope you'll like this! And even without introducing a new data structure, they'll use strings like all the current bit operations.
Re: Redis 2.8.7 is out
#33Re: Redis 2.8.7 is out
#34I can't believe sentinels still re-write their own config in /etc. There are so many issues with sentinels they really are still a hacked together afterthought just to try and tick off a few reliability boxes.
I think that persisting the mutable state in the configuration file is a good thing, since actually in the Sentinel case, the initial configuration is the statement of a given state. As the state evolves it is reflected in the configuration.
The version of Sentinel provided with 2.8.7 also provides a full API that allows to change the configuration while the system is running, so you can automate everything without even having to touch the configuration file at all if you don't like it.
Re: Redis 2.8.7 is out
#35Earlier quoted context omitted.
It seems that antirez believes he's allowing Redis to approach AP and/or CP semantics by providing primitives that users can compose in ad-hoc ways according to their requirements. Unfortunately, that's not a valid methodology to achieve availability or (especially) consistency.
In Redis Cluster there is nothing you can do to tune availability or consistency. The only thing you can tune is write "safety" using WAIT, but actually most users should never use it since the system is mostly designed to be low-latency. Redis Cluster is not AP nor CP. It resembles more AP since it has no strong consistency, however it is not able to reach "A" of AP that is very strict. Like AP systems have some for…
Re: Redis 2.8.7 is out
#36Earlier quoted context omitted.
You answered a different question. Are you using a verified consensus algorithm? If not, why are you making a distributed database? You're not inspiring confidence in using anything but single node Redis.
Actually I tried to reply to the question of the original poster. Now I'll try to reply to your question: consensus algorithms are only used to implement the strong consistency requirements of CP databases, like for example Zookeeper. Other databases that don't feature strong consistency like Riak and Cassandra don't rely on consensus algorithms. Redis also has a form of weak consistency that does not require consens…
However, from your description it would appear to not even be AP. It's neither, which means it doesn't guarantee uptime and or a causal connection between accesses. What exactly does it guarantee?
As I said previously, single node Redis is brilliant and I'm grateful for your work on it. However, I am not convinced you know what you're doing when it comes to distributed databases, so I won't be touching Redis Cluster or Sentinel.
Re: Redis 2.8.7 is out
#37Earlier quoted context omitted.
Awesome that you improved your stack with Redis, thanks for sharing. I'm not sure about what exact feature you are referring to, please could you describe it? Thanks.
http://redis.io/topics/notifications notify-keyspace-events Kx Currently, NodeJS subscribes to expired keys. When the key is expired it will delete the 'physical' data from the server (thumbnails, more indepth info, etc). If NodeJS fails, even for a few seconds, I will forever have the 'physical' data stored on the server (as it doesn't re-run the expired event). Having lua scripting do what NodeJS currently does wou…
It hasn't been extensively tested, but it works for my isolated test cases.
Re: Redis 2.8.7 is out
#38Re: Redis 2.8.7 is out
#39Earlier quoted context omitted.
Actually I tried to reply to the question of the original poster. Now I'll try to reply to your question: consensus algorithms are only used to implement the strong consistency requirements of CP databases, like for example Zookeeper. Other databases that don't feature strong consistency like Riak and Cassandra don't rely on consensus algorithms. Redis also has a form of weak consistency that does not require consens…
So you're going for AP, not CP? That is a valid choice, but it should be explicit. However, from your description it would appear to not even be AP. It's neither, which means it doesn't guarantee uptime and or a causal connection between accesses. What exactly does it guarantee? As I said previously, single node Redis is brilliant and I'm grateful for your work on it. However, I am not convinced you know what you're…
I feel you've read the aphyr writings, but didn't follow the story through to the end. He wasn't testing the systems entirely as they were designed to be used.
Sentinel is just a Redis-aware consensus driven failover service. Instead of writing your own "if master is unreachable, promote replica to master" script, Sentinel will do that for you and at the same time notify all your clients to switch to the new master. It's kinda nice that way.
Redis Cluster has very specific use cases. Not every distributed software doodad should be used in any situation we can imagine. Things have design goals. Used the right way, you get happy times. Used the wrong way, you get grumpy cat.
Re: Redis 2.8.7 is out
#40Earlier quoted context omitted.
So you're going for AP, not CP? That is a valid choice, but it should be explicit. However, from your description it would appear to not even be AP. It's neither, which means it doesn't guarantee uptime and or a causal connection between accesses. What exactly does it guarantee? As I said previously, single node Redis is brilliant and I'm grateful for your work on it. However, I am not convinced you know what you're…
I am not convinced you know what you're doing I feel you've read the aphyr writings, but didn't follow the story through to the end. He wasn't testing the systems entirely as they were designed to be used. Sentinel is just a Redis-aware consensus driven failover service. Instead of writing your own "if master is unreachable, promote replica to master" script, Sentinel will do that for you and at the same time notify…
But its consensus algorithm is broken to the point where it will lose half of your recent data any time an election happens (much like MongoDB).
> Redis Cluster has very specific use cases.
What are those? It's neither CP nor AP apparently. What guarantees does it make?