驱动程序支持两种数据同步模式: 直接和间接。 要最深入地理解这两个术语,需要结合所同步的数据的最终目标。
|
模式 |
关联 |
说明 |
|---|---|---|
|
直接 |
通常与视图关联 |
视图可提供能够最大程度地简化与现有客户表进行集成的抽象机制。 |
|
间接 |
通常与表关联 |
客户表可能与驱动程序要求的结构不匹配。 因此,通常有必要创建一个与驱动程序要求的结构相匹配的中间临时表。 尽管结构有可能匹配,但这种可能性极小。 |
以下各节介绍直接同步和间接同步如何在《订购者》和《发布者》通道上工作。
间接同步使用中间临时表来同步 Identity Vault 和数据库之间的数据。
下图说明间接同步如何在《订购者》和《发布者》通道上工作。 在以下实例中,可以使用一个或多个客户表和中间临时表。
Figure 1-2 订购者通道上的间接同步

《订购者》通道更新同步纲要中的中间临时表。 然后,同步触发器将更新数据库中其它位置的客户表。
Figure 1-3 发布者通道上的间接同步

更新客户表后,同步触发器将更新中间临时表。 然后,发布触发器将一个或多个行插入到事件日志表中。 接着,《发布者》通道将读取插入的行并更新 Identity Vault。
根据从事件日志表中读取的行内容,《发布者》通道在更新 Identity Vault 之前,可能需要从中间表中检索其它信息。 更新 Identity Vault 后,《发布者》通道随即删除行或将行标记为已处理。
直接同步通常使用视图来同步 Identity Manager 和数据库之间的数据。 如果表符合 Driver for JDBC 要求的结构,则可以使用表。
下图说明直接同步如何在《订购者》和《发布者》通道上工作。 在以下实例中,可以使用拥有一个或多个客户视图或表。
Figure 1-4 订购者通道上的直接同步

《订购者》通道通过同步纲要中的视图更新现有的客户表。
NOTE:仅当客户表与 Driver for JDBC 所要求结构相匹配时,才可以在不使用视图的情况下进行直接同步。有关其它信息,请参见间接同步。
Figure 1-5 发布者通道上的直接同步

更新客户表后,发布触发器将行插入到事件日志表中。 然后,《发布者》通道将读取插入的行并更新 Identity Vault。
根据从事件日志表中读取的行内容,《发布者》通道在更新 Identity Vault 之前,可能需要从视图中检索其它信息。 更新 Identity Vault 后,《发布者》通道随即删除行或将行标记为已处理。