結果整合性システムと従来の ACID システムを混在させるパターンはありますか?
ACID のようなトランザクションを必要とするメインフレーム上の一部 (少なくとも 2 つ) のレガシー システムにデータを保存したいと考えています。これらのメインフレーム データベース (OldWorld と呼びましょう) は、同じプロセス内の同じトランザクション マネージャーの下で実行されているため、メインフレーム システムの一貫性は問題ありません。
非メインフレーム環境 (これを NewWorld と呼びましょう) で mainframe-tm および ACID 対応のリレーショナル データベースを使用して XA-Transactions を処理できるトランザクション マネージャーがあります。しかし、私は XA-Transaction を使用したくありません。これは、メインフレーム側で実行時間の長いロックで問題が発生することが多く、多くの場合、両方の世界ですべての ACID 機能を必要としないためです。私は常に一貫したメインフレームを望んでいます (OldWorld のすべてのデータは OldWorld 内で一貫しています)。NewWorld System は、メインフレーム側からデータを読み取る際に、不整合データ (新旧の不一致) を処理できます。OldWorld にデータを格納するために使用される操作は簡単で、機能的に失敗しない「追加のみの操作」を節約できます (技術的に失敗する可能性がありますが、これは常に一時的な失敗である必要があります)。