在 Palantir Foundry 的 Data Connection 工具中,交易类型选项有什么区别?

In Palantir Foundry's Data Connection tool, what's the difference between the transaction type options?

在数据连接中设置基于文件的同步时,我发现 'Transaction Type' 有几个不同的选项。它们之间有什么区别?我什么时候可以使用它们?

来自Foundry docs


交易类型

在事务中修改数据集文件的方式取决于事务类型。有四种可能的交易类型:SNAPSHOTAPPENDUPDATEDELETE.

SNAPSHOT

SNAPSHOT 事务用一组全新的文件替换了数据集的当前视图。

SNAPSHOT交易是最简单的交易类型,是batch pipelines的基础。

APPEND

APPEND 事务将新文件添加到当前数据集视图。

APPEND 事务无法修改当前数据集视图中的现有文件。如果打开 APPEND 事务并覆盖现有文件,则尝试提交事务将失败。

APPEND 交易是 incremental pipelines. By only syncing new data into Foundry and only processing this new data throughout the pipeline, changes to large datasets can be processed end-to-end in a performant way. However, building and maintaining incremental pipelines comes with additional complexity. Learn more about incremental pipelines.

的基础

UPDATE

UPDATE 事务,如 APPEND,将新文件添加到数据集视图,但也可能覆盖现有文件的内容。

DELETE

DELETE 事务删除了当前数据集视图中的文件。

请注意,提交 DELETE 事务不会从后备文件系统中删除基础文件——它只是从数据集视图中删除文件引用。

实际上,DELETE 事务主要用于启用数据保留工作流。通过基于保留策略(通常基于文件的年龄)删除数据集上的文件,可以从 Foundry 中删除数据,以最大限度地降低存储成本并遵守数据治理要求。


数据连接不允许您创建具有 DELETE 事务类型的同步,因为纯粹删除数据的同步没有任何意义!如果您想从同步的数据集中删除数据,可以使用 SNAPSHOT 事务来执行此操作,但请注意,以前版本的数据集仍将包含这些文件。

您可以将 APPEND 或 UPDATE 事务类型与 file-based sync filters 结合使用,以便在每次 运行 同步时仅提取新更改的文件。