2

Cassandra でカウンター列ファミリーを切り捨てる場合、カウンターは単一の列または行を削除するのと同じ制限を受けますか?

列ファミリーを削除して再作成して完全に消去する必要がありますか?それとも切り詰めても問題ありませんか?

4

1 に答える 1

5

問題は同じです。削除または切り捨てと増分を同時に行っている場合、結果は未定義です。

問題は、delete が実質的にカウンター値をゼロに設定していることです。切り捨ては、すべてのカウンター値をゼロに設定しています。'set' 操作は 'inc' 操作と交換されないため、同時操作が混在すると予測できない結果が生じます。

インクリメントを行っていないか、一時停止できる場合は、切り捨てを行っても完全に安全です。列ファミリーを削除する必要はありません。増分を停止できない場合は、クライアントによって異なります。列ファミリを削除すると、再作成されるまでクライアントが失敗します。クライアントがこれらのエラーに耐えて続行できる場合は、動作する可能性があります。ただし、インクリメントを一時的に一時停止するのが最善です。

于 2013-06-26T11:21:23.453 に答える