データベース設計

データベース設計

Lis Sulmont

Curriculum Manager

データベース設計とは何か?

  • データが論理的に保存される方法を決定する
    • データがどのように読み取られ、更新されるのか?
  • データベースモデルを使用: データベース構造の仕様
    • 最も普及: リレーショナルモデル
    • その他のモデル: NoSQLモデル、オブジェクト指向モデル、ネットワークモデル
  • スキーマを使用: データベースの設計図
    • テーブル、フィールド、リレーションシップ、インデックス、ビューを定義する
    • リレーショナルデータベースにデータを挿入する際は、スキーマに従う必要がある
データベース設計

データモデリング

保存するデータのデータモデルを作成するプロセス

1. 概念データモデル: エンティティ、リレーションシップ、属性を説明する

  • ツール: データ構造図、例:エンティティ関係(ER)図やUML図

2. 論理データモデル: テーブル、列、リレーションシップを定義する

  • ツール: データベースモデルとスキーマ、例: リレーショナルモデルとスタースキーマ

3. 物理データモデル: 物理的な保存について説明する

  • ツール: パーティション、CPU、インデックス、バックアップシステム、表領域
1 https://en.wikipedia.org/wiki/Data_model
データベース設計

概念的 - ER図

ER diagram of song example

エンティティ、リレーションシップ、属性

論理 - スキーマ

Logical schema of song example

最速の変換: エンティティをテーブルに

データベース設計

その他のデータベース設計オプション

Another example of a potential ER diagram of song example

テーブルの決定

Another example of a potential ER diagram of song example

データベース設計

リレーショナルモデル以外

ディメンショナル・モデリング

データウェアハウス設計のためのリレーショナルモデルの適応

  • OLAP クエリ向けに最適化:データを集計するが、更新(OLTP)は行わない
  • スター スキーマを使用して構築される
  • 解釈しやすく、拡張しやすい
データベース設計

ディメンショナルモデリングの要素

Fact table and dimension tables of song example

要件:

  • 何が分析されるか?
  • エンティティはどのくらいの頻度で変化するか?

ファクトテーブル

  • ビジネスの用途によって決まる
  • 指標となるレコードを保持する
  • 定期的に変更される
  • 外部キーを介してディメンションに接続する

ディメンションテーブル

  • 属性の説明を保持する
  • あまり頻繁に変更しない
データベース設計

練習しましょう!

データベース設計

Preparing Video For Download...