アフィリエイト広告(Amazonアソシエイトや楽天アフィリエイトなど)を掲載しています。
サイト内で紹介している広告の利用や商品を購入すると、売上の⼀部がフェンリルの備忘録に還元されることがあります。
【ITパスポート】データベース関連
ITパスポートの「データベース関連」に関するまとめです。比較的出題頻度が高いものを中心とした、簡単な用語解説程度です。
データベース方式
文字列や数値などの様々なデータを、特定の目的を持った単位で集中管理することを「データベース方式」といい、例えば顧客情報といった単位でまとめることにより、業務の効率化を図ることができます。
データベースの種類
データベースの代表的なモデルは、データを表形式で管理する「関係データベース」、データ同士が網の目のようにつながった状態で管理する「網型データベース」、データを階層構造で管理する「階層型データベース」などがあります。
関係データベース
データを行と列から成る表形式で表すデータベースです。
データベース関係で出題頻度が高いのは関係データベースです。
データベース管理システム(DBMS)
データベースの管理・利用には、「データベース管理システム(DBMS)」というデータベースソフトウェアを使用します。
データの正規化
データの重複がないようにテーブルを適切に分割することをデータの正規化といい、正規化されたテーブルを正規形、正規化されていないテーブルを非正規形といいます。
データ操作
データベースから必要なデータを取り出すことを演算といい、演算には関係演算と集合演算があります。
関係演算
テーブルから目的のデータを取り出す演算です。
射影 | テーブルから指定した項目(列)を取り出す |
選択 | テーブルから指定した行(レコード)を取り出す |
結合 | 2つ以上のテーブルで、 ある項目の値が同じものについて、テーブル同士を連結させたデータを取り出す |
集合演算
2つのテーブルから集合の考え方を利用してデータを取り出す演算です。
和 | 2つのテーブルの全てのデータを取り出す |
積 | 2つのテーブルで共通するデータを取り出す |
差 | 2つのテーブルで一方のテーブルだけにあるデータを取り出す |
トランザクション処理
データベースには複数の利用者が同時にアクセスするので、データベースの整合性を維持する必要があります。
トランザクション
「商品Aを1個発注する」など、一つの完結した処理単位のことです。
コミット
トランザクション処理が正常に終了した場合に、データベースの更新内容を確定することです。
ロールバック
トランザクション処理が異常終了した場合に、データベースの状態をトランザクション処理前の時点まで戻すことです。
ACID特性
トランザクション処理に求められる4つの特性のことです。頭文字を並べてACID特性といいます。
原子性 Atomicity | トランザクションの処理が全て実行されるか、 全く実行されないかのいずれかになる |
一貫性 Consistency | トランザクションが処理されても、 データ間に矛盾が生じない |
独立性 Isolation | 複数のトランザクションが同時に実行されても、 別のトランザクションの影響を受けない |
耐久性 Durability | 正常終了したトランザクションは、 システムに障害が発生しても失われない |
実際に出題された問題
※問題文の著作権は独立行政法人情報処理推進機構(IPA)に帰属します。
令和3年 問62
金融システムの口座振替では、振替元の口座からの出金処理と振替先の口座への入金処理について、両方の処理が実行されるか、両方とも実行されないかのどちらかであることを保証することによってデータベースの整合性を保っている。データベースに対するこのような一連の処理をトランザクションとして扱い、矛盾なく処理が完了したときに、データベースの更新内容を確定することを何というか。
【ア】コミット
【イ】スキーマ
【ウ】ロールフォワード
【エ】ロック
【解説】トランザクション処理が正常に終了した場合に、データベースの更新内容を確定することをコミットといいます。
令和2年 問64
データ処理に関する記述a~cのうち、DBMSを導入することによって得られる効果だけを全て挙げたものはどれか。
a,同じデータに対して複数のプログラムから同時にアクセスしても、一貫性が保たれる。
b,各トランザクションの優先度に応じて、処理する順番をDBMSが決めるので、リアルタイム処理の応答時間が短くなる。
c,仮想記憶のページ管理の効率が良くなるので、データ量にかかわらずデータへのアクセス時間が一定になる。
【ア】a
【イ】a、c
【ウ】b
【エ】b、c
【解説】
a,トランザクション処理の機能です。
b,処理する順番はOSに依存します。
c,仮想記憶(メモリ)の管理はOSが行ないます。