Cassandra系统提示大分区

Cassandra system hints large partition

我们正在使用 cassandra 2.1.14。目前在 system.hints table 上看到大分区警告。

如何确保 system.hints table 没有宽分区? 请注意,我们现在不想升级到 cassandra 3。

有没有定期清理的方法system.hints?

这会导致 I/O cassandra 集群激增吗?

日志:

 Compacting large partition system/hints:
 10ad72eb-0240-4b94-b73e-eb4dc2aa759a (481568345 bytes)

How to make sure that system.hints table doesn't have wide partitions?

您对此无能为力。 system.hintstarget_id 上分区,这是目标节点的主机 ID。如果为一个节点建立了 10000 个提示,那么它们真的没有其他地方可以去。

Is there a periodic way to clean up system.hints?

如上所述,提示应在 3 小时后 TTL。此故障保护旨在防止 system.hints table 过于失控。但也不是万无一失的。

一种确定的方法是通过 nodetool 清除它们:

nodetool truncatehints

Will this cause I/O spike in cassandra cluster?

运行 nodetool truncatehints 是相当无害的。我之前没有注意到 运行 它的峰值。