本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
STL_VACUUM
显示已真空化的表的行和数据块统计数据。
该视图显示特定于每个 vacuum 操作开始和结束时间的信息,并演示运行该操作的好处。有关运行该命令的要求的信息,请参阅 VACUUM 命令描述。
此视图 仅对超级用户可见。有关更多信息,请参阅 Visibility of data in system tables and views。
表列
列名称 | 数据类型 | 描述 |
---|---|---|
userid | integer | 这些区域有: 生成该条目的用户 ID。 |
xid | bigint | VACUUM 语句的事务 ID。您可以将此表联接到 STL_QUERY 视图以查看为给定 VACUUM 事务运行的各个 SQL 语句。如果您将整个数据库真空化,则将在单独的事务中将每个表真空化。 |
table_id | integer | 这些区域有: 表 ID。 |
status | character(30) |
每个表的 VACUUM 操作的状态。可能的值包括:
有关 VACUUM 排序阈值设置的更多信息,请参阅 VACUUM。 |
rows | bigint | 表中的行加上仍存储在磁盘上的所有已删除的行(正在等待执行 vacuum 操作)的实际数量。此列显示带有 Started 状态的行开始 vacuum 操作之前的计数以及带有 Finished 状态的行完成 vacuum 操作之后的计数。
|
sortedrows | integer | 表中已排序的行的数量。此列显示在“Status (状态)”列中具有 Started 状态的行开始 vacuum 操作之前的计数以及在“Status (状态)”列中具有 Finished 状态的行完成 vacuum 操作之后的计数。
|
blocks | integer | 用于存储 vacuum 操作之前的表数据(带有 Started 状态的行)和 vacuum 操作之后的表数据(Finished 列)的数据块的总数。每个数据块使用 1 MB。
|
max_merge_partitions | integer | 此列用于性能分析并表示 vacuum 可在每个合并阶段迭代中为表处理的分区的最大数量。(Vacuum 将未排序的区域排序为一个或多个已排序的分区。 根据表中的列数和当前 Amazon Redshift 配置,合并阶段可以在单个合并迭代中处理最大数量的分区。 如果已排序分区的数量超过合并分区的最大数量,合并阶段仍将起作用,但需要更多合并迭代。) |
eventtime | timestamp | 当 vacuum 操作开始或完成时。 |
示例查询
以下查询报告表 108313 的 vacuum 统计数据。此表在一系列插入和删除后已执行 vacuum 操作。
select xid, table_id, status, rows, sortedrows, blocks, eventtime from stl_vacuum where table_id=108313 order by eventtime; xid | table_id | status | rows | sortedrows | blocks | eventtime -------+----------+----------------------+------------+------------+--------+--------------------- 14294 | 108313 | Started | 1950266199 | 400043488 | 280887 | 2016-05-19 17:36:01 14294 | 108313 | Finished | 600099388 | 600099388 | 88978 | 2016-05-19 18:26:13 15126 | 108313 | Skipped(sorted>=95%) | 600099388 | 600099388 | 88978 | 2016-05-19 18:26:38
在 VACUUM 启动时,表包含了存储在 280,887 个 1 MB 数据块中的 1,950,266,199 个行。在删除阶段(事务 14294)完成后,vacuum 便回收了已删除行的空间。ROWS 列将显示值 400,043,488,而 BLOCKS 列已从 280,887 个减少到 88,978 个。vacuum 回收了 191,909 个磁盘空间数据块 (191.9 GB)。
在排序阶段(事务 15126),vacuum 无法跳过此表,因为行是按排序键顺序插入的。
以下示例显示在大型 INSERT 操作之后,针对 SALES 表(在此示例中为表 110116)的 SORT ONLY vacuum 操作的统计数据:
vacuum sort only sales; select xid, table_id, status, rows, sortedrows, blocks, eventtime from stl_vacuum order by xid, table_id, eventtime; xid |table_id| status | rows |sortedrows|blocks| eventtime ----+--------+-----------------+-------+----------+------+-------------------- ... 2925| 110116 |Started Sort Only|1379648| 172456 | 132 | 2011-02-24 16:25:21... 2925| 110116 |Finished |1379648| 1379648 | 132 | 2011-02-24 16:26:28...