ひとことで言うと#
「組織のデータに対する図書館の蔵書目録」。どんなデータが、どこに、どんな形で存在し、誰が管理しているかを一覧化する仕組み。データの**メタデータ(データについてのデータ)**を集約し、検索・閲覧できるようにすることで、誰でも必要なデータにたどり着ける環境を作る。
押さえておきたい用語#
- メタデータ(Metadata)
- データそのものではなく、データの属性や意味を記述した情報のこと。テーブル名・カラム名・データ型・更新頻度・オーナーなどが該当する。
- データリネージ(Data Lineage)
- あるデータがどこから来て、どう加工されたかを追跡できる血統情報のこと。問題発生時の原因特定やデータの信頼性判断に不可欠。
- データオーナー(Data Owner)
- 特定のデータに対して品質と正確性の責任を持つ人のこと。データの定義変更やアクセス権限の承認を行う。
- データスチュワード(Data Steward)
- データオーナーの下で日常的なデータ管理を実行する担当者のこと。メタデータの更新やカタログの維持を行う。
データカタログの全体像#
こんな悩みに効く#
- 分析に必要なデータがどのシステムにあるか、毎回人に聞いている
- 同じようなテーブルが複数存在し、どれが正しいかわからない
- 新しく入ったメンバーがデータの全体像を把握するのに数ヶ月かかる
基本の使い方#
まず、組織内の主要なデータ資産を洗い出す。
対象の例:
- データベースのテーブル・ビュー
- データウェアハウスのデータマート
- Excel・CSVなどのファイル
- API経由で取得できるデータ
- BIツールのダッシュボード・レポート
ポイント: 最初からすべてを登録しようとせず、よく使われるデータ、重要なデータから優先的に登録する。
各データ資産に対して記録するメタデータの項目を標準化する。
基本的なメタデータ:
- 技術メタデータ: テーブル名、カラム名、データ型、レコード数、更新頻度
- ビジネスメタデータ: 日本語の説明、ビジネス上の定義、計算ロジック
- 運用メタデータ: データオーナー、更新スケジュール、データソース、品質スコア
- アクセス情報: 接続先、アクセス権限、利用申請方法
ポイント: 最低限「何のデータか(説明)」「誰に聞けばいいか(オーナー)」「どこにあるか(接続先)」の3点は必須。
メタデータを集約し、検索可能な形で公開する。
構築方法:
- 専用ツール: Apache Atlas、DataHub、Alation、Amundsen など
- シンプルな方法: 社内Wiki、スプレッドシート、Notionデータベース
- 自動収集: データベースのスキーマ情報を自動で取得・同期する仕組み
検索性を高める工夫:
- タグやカテゴリで分類する
- よく使うデータには「おすすめ」マークをつける
- データ間のリネージ(血統: どのデータからどう加工されたか)を記録する
データカタログは作って終わりではなく、鮮度を保つ仕組みが必要。
- スキーマ変更時にカタログも更新するルールをプロセスに組み込む
- データオーナーに四半期ごとの棚卸しを依頼する
- 利用者からのフィードバック(誤り報告、説明の追加リクエスト)を受け付ける窓口を設ける
- 可能な限り技術メタデータの更新は自動化する
ポイント: 情報が古いカタログは信頼されず、使われなくなる。自動化と運用ルールで鮮度を維持する。
具体例#
状況: データアナリスト10人のチーム。社内に200以上のテーブルがあるが、ドキュメントが散在し、新しい分析を始めるたびに「このデータどこ?」「この列の意味は?」と質問が飛び交っていた。質問対応に週平均8時間を消費。
カタログの設計:
| メタデータ項目 | 内容例 |
|---|---|
| テーブル名 | sales_daily_summary |
| 日本語名 | 日別売上サマリー |
| 説明 | 店舗別・商品カテゴリ別の日次売上集計テーブル |
| カラム定義 | revenue: 税抜売上(返品控除後)、単位: 円 |
| データオーナー | 経理部 田中 |
| 更新頻度 | 日次(毎朝6:00) |
| データソース | POS系 → ETL → DWH |
| 品質スコア | A(欠損率0.1%以下) |
構築方法: まずNotionデータベースで主要50テーブルのカタログを作成。3ヶ月後にDataHubを導入し、スキーマ情報の自動取得を実現。
**結果: 「データどこにある?」の質問が週20件→3件に減少。新メンバーのオンボーディング期間が2ヶ月→3週間に短縮。**重複テーブルの発見・統合により、ストレージコストを15%削減。
状況: 従業員1,200名の製造業。国内3拠点でそれぞれ独自のデータベースを運用。全社横断の分析をしようとすると、各拠点の担当者に個別に問い合わせる必要があり、1つの分析レポートに3週間かかっていた。
カタログ構築のアプローチ:
- 各拠点のデータ担当者を「データスチュワード」に任命(計6名)
- 標準メタデータテンプレートを作成し、各拠点で登録を依頼
- 優先度の高いデータ(売上・在庫・品質管理)から着手し、3ヶ月で主要100件を登録
- Apache Atlasを導入し、拠点間のデータリネージを可視化
**結果: 全社横断の分析レポート作成期間が3週間→3日に短縮。**拠点間で「同じ品質基準の名前だが定義が異なる」テーブルを8件発見し、定義を統一。年間で約1,500万円相当の分析工数を削減。
状況: 社員50名のSaaSスタートアップ。エンジニア15名がそれぞれ必要に応じてテーブルを作成した結果、DWHに120テーブルが乱立。同じ「ユーザー数」を計算するのに3つの異なるテーブルが存在していた。
簡易カタログの構築(予算ゼロ):
- Googleスプレッドシートで「テーブル名」「日本語説明」「オーナー」「重要度(高/中/低)」の4列のシートを作成
- エンジニア全員に「自分が作ったテーブルを登録する」タスクを1週間で実施
- 「重要度: 高」のテーブル30件にだけ詳細なカラム定義を追記
- 重複テーブルを色分けし、統合計画を作成
**結果: 「どのテーブルを使えばいいか」の判断時間がゼロに。3つの「ユーザー数」テーブルを1つに統合し、全社のKPIダッシュボードの数値不一致が解消。**所要時間は全社合計で約40時間、ツールコストはゼロ。
やりがちな失敗パターン#
- 最初から完璧を目指す — 全テーブルの全カラムに詳細な説明をつけようとして挫折する。まず主要テーブルの基本情報だけ登録し、利用されながら徐々に充実させる
- カタログの更新が止まる — 作成時は盛り上がるが、半年後には情報が古くなり信頼されなくなる。自動化と定期レビューの仕組みを最初から設計する
- 技術情報だけ載せてビジネス定義がない — テーブル名とカラム名だけでは、ビジネスユーザーには意味がわからない。日本語の説明とビジネス上の定義を必ず記載する
- カタログを作っても周知しない — せっかく作ったカタログの存在を知らない人が多い。新メンバーのオンボーディングフローに組み込み、日常の質問対応でカタログへのリンクを返す習慣を作る
まとめ#
データカタログは、組織内のデータ資産を一覧化し、誰でも必要なデータを見つけられるようにする仕組み。技術メタデータだけでなくビジネス定義やオーナー情報を含めることで、データの発見と理解が格段に速くなる。まずは最もよく使われるテーブルから簡易的にカタログを作り、利用者のフィードバックを受けながら拡充していこう。