Cassandra经常被问到的问题(二)

栏目: 数据库 · 发布时间: 6年前

内容简介:Cassandra经常被问到的问题(二)

9 我可以通过批量提交加速我的大量写入吗?

不,使用批量提交只会带来延迟尖峰,使用异步的INSERT来代替,或者使用真正的“批量载入”

对同一个分区key的批量更新是一个例外,只要一个批量的大小保持在合理范围内,还是有好处的,但是要记住不要任何时候都盲目使用批量。

10、在Red Hat企业版(RHEL)中,节点无法加入到集群中。

查看SELinux是否开启了,把它关掉。

11、我怎么取消订阅apache cassandra邮件列表

发邮件到user-unsubscribe@cassandra.apache.org

12、为什么使用top命令看到cassandra使用了比 java 虚拟机限制的对内存还要多的内存?

cassandra内部使用内存映射文件(mmap). 也就是锁,我们使用操作系统的虚拟内存系统把一定数量的磁盘文件映射到了cassandra进程的地址空间里。这将使用虚拟内存,也就是地址空间,这可以使用一些 工具 例如top命令发现,不过在64位操作系统中,虚拟地址空间是无限大的,所以你不需要担心这些。

那使用的内存的所代表的意义是什么呢?它是使用brc()或者mmap所实际占用的内存,问题的关键是,对于mmap的文件不一定会永久驻留在内存里。所以这些使用的内存不过是缓存而已,就像系统的IO会使用内核的page缓存一样。

一般的IO和mmap的差别就在于mmap引擎的内存是映射到某个进程上的,所以你用top命令可以看到该进程对应的虚拟内存大小。mmap比IO的一个好处是只要内存里有,你里面就能读到了,不会碰到page fault(读系统page缓存,内核可能需要做semi-context切换?),更多细节参考http://www.varnish-cache.org/trac/wiki/ArchitectNotes

13、种子节点是什么?

种子节点用于节点启动的时候发现整个集群。

如果你配置了你的节点指向几个节点作为种子,那么你集群中的节点会发送相比非种子节点较多的gossip信息到种子节点。换句话说:种子节点相当于gossip网络的集线器,每个节点通过种子节点可以很快知道其他节点的状态。

在一个节点新加入集群的时候,需要指定种子节点用于发现集群中其它节点,当你增加一个新节点到集群中的时候,你需要至少指定一个活着的种子节点可以连接,一旦一个节点加入这个集群,它学习到了其它节点,他在下次启动的时候就不需要种子节点了。

你可以任何时候设置任何一个节点为种子, 对于种子节点没有什么特殊的,只要你把它写入种子列表里,他就是一个种子节点。

种子是无法自启动的(bootstrap)(因为如果一个节点把自己加入了种子列表,那就是说他需要自己传输数据给自己),如果你需要这样,你可以先把这个节点当非种子节点启动,等启动以后再把它加入种子列表里。当然如果你是初始化一个新集群,没有任何数据,那你就不需要担心这个事情了。

提醒以下两点:

为每个Data center都选择大于两个节点作为种子节点

保持你所有节点种子列表是一样的。


以上所述就是小编给大家介绍的《Cassandra经常被问到的问题(二)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

联盟

联盟

里德•霍夫曼、本•卡斯诺查、克里斯•叶 / 路蒙佳 / 中信出版社 / 2015-2-5 / 39.00元

在充满变化的世界,联盟潜在的合伙人 将不确定的行业转变为可掌控的职业生涯 与世界紧密连接,开创精彩的事业与未来 终生效忠于一家公司已经成为历史,我们正在经历的自由雇佣制——将员工看作自由人——无法建立创新所需的高度信任与合作的关系。 互联网时代,企业如何用全新的人才策略定义员工的忠诚?未来职业成功的秘诀是什么? 《联盟》提供了一种使雇主与员工之间从商业交易转变为互惠关......一起来看看 《联盟》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

SHA 加密
SHA 加密

SHA 加密工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具