Cassandra Compacted 分区的最大字节大小高于用于 table 的总 space
Cassandra Compacted partition maximum byte size is higher than total space used for the table
我正在使用 Cassandra 版本 2.1.13.1218 和 cqlsh 版本 5.0.1。
对于给定的 table,当我使用 运行 cfstats
命令时,压缩分区的最大字节数大于 Space 使用的(总计)。例如:
Compacted partition maximum bytes: 4.64 MB
和
Space used (total): 2.28 MB.
table 使用的总 space 应该总是更高,因为所有 large/small 分区大小都是给定 table 的总 space 的一部分.压缩分区的最大字节大小如何高于用于 table 的总 space?
命令是:./cqlsh cfstats keyspace.columnfamilyname -H
有人可以帮助我理解这一点以及 Space 使用(实时)和 Space 使用(总)之间的区别吗?
使用的 Space 表示 table 在磁盘上使用了多少 space。这取决于 OS 和压缩率。
而 Compacted partition max bytes 只是遇到的最大分区大小(压缩后)。这是基于数据 modeling/schema 和使用的逻辑记录大小。例如,100kb 的记录大小乘以 40 条记录(每条记录进入同一个分区)将得到 4MB 的分区。
当它位于磁盘上时,它可能会被进一步压缩,您可能会获得 2MB 的磁盘空间。您也可以分享其余的统计数据吗(ex、min 和 avg 大小的压缩信息,键数)?
我正在使用 Cassandra 版本 2.1.13.1218 和 cqlsh 版本 5.0.1。
对于给定的 table,当我使用 运行 cfstats
命令时,压缩分区的最大字节数大于 Space 使用的(总计)。例如:
Compacted partition maximum bytes: 4.64 MB
和
Space used (total): 2.28 MB.
table 使用的总 space 应该总是更高,因为所有 large/small 分区大小都是给定 table 的总 space 的一部分.压缩分区的最大字节大小如何高于用于 table 的总 space?
命令是:./cqlsh cfstats keyspace.columnfamilyname -H
有人可以帮助我理解这一点以及 Space 使用(实时)和 Space 使用(总)之间的区别吗?
使用的 Space 表示 table 在磁盘上使用了多少 space。这取决于 OS 和压缩率。 而 Compacted partition max bytes 只是遇到的最大分区大小(压缩后)。这是基于数据 modeling/schema 和使用的逻辑记录大小。例如,100kb 的记录大小乘以 40 条记录(每条记录进入同一个分区)将得到 4MB 的分区。
当它位于磁盘上时,它可能会被进一步压缩,您可能会获得 2MB 的磁盘空间。您也可以分享其余的统计数据吗(ex、min 和 avg 大小的压缩信息,键数)?