ShardedJedis

211 views
Skip to first unread message

Jonathan Leibiusky

unread,
Mar 14, 2014, 11:01:52 AM3/14/14
to jedis...@googlegroups.com
Hi!

Since the release of redis cluster and JedisCluster it seems like ShardedJedis is becoming obsolete.

I wonder what do you think about deprecating it in 2.5.0 and totally removing it in 3.0.0

This will clean lots of code and will actually allow to implement new commands less tedious.

Lets discuss! :)

Jonathan

임정택

unread,
Mar 14, 2014, 7:17:46 PM3/14/14
to jedis...@googlegroups.com
Hello!

I agree to remove ShardedJedis,
It's duplicate to Redis Cluster, and actually user could implement his/her shard algorithm "based on situation and data distribution".

Actually I think we can use Redis Cluster in production environment at least 4~5 months after.
(Official 3.0 would be released earlier, but it would need stabilization based on Redis history. ;) )
But regarding to semver, we should wait for releasing Jedis 4.0.0 if we will not remove it at 3.0.0.

So I think removing ShardedJedis at 3.0.0 would be fine.

Regards.
Jungtaek Lim (HeartSaVioR)

2014년 3월 15일 토요일 오전 12시 1분 52초 UTC+9, Jonathan L. 님의 말:

Drew Morris

unread,
May 14, 2015, 8:37:52 AM5/14/15
to jedis...@googlegroups.com
I disagree with this course of action mainly because I believe ShardedJedis and JedisCluster perform 2 different functions. JedisCluster combined with Redis Cluster can improve resiliency and will provide a simpler implementation for the average use case but it does not seem to allow the application developer to craft their own approach to resiliency and failover within a multi-node cluster. They are locked into the model dictated by Redis Cluster.

ShardedJedis provides an extremely valuable way for the developer to create their own logic for sharding across a number of nodes and, if combined with the ability to detect the up/down status of a node, may even provide a way to re-allocate shards across the remaining nodes. This would provide a far better approach than the master-slave approach used by Redis cluster right now as it would fully utilize all available nodes.

I hope there is some way we can preserve this valuable functionality moving forward as I had intended to use it heavily in order to build a better a better, more resilient, and more efficient clustering solution than the one provided by Redis Cluster (which as I understand is still not considered ready for production, has had many setbacks, and may require significant performance trade-offs).

임정택

unread,
May 14, 2015, 8:55:35 PM5/14/15
to jedis...@googlegroups.com
Hi.

I know that ShardedJedis and JedisCluster are different features. That's why I think we should remove ShardedJedis from Jedis "for now".
It sure is ironic, isn't it?

Maybe you can see my thought via https://github.com/xetorthio/jedis/pull/629#issuecomment-102047238 and later comments.
Jedis is just a driver for Redis, so it is not Jedis core feature, but one of utilities.
At least I don't want to improve ShardedJedis right now because we're moving on for other things, but to give a unique life to ShardedJedis we should improve some other features. (for example, consistent hash, which I don't think it is easy)

If you think current ShardedJedis is enough, you can still use Jedis 2.x, or extract ShardedJedis to other repo / artifact and improve it.
I really wish interested developers to take over ShardedJedis's life.

It is one of committer's thought, and may some committers could disagree.

Thanks.
Jungtaek Lim (HeartSaVioR)

2015년 5월 14일 목요일 오후 9시 37분 52초 UTC+9, Drew Morris 님의 말:

Marcos NiLs

unread,
May 14, 2015, 9:02:08 PM5/14/15
to jedis...@googlegroups.com
Hi, I do also agree with @antirez comments here https://github.com/xetorthio/jedis/pull/629#issuecomment-102048852 about making ShardedJedis an external Jedis library. Let's see what other contributors have to say about and let's move forward with a decision.

Jonathan Leibiusky

unread,
May 15, 2015, 9:12:57 AM5/15/15
to jedis...@googlegroups.com

What do you think about jedis-utils or sharded-jedis repo?


--
You received this message because you are subscribed to the Google Groups "Jedis" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jedis_redis...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Marcos NiLs

unread,
May 18, 2015, 10:15:20 AM5/18/15
to jedis...@googlegroups.com
sharded-jedis seems better. :)

Jonathan Leibiusky

unread,
May 18, 2015, 4:03:49 PM5/18/15
to jedis...@googlegroups.com
That means a repo and maven project/release cycle only for this. Still +1 for a repo only for this? :)
Reply all
Reply to author
Forward
0 new messages