sstablepartitions
识别 SSTable 的大型分区,并输出分区大小(以字节为单位)、行数、单元格数和墓碑数。
您可以提供任意数量的 SSTable 文件路径或包含 SSTable 的目录。每个 SSTable 将单独分析。
如果提供了指标阈值,例如 `--min-size`、`--min-rows`、`--min-cells` 或 `--min-tombstones`,则输出中将打印超过阈值的 partition key。它还会打印表的指标摘要。指标中的百分位数是估计值,而 min/max/count 指标是准确的。
此工具的默认输出旨在供人眼阅读。未来的版本可能会包含小的格式更改或呈现可能欺骗读取它的脚本的新数据。脚本或其他自动工具应使用 `--csv` 标志来生成机器可读的输出。未来的版本不会更改 CSV 输出的格式,除非可能添加新列,因此使用输出的适当 CSV 解析器应该继续工作。
在执行此工具之前,Cassandra 不需要运行。
用法
sstablepartitions <options> <sstable 文件或目录>
-t, --min-size <arg> |
分区大小阈值,以字节数或带单位的大小表示,形式为 10KiB、20MiB、30GiB 等。 |
-w, --min-rows <arg> |
分区行数阈值。 |
-c, --min-cells <arg> |
分区单元格数阈值 |
-o, --min-tombstones <arg> |
分区墓碑数阈值。 |
-k, --key <arg> |
要包含的分区键,而不是扫描所有分区。 |
-x, --exclude-key <arg> |
要排除的分区键。 |
-r, --recursive |
递归扫描 SSTable |
-b, --backups |
扫描目录时包含数据目录中存在的备份 |
-s, --snaphsots |
扫描目录时包含数据目录中存在的快照 |
-u, --current-timestamp <arg> |
TTL 过期计算的时间戳(自纪元以来的秒数,单位时间)。 |
-y, --partitions-only |
仅简要分区信息。从进程和输出中排除每个分区的详细行/单元格/墓碑信息。 |
-m, --csv |
生成 CSV 输出(机器可读) |
示例
分析单个 SSTable 的分区统计信息
将 SSTable 文件的路径用作唯一参数。
示例
sstablepartitions data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db Processing k.t-d7be5e90e90111ed8b54efe3c39cb0bb #8 (big-oa) (1.368 GiB uncompressed, 534.979 MiB on disk) Partition size Row count Cell count Tombstone count ~p50 767.519 KiB 770 1916 0 ~p75 2.238 MiB 2299 5722 0 ~p90 3.867 MiB 3311 9887 50 ~p95 16.629 MiB 14237 42510 446 ~p99 148.267 MiB 126934 379022 1331 ~p999 368.936 MiB 315852 943127 2759 min 56.854 KiB 100 150 0 max 356.067 MiB 310706 932118 2450 count 210
分析目录中所有 SSTable 的分区统计信息
将 SSTable 目录的路径用作唯一参数。
示例
sstablepartitions data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb Processing k.t-d7be5e90e90111ed8b54efe3c39cb0bb #8 (big-oa) (1.368 GiB uncompressed, 534.979 MiB on disk) Partition size Row count Cell count Tombstone count ~p50 767.519 KiB 770 1916 0 ~p75 2.238 MiB 2299 5722 0 ~p90 3.867 MiB 3311 9887 50 ~p95 16.629 MiB 14237 42510 446 ~p99 148.267 MiB 126934 379022 1331 ~p999 368.936 MiB 315852 943127 2759 min 56.854 KiB 100 150 0 max 356.067 MiB 310706 932118 2450 count 210 Processing k.t-d7be5e90e90111ed8b54efe3c39cb0bb #9 (big-oa) (457.540 MiB uncompressed, 174.880 MiB on disk) Partition size Row count Cell count Tombstone count ~p50 1.865 MiB 1597 4768 0 ~p75 13.858 MiB 14237 42510 0 ~p90 28.735 MiB 29521 73457 50 ~p95 34.482 MiB 29521 88148 8239 ~p99 49.654 MiB 42510 126934 14237 ~p999 49.654 MiB 42510 126934 14237 min 47.272 KiB 100 150 0 max 45.133 MiB 39429 118287 13030 count 57
仅输出大小超过 100MiB 的分区
使用 `--min-size` 选项指定分区要包含在输出中必须具有的最小大小。
示例
sstablepartitions data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db --min-size 100MiB Processing k.t-d7be5e90e90111ed8b54efe3c39cb0bb #8 (big-oa) (1.368 GiB uncompressed, 534.979 MiB on disk) Partition: '13' (0000000d) live, size: 105.056 MiB, rows: 91490, cells: 274470, tombstones: 50 (row:50, range:0, complex:0, cell:0, row-TTLd:0, cell-TTLd:0) Partition: '1' (00000001) live, size: 127.241 MiB, rows: 111065, cells: 333195, tombstones: 50 (row:50, range:0, complex:0, cell:0, row-TTLd:0, cell-TTLd:0) Partition: '8' (00000008) live, size: 356.067 MiB, rows: 310706, cells: 932118, tombstones: 0 (row:0, range:0, complex:0, cell:0, row-TTLd:0, cell-TTLd:0) Partition: '2' (00000002) live, size: 213.341 MiB, rows: 186582, cells: 559125, tombstones: 978 (row:978, range:0, complex:0, cell:0, row-TTLd:0, cell-TTLd:0) Summary of k.t-d7be5e90e90111ed8b54efe3c39cb0bb #8 (big-oa): File: /Users/adelapena/src/cassandra/trunk/data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db 4 partitions match Keys: 13 1 8 2 Partition size Row count Cell count Tombstone count ~p50 767.519 KiB 770 1916 0 ~p75 2.238 MiB 2299 5722 0 ~p90 3.867 MiB 3311 9887 50 ~p95 16.629 MiB 14237 42510 446 ~p99 148.267 MiB 126934 379022 1331 ~p999 368.936 MiB 315852 943127 2759 min 56.854 KiB 100 150 0 max 356.067 MiB 310706 932118 2450 count 210
仅输出墓碑数超过 1000 的分区
使用 `--min-tombstones` 选项指定分区要包含在输出中必须具有的最小墓碑数。
示例
sstablepartitions data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db --min-tombstones 1000 Processing k.t-d7be5e90e90111ed8b54efe3c39cb0bb #8 (big-oa) (1.368 GiB uncompressed, 534.979 MiB on disk) Partition: '55' (00000037) live, size: 1.290 MiB, rows: 2317, cells: 3474, tombstones: 1159 (row:1159, range:0, complex:0, cell:0, row-TTLd:0, cell-TTLd:0) Partition: '28' (0000001c) live, size: 1.198 MiB, rows: 2099, cells: 3147, tombstones: 1050 (row:1050, range:0, complex:0, cell:0, row-TTLd:0, cell-TTLd:0) Partition: '89' (00000059) live, size: 1.346 MiB, rows: 2226, cells: 3339, tombstones: 1113 (row:1113, range:0, complex:0, cell:0, row-TTLd:0, cell-TTLd:0) Partition: '21' (00000015) live, size: 3.853 MiB, rows: 4900, cells: 9927, tombstones: 2450 (row:2450, range:0, complex:0, cell:0, row-TTLd:0, cell-TTLd:0) Summary of k.t-d7be5e90e90111ed8b54efe3c39cb0bb #8 (big-oa): File: /Users/adelapena/src/cassandra/trunk/data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db 4 partitions match Keys: 55 28 89 21 Partition size Row count Cell count Tombstone count ~p50 767.519 KiB 770 1916 0 ~p75 2.238 MiB 2299 5722 0 ~p90 3.867 MiB 3311 9887 50 ~p95 16.629 MiB 14237 42510 446 ~p99 148.267 MiB 126934 379022 1331 ~p999 368.936 MiB 315852 943127 2759 min 56.854 KiB 100 150 0 max 356.067 MiB 310706 932118 2450 count 210
输出 CSV 机器可读输出
使用 `--csv` 选项输出 CSV 机器可读输出,并结合任何阈值。
示例
sstablepartitions data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db --min-size 100MiB --csv key,keyBinary,live,offset,size,rowCount,cellCount,tombstoneCount,rowTombstoneCount,rangeTombstoneCount,complexTombstoneCount,cellTombstoneCount,rowTtlExpired,cellTtlExpired,directory,keyspace,table,index,snapshot,backup,generation,format,version "13",0000000d,true,186403543,110158965,91490,274470,50,50,0,0,0,0,0,/Users/adelapena/src/cassandra/trunk/data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db,k,t,,,,8,big,oa "1",00000001,true,325141542,133422183,111065,333195,50,50,0,0,0,0,0,/Users/adelapena/src/cassandra/trunk/data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db,k,t,,,,8,big,oa "8",00000008,true,477133752,373362819,310706,932118,0,0,0,0,0,0,0,/Users/adelapena/src/cassandra/trunk/data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db,k,t,,,,8,big,oa "2",00000002,true,851841363,223704192,186582,559125,978,978,0,0,0,0,0,/Users/adelapena/src/cassandra/trunk/data/data/k/t-d7be5e90e90111ed8b54efe3c39cb0bb/oa-8-big-Data.db,k,t,,,,8,big,oa