0

我有一个用例(通过 Java 应用程序将数据从 Oracle 迁移到 MongoDB),我需要在其中实施事务管理以确保数据存储中的“全有或全无”。

  1. 从 Oracle 表中读取输入数据(例如:sourcetable)。
  2. 使用该输入执行两个单独的存储过程并处理输出游标并构造两个不同的 Mongo 文档(分别对同一数据源 [collection1 和 collection2] 中的两个不同集合感兴趣)。
  3. 如果上述步骤成功完成,则将上述 Oracle 表(例如:sourcetable)更新为迁移成功状态。
  4. 仅当上述所有步骤都成功完成后,才执行提交(MongoDB 和 Oracle)。
  5. 如果任何步骤出现任何错误,则对整个事务执行回滚。

我看到 Oracle 提供了两阶段提交,而 MongoDB 提供了分布式事务来分别实现这些事情,但我一直在寻找共同实现它的方法。另外,我不知道如何实现它,或者这是否是我用例的正确解决方案。我非常感谢任何指导或伪代码实现。

注意:所有这些过程都将在分布式环境中执行。

4

0 回答 0