Apache Cassandra 是一个强大的开源分布式NoSQL数据库,高度的可伸展性。

cassandra

基于DC/OS构建其分布式集群是个非常值得采纳的方法,其基本思路是:

把Cassandra放到Docker里,然后由DC/OS调度Cassandra容器集群运行、管理。

Mesos 的 persistence primitives 是一个新的强大的工具,它使得更多的有状态应用可以运行在 Mesos 上。利用它,可以把 cassandra 集群改造成了一个极易扩展到数百节点的分布式持久化框架。

# dcos package install cassandra
# dcos cassandra help
# dcos cassandra
# dcos cassandra pod list
# dcos cassandra pod info node-0
on master node
# docker run -ti cassandra:3.0.16 cqlsh --cqlversion="3.4.0" 192.168.0.240

cqlsh> CREATE KEYSPACE demo WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 3 };

cqlsh> USE demo;CREATE TABLE map (key varchar, value varchar, PRIMARY KEY(key));

cqlsh:demo> INSERT INTO demo.map(key, value) VALUES('Cassandra', 'Rocks!');
cqlsh:demo> INSERT INTO demo.map(key, value) VALUES('StaticInfrastructure', 'BeGone!');
cqlsh:demo> INSERT INTO demo.map(key, value) VALUES('Buzz', 'DC/OS is the new black!');

cqlsh:demo> SELECT * FROM demo.map;

# docker image ls
# docker run cassandra:3.0.16 &
# docker ps
# docker exec -ti 1d001728d86d cqlsh --cqlversion="3.4.0"

你也可关注与评估Cassandra商业发行版DataStax Enterprise:datastax-dse 和 datastax-ops

In production, the DSE nodes should be operated with 32 GB of memory and 16 GB of heap.

此外,ScyllaDB兼容Cassandra,速度更快,每节点每秒可处理 100 万 TPS。

如何评价 ScyllaDB

ScyllaDB性能是Cassandra的10多倍(3台ScyllaDB可以提供30台Cassandra集群的吞吐量,而且响应延时更低),ScyllaDB的CTO兼创始人Avi Kivity是大名鼎鼎的KVM作者。


发表评论

OpenID

电子邮件地址不会被公开。 必填项已用*标注

Anonymous

电子邮件地址不会被公开。 必填项已用*标注