web-dev-qa-db-ja.com

2つのトランザクションが同じSCNを共有できますか?

すべてのトランザクションに一意のSCNがありますか? 2つのトランザクションでSCNを共有できますか?

Oracle Golden Gateマニュアルのこの文に混乱しています。

CSNはトランザクションID(Oracle GoldenGateの情報出力ではXIDとして表示されます)とクロスチェックされます。 XIDとCSNの組み合わせは、同時にコミットする複数のトランザクションがあり、したがって同じCSNを持つ場合でも、トランザクションを一意に識別します。たとえば、これはOracle RAC環境で発生する可能性があり、並列処理とトランザクションの同時実行性が高くなります。

https://docs.Oracle.com/goldengate/1212/gg-winux/GWUAD/wu_csn.htm#GWUAD752

そのドキュメントの表D-1は、GoldenGate CSNがOracle DB SCNであることを示しています。

Oracle GoldenGate CSN Values Per Database

Oracle:  system_change_number
Where:   system_change number is the Oracle SCN value.
4
Mark Harrison

単一ノードのOracle RDBMSインストールの場合、SCNが複製されることはありません。

古いバージョンのOracle RAC、たとえばOracle 9iでは、別々のRACノードで実行されている2つのトランザクションが同じSCNになる可能性がありました。重複が発生するのは、RACノードでの高いトランザクションレートとMAX_COMMIT_PROPAGATION_DELAYの大きな値が組み合わされたまれな状況のみでした。

バージョン11gR2以降のOracle RACインストールでは、RACノードはデフォルトでブロードキャストメカニズムを介してSCNへの変更を調整し、SCNの重複の可能性を本質的に排除します。

7