关于同步组件

同步组件扩展了基本导入组件,以支持可以相互比较的导入周期,以便删除或标记上一个周期中不再存在的资产。

同步组件的一个典型用例是使存储在外部系统中的数据与Collibra中的资产保持同步,或者使描述外部系统的元数据保持最新。新万博移动客户端更一般地说,这个组件允许同步任何可以作为一个组一起处理的资源集,并使它们保持最新。狗万新闻c随着时间的推移,越来越多的数据从外部系统中添加、修改或删除。检测被删除的数据通常是一个挑战,但是同步组件通过比较当前同步和前一个同步来解决这个问题。当前同步周期中不再存在的内容将被认为不再存在于外部系统中。在周期的终结步骤中,您可以选择删除这些缺失的资产,或者用特定的状态标记它们。

在此基础上,同步组件允许多个导入REST调用成为同一个周期的一部分,从而允许摄取大量数据。最后,一个显式完成REST调用完成了这个循环。

同步由A标识同步ID.所有带有相同同步ID的REST命令形成一个同步。不同同步id的命令之间是独立的。这允许您并行地运行多个同步,而不会相互干扰。

一般来说,一个同步周期由一系列的进口接下来的步骤是终结结束循环的步骤。每个导入步骤都以与常规导入相同的方式添加或更新资源,但使用不同的R狗万新闻cEST端点。该专用端点还将在幕后存储额外的元数据,以允许同步组件跟踪从一个周期到另一个周期的更改。为了完成周期,终结步骤将在此周期中添加或更新的资产与前一个周期中的资产进行比较。

当一个周期开始时,属于前一个周期的所有资产都被认为是不活跃的。在周期中,更新的所有资产都是活动的。在周期的末尾,在结束步骤中,所有仍然不活动的资产要么被删除,要么被删除他们的状态改变了吗,取决于你的选择。当您选择状态更改时,新状态将通过状态将资产标记为已删除,而不是实际删除它们。这样做的好处是不会丢失与这些资产相关的任何信息,而且如果资产的缺失是暂时性的(例如由于技术问题、暂时失去权限等),还能够恢复它们。当同步周期通过状态更新标记为已删除的资产时,通过自动将其状态更改回默认状态来恢复该资产,默认状态是该资产类型支持的状态列表中的第一个状态。

强烈建议在提交终结命令之前总是检查一组导入命令的结果。循环中失败的导入可能导致资产在结束步骤中被错误删除,因为一些操作已经被取消。目前,终结步骤不会在同一周期内检查失败的导入命令,因为它无法判断失败的导入是已经手动修复还是通过新的导入提交修复。

循环实际上是隐式的,没有任何特定的标识符。因此,在提交终结步骤之前,使用特定同步ID提交的导入将被视为属于当前周期。从这一点开始,我们将认为所有具有相同同步ID的传入命令都将是下一个周期的一部分。目前,如果前一个周期正在进行,同步组件不允许任何新的周期开始。一旦提交了终结步骤,所有引用同一同步ID的进一步请求将被自动拒绝,直到该终结步骤完成。

同步组件备注

  • 同步导入步骤具有专用的REST端点,这些端点与常规导入组件使用的端点不同。
  • 一个特定的REST端点可以在一个REST调用中提交一个完整的周期。该端点应该仅用于小于50,000个资源的小型有效负载。狗万新闻c它只支持在周期结束时删除资产。使用常规的“批处理”端点来更改状态。
  • 每次同步都在数据库中存储一些元数据,以跟踪进度并比较周期。如果您认为不再需要同步,则可以使用delete REST命令删除该数据并回收数据库空间。
  • 只有在使用显式的finalize步骤时,才可以使用资产的状态将其标记为已删除。允许在一个REST调用中执行一个完整周期的API不支持该特性,未更新的资产将被删除。
  • 目前没有任何方法可以阻止两个或多个不同的同步来更新相同的资产。然而,当面临资产删除或同步的并行执行时,这可能导致不可预测的行为。因此建议不要在不同的同步之间共享资产。