<テーマ:トランザクションのコミット制御>
正解はこちら
解答:イ
[基礎知識・用語のまとめ]
2相コミット・・・コンピュータネットワークやデータベースにおいて、分散システム内の全ノードがトランザクションのコミットに合意するための分散アルゴリズムあるいはプロトコルである。ネットワーク障害やノード故障の場合も考慮され、基本的にトランザクションはコミットが成功するか失敗するかのいずれかの状態となります。
[解法]
2相コミットでも、主サイトと従サイト間の通信が途絶えると、主サイトの指示が届かないことは当然あり得るので、サブトランザクションをコミットすべきかロールバックすべきかわからない場合があります。
したがって、選択肢「イ」が正解となります。
その他の選択肢については、以下の通りです。
ア→サブトランザクションが実行されるすべてのサイトからコミット了承応答が主サイトに届けば、すべてのサブトランザクションにコミット指示を出します。
ウ→サブトランザクションがロールバックされた場合には、すべてのサブトランザクションがロールバックされます。
エ→1相コミットでは、サイト間のデータベースの一貫性は保証できません。
[参考]
サブトランザクション(入れ子トランザクションとも呼ばれる)を実現するための、データベースSQLのステートメントの1つにSAVEPOINTと呼ばれるものがある、、、らしい。
利用させていただきました素材へのリンク
うさちゃこちゃんねる様 https://www.youtube.com/channel/UCQcDdg4W6r5OfcB1JTcpABw
ここまで読んでくれてありがとう!!
感謝!
コメント