Open4

データベース設計

piyomayupiyomayu

データベース(以下DB)とは

  • データの集合体
    • データは資産なので、個人・企業問わず「情報資産」としての価値がある

DBの必要性

  • データの集中管理
    • 類似データの重複管理は避けるべき
  • データの取得、更新を柔軟かつ高速に行うため

DBの種類

  • 関係型→DBMSが主に使われる
  • 階層型
  • ネットワーク型
    etc...
piyomayupiyomayu

モデル化

  • データと処理の流れを図式化したもの
    • 一例を下記に記すと、車を構成する要素を分解していく過程は以下のようになる。(画像者著者の方で作成したので転載等は禁止です。)

DB設計

  • データをどう整理して管理するか = モデリング→このモデリング作業のこと
  • 上記モデル図をデータ的に解釈するとこう↓なります。(キリないので大体で書いてます。)
    • 車: 鍵、ライト、ガソリン、タイヤ、その他車を構成するもの
      • 鍵: 色、種類
      • ライト: 色、種類
      • ガソリン: 種類
      • タイヤ: デザインのタイプ、大きさ、ホイールの種類
        • ホイール: デザイン

データモデル

  • 上記のモデル化とDB設計は3段階に分解され、3層スキーマと呼ばれる。
    • 概念データモデル
      • ER図が用いられる
    • 論理データモデル
      • 階層モデル
      • ネットワークモデル
      • 関係モデル ←実務で使うのはこれ
    • 物理データモデル
      • 実際のデータやインデックスのこと
piyomayupiyomayu

データ操作

  • SQL = DBMSに存在するデータのCRUD処理を行う言語

データ操作の不整合を防ぐために

  • トランザクション管理
  • 排他制御