历史查询
Vertica 可以执行历史查询,这些查询针对在特定时间戳或时期获取的数据库快照执行。历史查询可用于评估并可能恢复已删除但尚未清除的数据。
您可以通过限定包含
AT epoch
子句的
SELECT
语句来指定历史查询,其中 epoch 为以下内容之一:
-
EPOCH LATEST:返回数据直到当前时期(但不包括当前时期)。结果集包括来自最新提交的 DML 事务的数据。
-
EPOCH integer:返回数据直到 integer 指定的时期(包括该指定时期)。
-
TIME 'timestamp':从 timestamp 指定的时期返回数据。
注意
这些选项用于查询临时表或外部表。有关 Vertica 如何使用时期的详细信息,请参阅时期。
历史查询仅返回指定时期的数据。由于它们不返回最新数据,因此历史查询不包含锁定或阻塞写操作。
查询结果对于事务而言是私有的,并且只在会话时长内有效。无论事务隔离级别如何,查询执行都是相同的。
限制
-
指定时期或指定时间戳的时期不能小于 Ancient History Mark 时期。
-
Vertica 不支持对临时表运行历史查询。