thingsboard icon indicating copy to clipboard operation
thingsboard copied to clipboard

[Feature Request] Replace Cassandra in Docker Compose Microservices with ScyllaDB

Open janknieling opened this issue 4 years ago • 8 comments

I recommend to replace Apache Cassandra in the docker compose files for the Microservices (and generally on all other setups) against its fork ScyllaDB (https://www.scylladb.com).

ScyllaDB is a rewrite of Cassandra in C++. It is much better than Cassandra (performance etc) and its 100% compatible to Apache Cassandra

janknieling avatar Oct 17 '20 15:10 janknieling

Cheers! Keep me informed in case you need more info or in case there is a problem. Dor

dorlaor avatar Oct 18 '20 08:10 dorlaor

Interesting! From the specs it should be like for like replacement. Has anyone actually tried it yet?

govorox avatar Oct 19 '20 20:10 govorox

I grepped the repository, there is much more Cassandra than a docker file, I see K8S usage and even direct sstable manipulation. It can all work with Scylla but it requires more changes, especially around K8S, the scylla operator should be used. So there is some investment to be made with a good upside of performance, functionality and manageability.

dorlaor avatar Oct 19 '20 21:10 dorlaor

I have tested Scylla DB few years ago and at that time it even was not able to load our schema. Don't want to start the "holy war" here. We use Cassandra in many setups and so far so good. What exactly (please provide reference to the documentation) do you mean when you talk about upside of functionality and manageability in this case?

ashvayka avatar Oct 22 '20 21:10 ashvayka

It could be that a few years ago we didn't have the feature set. Now we are supposed to have it all. Here is a 'marketing' diff list, it is accurate: https://www.scylladb.com/scylla-vs-cassandra/ You're most welcome to use Scylla if you like, I'm not here to sell or to fight. LMK if there is an issue

On Thu, Oct 22, 2020 at 2:13 PM Andrew Shvayka [email protected] wrote:

I have tested Scylla DB few years ago and at that time it even was not able to load our schema. Don't want to start the "holy war" here. We use Cassandra in many setups and so far so good. What exactly (please provide reference to the documentation) do you mean when you talk about upside of functionality and manageability in this case?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/thingsboard/thingsboard/issues/3597#issuecomment-714765499, or unsubscribe https://github.com/notifications/unsubscribe-auth/AANHURJMVBRRGG4HV25RJLTSMCN7BANCNFSM4SUOGLMA .

dorlaor avatar Oct 22 '20 21:10 dorlaor

We welcome PRs from community to add support of Scylla option for the install scripts. Especially if it is compatible with the java driver that we use. However, we are not yet ready to say that we officially support Scylla. What we can do is to try use it on demo.thingsboard.io for a while and check how it goes. But we have a lot of work so I can't provide any timeline now.

ashvayka avatar Oct 22 '20 21:10 ashvayka

Interesting! From the specs it should be like for like replacement. Has anyone actually tried it yet?

I have tested it a few weeks ago. Everything has worked fine and it has a much better performance because it is written in C++ and not in Java

janknieling avatar Oct 23 '20 07:10 janknieling

@janknieling Could you please share how you make Scylla work with Thingsboard?

ArthurGing avatar Aug 01 '22 07:08 ArthurGing

We inform you that your GitHub ticket has been inactive for some time, and we will close it. If you have any more concerns or encounter similar issues, please don't hesitate to contact us.

Ultrazombie avatar Jul 27 '23 12:07 Ultrazombie