cassandra compaciton

问题描述

cassandra compaciton

cassandra 2.1.1 默认的compaction策略是SizeTieredCompactionStrategy
min 4
max 32

说是sstable 个数4-32的的时候会自动触发合并吗
那为什么我在cfs下 wc -l 却还有1000+ 2000+行的

例如
-rw-rw-r-- 1 sll sll 43 May 11 15:33 sll-sll_tb-ka-1222-CompressionInfo.db
-rw-rw-r-- 1 sll sll 274 May 11 15:33 sll-sll_tb-ka-1222-Data.db
-rw-rw-r-- 1 sll sll 9 May 11 15:33 sll-sll_tb-ka-1222-Digest.sha1
-rw-rw-r-- 1 sll sll 176 May 11 15:33 sll-sll_tb-ka-1222-Filter.db
-rw-rw-r-- 1 sll sll 180 May 11 15:33 sll-sll_tb-ka-1222-Index.db
-rw-rw-r-- 1 sll sll 4468 May 11 15:33 sll-sll_tb-ka-1222-Statistics.db
-rw-rw-r-- 1 sll sll 80 May 11 15:33 sll-sll_tb-ka-1222-Summary.db
-rw-rw-r-- 1 sll sll 91 May 11 15:33 sll-sll_tb-ka-1222-TOC.txt

compact 一次 后面的数字是+1

手动compact的话会减少数量
我想问的是为什么会保留这么多的版本 不会自动合并

解决方案

部署的服务器:

192.168.131.172
192.168.131.173
192.168.131.174
步骤:1 配置java运行环境
首先检查服务器上是否安装java运行环境,可直接运行如下命令检查:
java -version
如果安装了的话,会显示当前java的版本,反之则说明该机器没有安装java的运行环境,需安装java的运行环境。
相关命令:yum in......
答案就在这里:Cassandra 集群部署

时间: 2024-07-28 17:38:09

cassandra compaciton的相关文章

Cassandra分布式数据库详解,第1部分:配置、启动与集群

Cassandra 的配置详解 了解一个软件的配置项的意义是使用这个软件的前提,这里详细介绍 Cassandra 的配置文件(storage-config.xml)中各个配置项的意义,这其中包含有很多配置参数,我们可以对其进行调整以达到理想的性能.为了节省篇幅这里没有列出 storage-config.xml 文件的内容,你可以对照着这个文件看下面的内容. ClusterName Cluster Name 代表一个族的标识,它通常代表一个集群.这个配置项在 Cassandra 没有存储数据时就必

Cassandra分布式数据库详解,第2部分:数据结构与数据读写

Cassandra 的数据存储结构 Cassandra 中的数据主要分为三种: CommitLog:主要记录下客户端提交过来的数据以及操作.这个数据将被持久化到磁盘中,以便数据没有被持久化到磁盘时可以用来恢复. Memtable:用户写的数据在内存中的形式,它的对象结构在后面详细介绍.其实还有另外一种形式是 BinaryMemtable 这个格式目前 Cassandra 并没有使用,这里不再介绍了. SSTable:数据被持久化到磁盘,这又分为 Data.Index 和 Filter 三种数据格

Cassandra数据库的基本操作

启动Cassandra之后,我们可以用Cassandra的命令行来执行Cassandra的基本操作: 先启动cassandra-cli 连接到Cassandra服务:(Test Cluster是默认的服务实例,见cassandra.yaml) 创建一个keyspace叫DEMO :(keyspace相当于关系数据库中的数据库) 更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/extra/

Cassandra数据库集群的安装配置

我们使用的是DataStax Community Edition, ,官网对于集群控制中心(opscenter)的配置太简略了,我尝试了10多次才搞定:网上应该没有比我这份更详细的配置说明了. 以下是详细步骤(我全装在 bleum 的192.168.129.34 Linux VM 上了): Part 1: 安装Python 先安装python (这里吃了好多苦头,其实这个集群只支持python2.5,2,6,2,7,  然而事实只有2.5可以.结果我先下了个3.1,后来Linux自带有个2.4,

Cassandra数据库的节点之间交互(gossip)

在讲gossip之前,首先定义什么是Cassandra实例. Cassandra实例: 是一组在集群中的独立节点,所有的节点是对等的. Cassandra节点之间的交互: Cassandra节点之间通过gossip协议(最终一致性原理)来发现其他集群中节点的位置和状态信息.这个gossip协议是peer-to-peer的,不同节点定期(每秒最多和3个其他节点)交换状态信息,这些信息带版本号,所以旧信息会被新的覆盖掉.节点信息配置在cassandra.yaml文件中. 种子节点(节点的代表): 当

Cassandra数据库的数据分区

当启动Cassandra集群时,需要选择数据如何在集群中划分,这个由partitioner来完成. Cluster中管理的所有数据被表示成环(ring).环被划分为和节点数量等同的范围(range). 每个节点加入集群时候,都要发放一个令牌(token),它决定了节点在环中的位置以及负责的数据的range. Column Family(也就是对应关系数据库的表)就是按照分区来的. 配置partitioner,则需要指定分区策略: 更多精彩内容:http://www.bianceng.cnhttp

Cassandra数据库中的冗余(Replication)

什么是Replication? 在Cassandra中,Replication是存储数据的到多个节点来保证可靠性和出错容忍性.当你创建一个keyspace时候(相当于关系数据库中的表)的时候,就必须给出一个副本放置策略 (Replica Placement Strategy) 什么是副本因子(Replica Factor)? 这个数决定了有几份副本,比如如果设置为1,则表示每一行只有一个副本,以此类推.所有的副本地位都是相等的, 没有主从之分.注意,副本因子最多不可以超过节点的数量,(没这么多节

Cassandra数据库中的Snitch

Cassandra中的Snitch是用来告诉Cassandra网络的拓扑结构,比如节点之间的相对距离,节点的如何分组,节点所在的rack,从而对用户请求可以进行高效的路由. 注意:一个集群中的所有的节点都必须采用相同的Snitch策略. Snitch的分类: SimpleSnitch: 这种Snitch是默认的Snitch,当没有机架(rack)或者数据中心时最适用.因为它不会识别任何rack或者Data Center相关信息 RackInferringSnitch: 更多精彩内容:http:/

Cassandra数据库如何处理客户端请求

Cassandra集群中所有节点都是对等的,所以读/写操作可以发生在集群中的任意节点上,也许这个节点并没有需要读/写的数据,所以这个和用户交互的节点就成了coordinator节点. 单数据中心的写请求: 当客户端发送到coordinator节点上,则这个coordinator节点会吧这个写请求发送到集群内所有拥有目标行副本的节点上(target节点),比如: 更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/extra/