クライアントサーバシステムにおいて,利用頻度の高い命令群をあらかじめサーバ上のDBMSに用意しておくことによって,データベースアクセスのネットワーク負荷を軽減する仕組みはどれか。
正答4
解説
正解は4です。
この問題は、クライアントサーバシステムでネットワークの負荷を減らすデータベースの仕組みを問うています。
よく使う一連のSQL文をサーバ側に登録しておけば、クライアントは呼び出し命令を1つ送るだけで済みます。
この仕組みをストアドプロシージャといいます。
【選択肢別解説】
1:× 2相コミットメントは、分散データベースで複数のサイトの更新を、すべて確定するかすべて取り消すかにそろえる手順です。
データの整合性を保つための仕組みであり、ネットワーク負荷を減らす仕組みではありません。
2:× グループコミットメントは、複数のトランザクションのコミット処理をまとめて、ログの書出し回数を減らす方法です。
ディスクへの書込みを効率化する仕組みであり、命令群をサーバに用意するものではありません。
3:× サーバプロセスのマルチスレッド化は、サーバ内で複数の要求を並行して処理できるようにすることです。
処理の並行性は上がりますが、クライアントとの通信量を減らす仕組みではありません。
4:○ ストアドプロシージャは、利用頻度の高いSQL文の集まりをDBMS(DataBase Management System)にあらかじめ登録しておく仕組みです。
クライアントは名前を指定して呼び出すだけなので、送受信するデータが減り、ネットワーク負荷が軽くなります。
【ポイント】
ストアドプロシージャには、通信量の削減に加え、SQL文の解析を前もって済ませられるので処理が速いという利点もあります。
2相コミットメントは分散データベースの整合性の仕組みとして、別に覚えておきましょう。