0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

データベーススペシャリスト試験対策まとめ(8月8日)

Posted at

データベーススペシャリスト試験対策まとめ(8月8日)

これまで学んだ内容を体系的に整理し、実務や試験対策にそのまま活用できる形でまとめます。


1. テーブル間リレーションと外部キー配置

早見表

関係種類 外部キー配置方法 具体例
1対1 どちらか一方に相手側の主キーを外部キーとして追加 社員テーブルと社員詳細テーブル。社員IDをどちらかに持たせる
1対多 多側に一側の主キーを外部キーとして追加 顧客テーブル(顧客ID)と注文テーブル(注文は顧客に属する)
多対多 中間テーブルを作り、両方の主キーを外部キーとして登録 学生テーブルと科目テーブル(学生科目登録テーブルで対応)

覚え方

  • 1対1 → 双方向OK(どちらでも成立)
  • 1対多 → 「多側」に外部キー
  • 多対多 → 中間テーブル+両方の外部キー

2. トランザクションログ(UNDO/REDO)

操作 必要なログ情報 用途 具体例
ロールバック(UNDO) 更新前情報 操作を取り消す 誤って在庫数を減らした場合に元の数量に戻す
ロールフォワード(REDO) 更新後情報 障害後に最新状態まで復旧 障害直前の注文データを再適用して復旧

補足

  • 商用DBMSはUNDO/REDO両対応(Oracle, SQL Server, PostgreSQLなど)
  • 暗記法:UNDO → Before、REDO → After

3. BPMN(業務プロセスモデリング)

特徴

  • 業務の流れを統一記法で図示
  • 部門・国境を超えて共通理解が得られる

構成要素と例

  • ○ 開始イベント(例:注文を受ける)
  • ◎ 終了イベント(例:出荷完了)
  • ◇ ゲートウェイ(分岐)(例:在庫あり/なしで処理分岐)
  • [アクティビティ](作業)(例:請求書発行)
  • プール/レーン(担当範囲)(例:営業部/倉庫)

利点

  • 関係者全員が同じ視覚的モデルを参照
  • 要件定義段階で誤解を減らす

4. 開発手法の特徴(〜型開発)

開発手法 特徴 具体例
ウォーターフォール型 工程を順序通りに進める 官公庁向けシステム開発(要件固定)
反復型 小さなサイクルで繰り返し完成度UP ECサイト機能追加を3週間ごとにリリース
インクリメンタル型 機能を小出しに追加 チャットアプリに通知機能→通話機能と段階拡張
ユースケース駆動開発 要件単位で全工程完結 会員登録機能を要件単位で設計→実装→テスト
アーキテクチャ中心 骨格設計を先に確定 マイクロサービス基盤設計を最初に固める
プロトタイピング型 試作品で利用者確認 新UIの画面モックを先に見せて評価を反映

混同防止

  • リスク早期対応 → 反復型/スパイラル
  • 要件単位進行 → ユースケース駆動
  • 骨格先行 → アーキテクチャ中心

5. HAクラスタと安全なフェールオーバー

重要ポイント

  • ハートビート喪失=即切替は危険
  • ネットワーク障害・サーバ障害を切り分ける
  • スプリットブレイン防止策:クォーラム、Witness、フェンシング(STONITH)

フェールオーバー流れ例

  1. ハートビート途絶検知(例:1秒間隔で監視)
  2. ネットワーク・ストレージ確認(例:スイッチ障害かを判定)
  3. クォーラム判定(例:多数派ノードが生存しているか)
  4. フェンシング(相手ノードの強制停止)
  5. 待機系昇格(サービス引き継ぎ)

運用注意

  • 自動フェイルバックより計画作業が安全
  • 定期的に障害対応訓練を行い、スクリプト・手順書を更新

6. 関数従属性と正規化(〜BCNF)

関数従属性の定義

  • X → Y:属性集合Xが決まると属性集合Yが一意に決まる関係
  • 推移的関数従属性:X → Y、Y → Zが成立するとX → Zも成立する

正規形まとめ

正規形 条件 具体対応
第1正規形(1NF) 繰り返し属性なし 住所が複数列に分かれていない 列を分割し別行にする
第2正規形(2NF) 1NF+部分関数従属性なし 複合キーの一部に依存する列 部分依存を別テーブルへ
第3正規形(3NF) 2NF+推移的関数従属性なし 郵便番号→住所→都道府県 中間依存を別テーブルへ
BCNF すべての決定項が候補キー 複雑な多候補キー依存 依存ごとに分割

覚え方

  • 1NF:繰り返し禁止
  • 2NF:部分依存禁止
  • 3NF:推移依存禁止
  • BCNF:決定項は全て候補キー

7. トランザクション分離レベルと現象

分離レベル 防げる現象 防げない現象 備考
Read Uncommitted なし ダーティリード、NRR、ファントム 最低
Read Committed ダーティリード NRR、ファントム 多くの商用DB既定
Repeatable Read ダーティ、NRR ファントム InnoDB既定
Serializable 全て防止 なし 性能低下大

まとめ

  • 関係モデル・トランザクション制御・業務モデリング・開発手法・可用性設計は全てリンクしている
  • 具体例で理解を深め、図や表で整理すると定着度が高まる
  • 試験知識はそのまま現場の設計・運用に活かせる
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?