• ベストアンサー

APサーバとDBサーバのトランザクション管理

下記の記事で「APサーバはデータベースのトランザクション管理を行う」という記述がありますが、それはDBサーバの役割ではないでしょうか? なにかAPサーバとDBサーバで管理の仕方が異なるのでしょうか? もっというと、この2サーバでDBから取り出したデータの編集/加工方法は どのように変わるのでしょうか? https://thinkit.co.jp/free/tech/6/1/1.html

質問者が選んだベストアンサー

  • ベストアンサー
  • IDii24
  • ベストアンサー率24% (1597/6506)
回答No.1

この場合のSQLを考えればストアドプロシージャーやファンクションなどを使わずにSQLをAPサーバーで複数投げるという処理が想定されます。そのなかでそれぞれのテーブルのコミットのタイミングはAPがプログラムの中で指定したものを投げます。要するにAPが命令を出すまでコミットされないのが普通なのでこのように書かれてます。 >この2サーバでDBから取り出したデータの編集/加工方法はどのように変わるのでしょうか? 1番目のTBから情報を取り出してAPが加工してさらに2番目に書き込み、さらにこれを繰り返して10回計算して3番目のTBに書き込む。3番目が終わるまで2番目もすべてコミットしない。というような処理ですよね。

R958XX
質問者

補足

レスが遅くなってすみません。ご回答ありがとうございます。 一点初歩的な質問かもしれませんが教えてください。 >1番目のTBから情報を取り出してAPが加工してさらに2番目に書き込み、 >さらにこれを繰り返して10回計算して3番目のTBに書き込む。 ここに記載されている「TB」とは何のことでしょうか?

その他の回答 (1)

  • IDii24
  • ベストアンサー率24% (1597/6506)
回答No.2

DBはDatabase、TBはTableです。 まあこれに拘る必要はありません。やり方なんかハードの性能や機能の向上によって時代と共に変わります。例えばネット社会の現在この記述が正しいとは言えません。ネットを通して処理するときはどうするの?途中で切れるよってことです。切れたらその間にほかから更新されちゃうよとか想定できるわけです。 要するに基本を書いてあるだけでこれが良いとは書いてないです。なにしろこの理論って50年くらい前のコボルの時代からおなじ考えなんで。当時はAPサーバーなんてないけどプログラムによる処理ですよね。同じです。こういう考えがITの試験に出たりするので、ITの試験ってとるだけ無駄と言われるゆえんです。ITには正解は無い。

R958XX
質問者

お礼

補足説明していただきありがとうございます。

関連するQ&A