KairosDB + AWS Managed Cassandra

316 views
Skip to first unread message

Farzad Panahi

unread,
Dec 11, 2019, 3:27:57 AM12/11/19
to KairosDB
Just wondering, has anyone tried KairosDB with the new AWS MCS? 


Please share your experience (and benchmarks if you have any)

Sicheng Liu

unread,
Dec 11, 2019, 2:32:06 PM12/11/19
to KairosDB
We did some cost estimate for the new Managed Cassandra service. Looks like the cost will be at least 20x more, apparently not affordable for us.

在 2019年12月11日星期三 UTC-8上午12:27:57,Farzad Panahi写道:

Greg Matza

unread,
Dec 11, 2019, 2:55:47 PM12/11/19
to Sicheng Liu, KairosDB
Full disclosure that I work on the ScyllaDB project.

There is a great blog on MCS by Scylla's co-founder, Dor Laor. Generally, Dor compliments the new service. Anyone thinking of using it may want to give it a read. https://www.scylladb.com/2019/12/04/managed-cassandra-on-aws-our-take/

With regard to Kairos workloads, the fact that MCS is based on Dynamo and users are charged on a per-read/write basis will probably make it uneconomical. Kairos workloads are usually high-throughput, which makes Dynamo/MCS pricing quite expensive.

If you are looking for a managed service to back Kairos, we happily suggest Scylla Cloud, though there are several other Cassandra-as-a-Service offerings that Dor mentions in the blog.

Greg

--
You received this message because you are subscribed to the Google Groups "KairosDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kairosdb-grou...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/kairosdb-group/be5b6884-ef72-43eb-a75b-72c79d0c88d8%40googlegroups.com.

Farzad Panahi

unread,
Dec 11, 2019, 3:37:08 PM12/11/19
to KairosDB
Hi Greg. Are you saying the actual db is dynamo and not C*? My understanding from this tweet is that it is C* "under the hood".  But I guess we cannot be 100% sure, unless there is a way from the api to determine this :)

On Wednesday, December 11, 2019 at 11:55:47 AM UTC-8, Greg Matza wrote:
Full disclosure that I work on the ScyllaDB project.

There is a great blog on MCS by Scylla's co-founder, Dor Laor. Generally, Dor compliments the new service. Anyone thinking of using it may want to give it a read. https://www.scylladb.com/2019/12/04/managed-cassandra-on-aws-our-take/

With regard to Kairos workloads, the fact that MCS is based on Dynamo and users are charged on a per-read/write basis will probably make it uneconomical. Kairos workloads are usually high-throughput, which makes Dynamo/MCS pricing quite expensive.

If you are looking for a managed service to back Kairos, we happily suggest Scylla Cloud, though there are several other Cassandra-as-a-Service offerings that Dor mentions in the blog.

Greg

On Wed, Dec 11, 2019 at 11:32 AM Sicheng Liu <lzd...@gmail.com> wrote:
We did some cost estimate for the new Managed Cassandra service. Looks like the cost will be at least 20x more, apparently not affordable for us.

在 2019年12月11日星期三 UTC-8上午12:27:57,Farzad Panahi写道:
Just wondering, has anyone tried KairosDB with the new AWS MCS? 


Please share your experience (and benchmarks if you have any)

--
You received this message because you are subscribed to the Google Groups "KairosDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kairosd...@googlegroups.com.

Farzad Panahi

unread,
Dec 11, 2019, 3:39:27 PM12/11/19
to KairosDB
Hi Sicheng. Are you comparing MCS with running C* nodes on EC2 instances? 20x is a lot. I guess for low workloads will be cheaper but for serious high workloads it can be more expensive. I have to do my own calculations.  

Peter Corless

unread,
Dec 11, 2019, 3:51:32 PM12/11/19
to Farzad Panahi, KairosDB
Hi Farzah!

Also here from ScyllaDB. From what we were able to tell, the database is a "chimera" – a mixture of two systems. The front-end is true Cassandra. The CQL interface, etc. The back end seems to be DynamoDB. For example, and I must caveat Amazon has not clarified, we believe the data is not stored in SSTables. For most users this should not make any difference, but there may be some operational differences (like backups and restores) which should not matter to end users all too much since you would normally expect work to be alleviated from you in a managed serverless environment.

How the two specifically conjoin, and which database offers which part of the total solution is Amazon confidential information for now.

To unsubscribe from this group and stop receiving emails from it, send an email to kairosdb-grou...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/kairosdb-group/30dab36c-fa88-43e8-97ac-508e3620bf64%40googlegroups.com.


--
Peter Corless
Technical Marketing Manager
ScyllaDB

Brian Hawkins

unread,
Dec 13, 2019, 8:42:38 PM12/13/19
to KairosDB
Early on I looked at using Dynamo as an optional backend for Kairos and decided against it.  For one the ingest speed was sub par for what Kairos typically handles (this was a few years ago so things may have changed).  The other issue was cost:  Amazon typically charges more for writes than read across its services and dynamo is not different.  Kairos writes a ton but reads little so the pay for writes more than reads model doesn't work well.

Brian

Sicheng Liu

unread,
Jan 7, 2020, 8:06:59 PM1/7/20
to KairosDB
Yes, we are using EC2 i3 instances and our workload is pretty high.

在 2019年12月11日星期三 UTC-8下午12:39:27,Farzad Panahi写道:

Rob Shepherd

unread,
Apr 9, 2020, 4:35:04 PM4/9/20
to KairosDB
Hi,

