令和6年度 春期 応用情報技術者試験 午前 問25
【問題25】
ストアドプロシージャの利点はどれか。
アプリケーションプログラムからネットワークを介してDBMSにアクセスする場合、両者間の通信量を減少させる。
アプリケーションプログラムからの一連の要求を一括して処理することによって、DBMS内の実行計画の数を減少させる。
アプリケーションプログラムからの一連の要求を一括して処理することによって、DBMS内の必要バッファ数を減少させる。
データが格納されているディスク装置へのI/O回数を減少させる。
【解説】
ストアドプロシージャは、データベース管理システム(DBMS)内に格納される事前定義されたSQL手続きのことであり、主に以下のような利点があります:
- 複数のSQL文をまとめて一度に実行できる
- アプリケーションとDBMS間の通信回数が減る
- データベース側で処理が完結するため、パフォーマンスが向上する
ア: アプリケーションプログラムからネットワークを介してDBMSにアクセスする場合、両者間の通信量を減少させる。
正しい。ストアドプロシージャを使うと、複数のSQL文を1回の呼び出しでDBMSに送ることができるため、通信回数・通信量を減らせます。これは、ストアドプロシージャの代表的な利点の1つです。
イ: アプリケーションプログラムからの一連の要求を一括して処理することによって、DBMS内の実行計画の数を減少させる。
誤り。実行計画はSQLごとに生成されるため、まとめて処理しても実行計画の“数”が減るわけではありません。
ウ: アプリケーションプログラムからの一連の要求を一括して処理することによって、DBMS内の必要バッファ数を減少させる。
誤り。バッファ使用量はSQLの内容や実行時のデータ量に依存し、ストアドプロシージャの使用によって直接的に削減されるものではありません。
エ: データが格納されているディスク装置へのI/O回数を減少させる。
誤り。I/O回数を減らすためには、クエリのチューニングやインデックスの利用といった工夫が必要であり、ストアドプロシージャの使用とは直接の関係がありません。
【答え】
ア: アプリケーションプログラムからネットワークを介してDBMSにアクセスする場合、両者間の通信量を減少させる。
出典:令和6年度 春期 応用情報技術者試験 午前 問25