Cassandra 文档

版本

您正在查看预发布版本的文档。

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