I've connected to it, but can't get the schema deployed.

I reports:

 Cassandra 3.11.2 | CQL spec 3.4.4 | Native protocol v4

and it fails with:

20:29:05.203 [main] INFO  [Cluster.java:1782] - New Cassandra host cassandra.eu-west-3.amazonaws.com/15.188.210.132:9142 added
20:29:07.531 [main] WARN  [ClusterConnection.java:535] - Unable to create new schema, cluster is in read only mode.  You may need to upgrade to a newer version of Cassandra.
com
.datastax.driver.core.exceptions.InvalidQueryException: org.apache.cassandra.db.marshal.FrozenType(org.apache.cassandra.db.marshal.MapType(org.apache.cassandra.db.marshal.UTF8Type,org.apache.cassandra.db.marshal.UTF8Type)) type is not supported for PRIMARY KEY part tags
    at com
.datastax.driver.core.exceptions.InvalidQueryException.copy(InvalidQueryException.java:50)
    at com
.datastax.driver.core.DriverThrowables.propagateCause(DriverThrowables.java:35)
    at com
.datastax.driver.core.DefaultResultSetFuture.getUninterruptibly(DefaultResultSetFuture.java:293)
    at com
.datastax.driver.core.AbstractSession.execute(AbstractSession.java:58)
    at com
.datastax.driver.core.AbstractSession.execute(AbstractSession.java:39)
    at org
.kairosdb.datastore.cassandra.ClusterConnection.setupSchema(ClusterConnection.java:528)
    at org
.kairosdb.datastore.cassandra.ClusterConnection.tryToConnect(ClusterConnection.java:382)
    at org
.kairosdb.datastore.cassandra.ClusterConnection.startup(ClusterConnection.java:374)
    at org
.kairosdb.datastore.cassandra.CassandraModule.createClients(CassandraModule.java:149)
    at org
.kairosdb.datastore.cassandra.CassandraModule.getWriteCluster(CassandraModule.java:175)
    at org
.kairosdb.datastore.cassandra.CassandraModule$$FastClassByGuice$$80c3d494.invoke(<generated>)



I'd like to try this out, but not something I can workaround at present.

this is using HEAD of develop from Mar 27th:

Does anybody with knowlege of what this issue is know if this can be worked around?

Thanks

Rob

Brian Hawkins

unread,
Apr 12, 2020, 11:29:56 AM4/12/20
to KairosDB
So this is a problem with the row_keys table.  I wonder what flavor of Cassandra they are running as support for frozen map was added a while ago.  Basically Cassandra supports having a map as a column value and the maps are mutable.  But if you want to use a map as part of a key it cannot be changed thus the frozen key word.

In the pre CQL version of Kairos the I sorted the map and stuck the key values together in a string.  There is no technical reason other than it makes the data easier to read with C* tooling. 

I cannot find anything on this but I think CosmosDB may have the same problem.  I'll look into what it would take to have a flavor of Kairos that used a text field instead of a frozen map.

Brian

Greg Matza

unread,
Apr 13, 2020, 3:38:16 PM4/13/20
to Brian Hawkins, KairosDB
Brian,

FWIW. Our research and information is that Amazon MCS is mostly an API layer in front of Dynamo. So the question is more about what parts of the API they implemented, rather  than what version of Cassandra they are using. We published our research at https://www.scylladb.com/2019/12/04/managed-cassandra-on-aws-our-take/

Greg

--
You received this message because you are subscribed to the Google Groups "KairosDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kairosdb-grou...@googlegroups.com.

Brian Hawkins

unread,
Apr 13, 2020, 7:18:26 PM4/13/20
to KairosDB
Thanks Greg,

I hadn't looked at their pricing for managed cassandra, as you point out in your article it is basically dynamo which is a terrible option for running Kairos against.  The only reason I say it is terrible is that Kairos writes a ton.  Our lab cluster writes about 2 million data points a minute, a rough estimate if that were to be hosted on MCS it would cost us around 7 million/year.  I'll manage anyone's cluster for half that and quit my day job to write kairos code full time ;)

It looks like CosmosDB may be even more expensive for write intensive work loads.  It is hard to tell exactly as they use their RU's for determining price.

Brian

Behzad Behroo

unread,
Apr 20, 2021, 6:12:59 PM4/20/21
to KairosDB
Just wondering if anyone has any update on this topic? Anyone has actually tried to migrate to AWS MCS?

Behzad Behroo

unread,
Jun 9, 2021, 2:10:50 PM6/9/21
to KairosDB
OK update on this. AWS Keyspaces does not support KairosDB. It seems KairosDB was not the best choice for Cassandra and we are moving away from it.

Greg Matza

unread,
Jun 9, 2021, 2:17:09 PM6/9/21
to Behzad Behroo, KairosDB
Behzad,

You are free to try Scylla instead of Cassandra. It uses all the Cassandra API. And I know, from our experience and dozens of other Kairos users, that it works well under Kairos. 

If you are looking for a managed service on AWS, Scylla Cloud is available. If you want to run your own infrastructure, you can use either the free Scylla version, or the supported Scylla Enterprise. 

Greg



--
You received this message because you are subscribed to the Google Groups "KairosDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kairosdb-grou...@googlegroups.com.

Behzad Behroo

unread,
Jun 9, 2021, 2:22:18 PM6/9/21
to KairosDB
Thank you Greg. Will look into Scylla
Reply all
Reply to author
Forward
0 new messages