首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Cassandra config 配置

上一篇已经介绍过Cassandra数据库的编译以及安装,本篇开始介绍Cassandra数据库的配置文件里的基本配置项,这些基本配置项会影响数据库的启动,以及数据库的运行性能,这边会分基本配置调优配置进行分别介绍。

所有的配置都在cassandra的安装目录下面的conf里,conf目录下面有cassandra.yaml这个文件,所有的配置都可以通过修改这个文件而达到目的;

基本配置

比较关键的几个配置有:cluster name,partitioner,snitch,以及seed nodes的配置。如上图,我们知道一个cassandra的集群是由多个节点组成的,每一个节点可以一个物理机,虚拟机,或者是一个进程等等,由这些节点组成了cassandra的集群。那么这个集群中的各个节点的cassandra.yaml里的cluster name,partitoner,snitch都至少需要保持一致才可以,seed nodes 虽然不强制需要保持一致,但是建议最好是一致的,而且我们生产环境也是保持一致的。

Partitioner

endpoint_snitch

failure_policy

注意

如果num_tokens不配置,而选择initial_token的话,需要手工的基于partitioner的规则去计算各个节点的inital_token值,这样的好处是可以人工控制各个节点的管理token范围,但是集群的各个节点建议均分所有的token存储范围,且扩容的时候建议成倍的扩容;num_tokens的好处是不需要手工计算和配置,缺点是每个token是随机计算的,实际上各个节点负责的这些token以及对应范围是不可控;

上面说了snitch 应该配合副本放置策略进行配合,这个放置规则主要是在建keyspace的时候设置的,这里我们简单的介绍写副本放置策略,也就是一个表他在集群中如果设置了多副本,比如3副本的话,这3个副本应该是怎么样的放置规则呢?在建表的时候比如如下语句

CREATE KEYSPACE test_keyspace WITH replication =

{'class': 'SimpleStrategy',

'replication_factor': '3'}

class可以有SimpleStrategy和NetworkTopologyStrategy,其中SimpleStrategy意思是:test_keyspace的副本的放置是在一个dc内部,摆放的规则是简单策略,一般是按照node的ip adress的顺序摆放;NetworkTopologyStrategy:副本会穿过多个dc进行摆放,详细的规则后续会介绍;

Replication Factor:这是上面一条提到的副本因子,主要是表示副本数,也是在建表的时候会设置;

下一篇会介绍一些其他的配置,主要是和性能调优cassandra数据库相关的;比如cache的配置等;完事以后会介绍如果建表以及使用datastax的java-driver访问数据以及对应的数据模型;等等

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190120G123EJ00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券