令和4年度 春期 午前Ⅱ 問4
データベース
インプロセスデータベースの説明
組込みシステムで DBMS を用いるときには,通信のオーバヘッド,通信負荷の発生を防ぐこと,必要なメモリ容量をリソース制限内に抑えることなどを目的として,インプロセスデータベースを用いることがある。このインプロセスデータベースの説明として,適切なものはどれか。
- アクライアントサーバ形式のクライアントとなるアプリケーションプログラムとソケットを介して通信し,SQL を用いて処理を記述する。
- イデータベースエンジンはライブラリ形式で提供され,アプリケーションプログラムとリンクされて同一メモリ空間で動作する。
- ウデータベースの全体をメモリ上に配置して,データベース処理を高速化する。
- エ一つのテーブルを一つのファイルで管理し,アプリケーションプログラムからはファイル入出力の API で操作する。
答えと解説を見る
✓ これが正解イデータベースエンジンはライブラリ形式で提供され,アプリケーションプログラムとリンクされて同一メモリ空間で動作する。
解説
DB エンジンがライブラリとしてアプリと同じメモリ空間で動きます。
見分ける軸は、データベースエンジンがアプリケーションプログラムとどういう関係で動くかです。インプロセスデータベースでは、データベースエンジンがライブラリの形で提供され、アプリケーションプログラムにリンクされて同じプロセス、同じメモリ空間の中で動作します。別のサーバプロセスと通信しないので、設問が挙げる通信のオーバヘッドや通信負荷が生じず、サーバ用のプロセスを別に動かすためのメモリも抑えられます。組込みシステムのように資源が限られる場面で使われる理由はここにあります。インプロセスという名前のとおり、同じプロセスの中で動くかどうかで見分けると確実です。
ほかの選択肢はなぜ違うのか
- アクライアントサーバ形式のクライアントとな…:ソケットを介してクライアントと通信するのは、クライアントサーバ形式で別プロセスとして動く DBMS の形です。プロセス間の通信が発生するので、設問が避けたい通信のオーバヘッドや通信負荷がそのまま残ります。
- ウデータベースの全体をメモリ上に配置して,…:データベース全体をメモリ上に置いて高速化するのは、データの置き場所を主記憶にする方式の説明です。データをどこに置くかの話であり、エンジンをアプリケーションと同じプロセスで動かすかどうかという点には触れていません。
- エ一つのテーブルを一つのファイルで管理し,…:テーブルごとにファイルを分け、ファイル入出力の API で操作する形は、データベースエンジンを使わずにファイルを直接扱うやり方です。SQL などを処理するエンジンをライブラリとして組み込む仕組みの説明になっていません。
この問題の用語
- DBMSデータベースを管理するソフト。複数の処理が同じデータを同時に更新しても矛盾しないよう、排他制御などを行います。
- データベースたくさんのデータを決まった形で貯め、探したり書き換えたりできるようにした仕組み。多くの人が同時に使うことを前提にしています。
- クライアントサーバサービスを求める側と提供する側に役割を分けて、処理を分担するしくみです。求める側をクライアント、こたえる側をサーバと呼びます。
出典:令和4年度 春期 システムアーキテクト試験 午前Ⅱ 問4
同じ用語が出る問題
- 令和6年度 春期 午前Ⅱ 問24:デッドロックに関する問題(DBMS)
- 令和6年度 春期 午前Ⅱ 問14:WTO政府調達協定に関する記述(データベース)
- 令和6年度 春期 午前Ⅱ 問13:デザイン思考の説明(データベース)
- 令和6年度 春期 午前Ⅱ 問2:インプロセスデータベースの説明(クライアントサーバ)
- 令和5年度 春期 午前Ⅱ 問24:コミット処理を完了するタイミング(DBMS)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)