OceanBaseデータベースのトランザクションタイプは、トランザクションセッションの位置とトランザクションが関与するログストリームのリーダー数という2つの次元によって決定され、主に分散トランザクションと単一ログストリームトランザクションに分類されます。
分散トランザクション
分散トランザクションはトランザクションのすべての属性を満たし、同様にACID特性も満たす必要があります。複数のマシンでデータを変更し、原子性を保証する必要があるシナリオでは、分散トランザクションが重要な役割を果たします。以下の2つのシナリオにおけるトランザクションは、いずれも分散トランザクションと呼ばれます:
トランザクションが関与するログストリームの数が1つより多い場合。
トランザクションが関与するログストリームの数が1つだけであり、そのログストリームのリーダーとトランザクションセッションの位置が同一のサーバー上にない場合。
単一ログストリームトランザクション
トランザクションが関与するログストリームの数が1つだけであり、そのログストリームのリーダーとトランザクションセッションが同一のサーバー上にある場合。
上記の特性を保証するために、通常は2フェーズコミットプロトコルが採用されます。2フェーズコミットプロトコルの詳細については、2フェーズコミットを参照してください。