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?

Machiken’sAdvent Calendar 2024

Day 9

データベース設計の2つのアプローチ

Last updated at Posted at 2024-12-09

はじめに

こんにちは!今日は、データベース設計を進める際によく言及される「トップダウンアプローチ」と「ボトムアップアプローチ」について簡単にまとめます。データベース設計は、要件定義からスキーマ構築まで多くの工程があり、アプローチを理解しておくとより理論的・効率的な設計が可能になります。

本文

トップダウンアプローチ

トップダウンアプローチは、全体像から細部へ向かって設計を行う方法です。

特徴

  • カーディナリティ(1対1、1対多、多対多など)の関係性を明示的に検討します
  • 多対多(M:N)リレーションシップが存在する場合は関連エンティティを導入して、1対多(1:N)リレーションに変換します
  • 要件定義段階で全体像が比較的明確な場合や、上位概念(エンティティ群)から整然と整理していきたい場合に有効です

手順

  1. E-R図(Entity-Relationship図)の作成: 業務要件を整理し、エンティティやリレーションシップ、カーディナリティを洗い出してER図を描きます
  2. 属性の定義: エンティティごとに必要な属性を決定し、詳細なデータ要件を詰めていきます
  3. 正規化: データの冗長性や更新異常を防ぐため、1NF→2NF→3NFと正規化を行い、スキーマを整えます

ユースケース

新たな業務システムの設計時に、まず事業領域(顧客、商品、受注など)の全体像を捉え、そこからエンティティとリレーションシップを明確にしつつ詳細化したい場合、トップダウンアプローチは効果的です。全体の業務フローを把握しやすく、大枠から細部へスムーズに落とし込めます。

ボトムアップアプローチ

ボトムアップアプローチは、細部から全体へ組み上げていく方法です。

特徴

  • 正規化を進めると、最終的に1対多(1:N)のリレーションのみで構成され、シンプルかつ整然とした構造になります
  • 当初から具体的なデータ項目(属性)が判明している場合に有効です
  • 拡張や再構築が柔軟で、小規模なデータ項目集合から徐々に全体像を作り上げる際に役立ちます

手順

  1. 属性の整理: 業務で必要なデータ項目(属性)をまずリストアップします
  2. 正規化: リストアップした属性間の関係性を考え、正規化を行いながらエンティティ候補をまとめていきます
  3. E-R図化: 最後に、洗練されたエンティティや関連をER図として表し、全体像を明確にします

ユースケース

新規の概念が少なく、具体的なデータフィールドが先行してわかっているときは、ボトムアップが適しています。

まとめ

データベース設計は、トップダウンアプローチとボトムアップアプローチのどちらを用いても、最終的にはエンティティや属性、リレーションシップを明確にし、正規化を通じて健全なスキーマを構築することが目標です。実務では、両方の手法を柔軟に取り入れたり、反復的なプロセスで精度を高めることも多いです。状況や要件に合ったアプローチを選びましょう!明日はデータベース設計を深掘ります!

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?