876 words
4 min

メダリオンアーキテクチャについて

Databricksやデータ分析基盤でよく耳にする「メダリオンアーキテクチャ」。
なぜ分けるのかが曖昧だったので勉強も兼ねて整理してみる。

メダリオンアーキテクチャとは?#

メダリオンアーキテクチャ(Medallion Architecture)は、データの品質を段階的に向上させながら管理するための設計パターン。
生データをいきなり分析に利用するのではなく、

Raw Data → 整形済みデータ → 業務利用データ

という流れでデータを加工していく。
一般的には以下の3層で構成される。

1. Bronze(ブロンズ)#

データをそのまま保存する層。
CSVやAPI、ログなど取得したデータを可能な限り加工せず保存する。
目的は「元データを残すこと」。
万が一加工処理に問題があっても、このデータから再作成できる。

  • API取得データ
  • CSVファイル
  • ログデータ
  • CDCデータ

2. Silver(シルバー)#

分析で利用できる品質までデータを整える層。
ここではデータクレンジングや形式統一などを行う。

  • NULL値の補正
  • 重複データの削除
  • データ型の統一
  • テーブル同士の結合

多くの分析や機械学習では、このSilver層を利用することが多い。
「クレンジング」と一言で言っているが、マハラノビス距離/Zスコア/IQR法/LOF/k-NNなどなど
方法が様々なようなので、別記事でまとめる。


3. Gold(ゴールド)#

業務で直接利用するデータを作る層。
BIツールやダッシュボード、レポートで参照されるデータを配置する。

  • 月別売上
  • KPI
  • 顧客別売上
  • 商品ランキング

利用者がSQLを書くことなく利用できる状態まで加工されていることが多い。

なぜ3層に分けるの?#

一番の目的はデータ品質を段階的に向上させること

例えばSilverで誤った変換をしてしまった場合でも、Bronzeには元データが残っているため再作成できる。
また、Silverを共通データとして利用することで、複数の分析やAIモデルで同じデータを再利用できる。
結果として

  • データ品質の向上
  • 保守性の向上
  • デバッグのしやすさ
  • データの再利用

といったメリットがある。

注意点#

メダリオンアーキテクチャは設計パターンであり、物理構成を決めるものではない
ただし、メダリオンを意識せずに漠然とデータを分けてしまうと

  • どれが正式データかわからない
  • 不要データが残る
  • ガバナンスが低下する

といった問題も発生する。
そのため、各レイヤーや用途ごとの責務を明確にすることが重要になる。

まとめ#

メダリオンアーキテクチャは、データ品質を段階的に向上させるための設計パターン。

  • Bronze:生データを保持する
  • Silver:分析しやすい形へ整形する
  • Gold:業務利用向けに加工する

という役割を持つ。
「3層構成」そのものではなく、「データ品質を段階的に高める考え方」として理解するとイメージしやすいかも。
ただ、どうしてもSilverとGoldの境界があいまいな気がしてならない。。。
(GoldからGold作ったりとかはないのかなぁとか思ったり)

実データを見てみないとイメージが沸かない部分もあるので、
いつか公開されてる大量データからDatabricksの試用期間枠で実際に分けてみようと思う。

メダリオンアーキテクチャについて
https://tech.storias-blog.com/blogs/medallion_architecture
作者
Storia
公開日
2026-07-22