注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。
以下列表描述了在保留应用程序中配置保留策略时可用的事务选择器。
此格式
中的文本表示可以在每个策略上定义的参数。
删除仅出现在给定分支中的事务。
接受 1 个参数: branch
示例: "仅在分支 main
"
设置 "仅在分支 main
" 不会删除前两个 SNAPSHOT
事务,因为它们也是功能分支上 SNAPSHOT
事务的根事务。
删除除给定分支中的事务以外的所有事务。
接受 1 个参数: branch
示例: "不在分支 main
"
事务计数选择器允许您定义要保留的事务。它不是用于指示将被删除的事务。
仅保留在任何分支上最近的 number of transaction to retain
个数据包含事务中的事务。事务定义为数据包含事务,当且仅当以下语句为 true:
DELETE
事务。所有中止的事务都不是数据包含事务,将被删除。由于此选择器不区分 SNAPSHOT
、APPEND
或 UPDATE
事务,我们建议在增量管道中使用 viewCount
选择器。
接受 1 个参数: number of transactions to retain
示例: "事务计数 2
"
此选择器确保每个分支至少有 2
个 SNAPSHOT
事务可用。功能分支可能有 3 个事务;最旧的事务也是分支 main
上的第 2 个事务,因此不会被删除。
视图计数选择器允许您定义要保留的视图中的事务。它不是用于指示将在视图中删除的事务。
视图计数选择器仅保留最后 number of views to retain
个数据集视图中的事务。由于视图定义为仅包含已提交的事务,因此任何中止的事务也将被删除。例如,numViewsToRetain: 1
意味着所有在最新视图之前的事务(即,所有在最新 SNAPSHOT
事务之前的事务)和所有中止的事务都将被删除。
接受 1 个参数: number of views to retain
示例: "视图计数 1
"
选择早于给定持续时间的事务。
接受 1 个参数: duration
对于具有投影的数据集,此选择器选择已传播到所有投影的事务。
此选择器选择所有不在最新视图中的事务(以及当前在视图中但所有文件已被更新事务中的文件取代的所有事务)。这对于在最新视图中有许多事务的数据集很有用,并且应仅与 允许从最新视图删除
标志一起使用。
选择仅存在于早于给定持续时间的视图中的事务。视图的年龄定义为视图中最新事务的关闭时间与现在之间的时间。如果视图中有一个开放事务,则该视图中的任何事务都不会被删除。
接受 1 个参数: duration
选择派生的事务。这些是通过运行搭建生成的事务。从手动上传数据或通过数据连接创建的事务不被视为派生事务。