【发布时间】:2017-04-09 08:47:29
【问题描述】:
我的 OpsCenter 在 Tombstone 计数性能服务上给了我“失败”的结果。我看了this paper,发现可能是NULL的插入值是随便的。
所以我尝试使用以下程序解决此问题:
将表
channels和articles的NULL列设置为''。并且出于检查原因,这两个表中没有任何插入。使用以下命令将
gc_grace_seconds设置为0:alter table channels with gc_grace_seconds = 0 alter table articles with gc_grace_seconds = 0在
OpsCenter键空间中截断bestpractice_results表。使用以下命令重新启动代理和 OpsCenter:
service datastax-agent restart service opscenterd restart
但是,当 OpsCenter 运行例行性能检查(每 1 分钟)时,再次出现以下“失败”信息。并且墓碑数量不变(即23552和1374)
我有一个问题:
- 在两个表上没有任何插入操作时如何删除这些墓碑?
我需要
repair集群吗?
OpsCenter 版本:6.0.3 Cassandra 版本:2.1.15.1423 DataStax Enterprise 版本:4.8.10
【问题讨论】:
-
您还必须触发压缩,以便从数据文件中删除墓碑。
-
谢谢。我已经使用命令
nodetool -p portNumber compact keyspace channels触发了压缩,但是墓碑的数量仍然没有改变。我应该rebootdatastax 吗? -
当然不需要重新启动。你在每个节点上运行压缩?
-
我按照link 运行
compactfor tablechannels,我认为compact是table 的概念。如何为每个节点运行 compact ? -
您需要对每个节点重复 nodetool 命令。使用
-h指定运行节点的主机。