オントロジーと ER の違い:業務の「意味」を扱う
Stage 2 — 第3章 | データマネジメント入門 推定学習時間:40〜50分 | 難易度:★★★☆☆
この章で学ぶこと
ER 図で 顧客–注文–商品 の線は引けました。 それでもさくら商事の会議は止まります。理由はシンプルで、同じテーブル名でも“意味”が合意されていない からです。
「キャンセル」「返品」「売上確定」——日本語では分かるつもりでも、SQL の WHERE 句 1 行で解釈が割れます。
オントロジー(Ontology) は、この 業務上の意味と関係 を整理する枠組みです。
本章は OWL ファイルの書き方ではありません。 データマネジメントとして、いつ ER だけでは足りず、意味の層が必要か を判断できることを目標にします。
この章を終えると、こんなことができるようになります:
- ER 図とオントロジーの 目的の違い を説明できる
- 「キャンセル」「返品」「売上確定」を 業務ルール として言語化できる
- ER だけでは判断材料が足りない場面を具体例で示せる
- オントロジーが SSOT・品質・ガバナンスとどう接続するか説明できる
1. 返品を売上に含めるか:再び
Stage 1 の会議を思い出してください。 経理・マーケ・基盤で「6 月売上」が合いませんでした。 その一因が 返品の扱い です。
| 部署 | 6 月売上の考え方 | SQL イメージ |
|---|---|---|
| マーケ | 発生ベース(返品前) | SUM(amount) |
| 経理 | 確定ベース(返品・値引後) | SUM(amount - refund) |
| 基盤 | ステータスで除外(暫定) | WHERE status NOT IN ('cancelled') |
3 人とも ER 上の orders テーブルを見ています。
テーブル構造は同じなのに、数字が割れる。
経営・木村
「
ordersがあるんだから、正しい SQL を 1 本書けばいいんじゃないの?」基盤・鈴木
「SQL の前に、返品が起きた注文を“売上”と呼ぶか を決めないと、
WHEREが永遠に増えます。」
2. ER が答えられること・答えられないこと
| ER が得意 | ER が苦手 |
|---|---|
| どの表が存在するか | 用語の 業務定義 |
| 1 対多・多対多の関係 | いつ 売上とみなすか(イベント順序) |
| キーで JOIN できるか | 例外処理の優先順位 |
| 正規化・粒度 | 同義語・多言語ラベル |
さくら商事の ER(簡略):
Customer ──< Order ──< OrderLine >── Product
│
└──< Refund
Refund 表があるから返品は追える——と見えて、Refund が発生した時点で Order は売上から除外するのか、月をまたいで調整するのか は ER には書きません。
3. ER とオントロジーの違い
| 観点 | ER(Entity-Relationship) | オントロジー(Ontology) |
|---|---|---|
| 主な問い | どう保存・結合するか | 業務上何を意味し、どう関連するか |
| 表現 | テーブル、キー、カーディナリティ | 概念、関係タイプ、ルール、推論 |
| 利用者 | DB 設計者、AE | 業務オーナー、スチュワード、基盤 |
| 変更 | スキーママイグレーション | 定義変更・例外ルールの合意 |
| 典型成果物 | ER 図、DDL | 用語集、概念モデル、ビジネスルール |
3.1 関係タイプの例
オントロジーでは、関係に 意味の種類 を付けます(ツール非依存の考え方)。
| 関係 | 意味 | さくら商事の例 |
|---|---|---|
| is-a(種別) | A は B の一種 | 返品 is-a 売上調整イベント |
| part-of(部分) | A は B の構成要素 | OrderLine part-of Order |
| precedes(前後) | 業務上の順序 | 出荷 precedes 売上確定 |
| excludes(除外) | 同時に成立しない | キャンセル済 excludes 売上確定 |
ER は「どのテーブルがどう繋がるか」、オントロジーは「業務上の意味と関係」を扱います。
テーブル構造"] C["Customer"] O["Order"] RF["Refund"] ONTO["Ontology
業務上の意味"] RET["返品"] ADJ["売上調整"] CAN["キャンセル"] REV["売上確定"] ER --> C -->|"1:N"| O --> RF ER -.->|"構造だけでは
判断できない"| ONTO ONTO --> RET -->|"is-a"| ADJ ONTO --> CAN -.->|"excludes"| REV classDef er fill:#eff6ff,stroke:#2563eb,color:#1f2937 classDef onto fill:#f0fdf4,stroke:#16a34a,color:#1f2937 class ER,C,O,RF er class ONTO,REV,RET,CAN,ADJ onto
さくら商事では、ER だけでは キャンセル注文を売上に含めるか の判断材料が足りません。
4. 三つの用語を業務ルールで固定する
4.1 キャンセル(Cancel)
| 論点 | さくら商事の整理案 |
|---|---|
| 定義 | 出荷前に注文が無効化された状態 |
| 売上 | 含めない(発生ベースでも除外) |
| データ上 | status = 'cancelled' かつ shipped_at IS NULL |
| 例外 | 決済済みだが在庫欠品でキャンセル → 返金フローへ |
4.2 返品(Return / Refund)
| 論点 | さくら商事の整理案 |
|---|---|
| 定義 | 出荷後に商品が戻り、返金またはポイント返還が発生 |
| 売上(経理) | 確定売上から控除(発生月 or 返品月はポリシーで選択) |
| データ上 | refunds 表に行が追加 |
| よくある争点 | 返品月に売上をマイナス計上 vs 発生月売上を修正 |
4.3 売上確定(Revenue Recognition)
| 論点 | さくら商事の整理案 |
|---|---|
| 定義 | 経理が公式帳簿に計上する売上の確定タイミング |
| トリガ | 出荷完了 をもって確定(EC 業態の簡略ルール) |
| 含まないもの | キャンセル、未出荷、返品(別イベントで調整) |
これらは オントロジー/ビジネスルール の領域です。 決まれば、AE はマート SQL を 1 本に寄せられます。
-- 例:合意後の「公式売上」マート(概念)
SELECT
DATE(shipped_at) AS sales_date,
SUM(total_amount) AS recognized_revenue
FROM orders
WHERE shipped_at IS NOT NULL
AND status NOT IN ('cancelled')
-- 返品は refunds 表で別調整(ポリシーに従う)
GROUP BY 1;
現場メモ
オントロジーを整えると、SQL は 短く なります。 逆に、定義が曖昧なまま SQL を足すと、オントロジーが SQL に埋もれる —— これが属人化の正体です。
5. いつオントロジーが必要か:判断表
すべての列に OWL は不要です。次の どれか 2 つ以上 当てはまったら、意味の整理(オントロジー的作業)を優先します。
| # | シグナル | さくら商事 |
|---|---|---|
| 1 | 同じ名詞で解釈が割れる | 「売上」「アクティブ顧客」 |
| 2 | 例外ルールが増え続ける | CASE WHEN が 20 行 |
| 3 | 部門ごとに別 KPI 定義 | マーケ CV vs 経理確定 |
| 4 | 監査・説明責任が必要 | 上場準備、銀行借入 |
| 5 | AI / エージェントがデータを触る | 自然言語で「売上」と聞かれる(Stage 5 で接続) |
| シグナル数 | 推奨アクション |
|---|---|
| 0–1 | ER + データディクショナリで十分なことが多い |
| 2–3 | 用語集 + ビジネスルール文書 + スチュワードレビュー |
| 4+ | 概念モデル/オントロジー的整理 + SSOT 指標へ接続 |
6. ツールは後:まず「合意可能な言葉」
Palantir Foundry、Knowledge Graph、RDF——製品名は様々です。 入門トラックで重要なのは ツール選定 ではなく、次の 3 点です。
- 概念(Customer, Order, Revenue)に一意の定義を付ける
- 関係(is-a, part-of, precedes)を明示する
- ルール(いつ売上か、何を除外するか)を変更管理する
さくら商事では、スチュワードの佐藤さん(経理)と田中さん(マーケ)が、1 枚の用語集 から始めました。
| 用語 | 定義 | オーナー | 最終更新 |
|---|---|---|---|
| 公式売上 | 出荷完了ベース、キャンセル除外、返品は refunds で調整 | 経理 | 2026-06-01 |
| アクティブ顧客 | 過去 90 日に完了注文あり | マーケ | 2026-05-15 |
これは簡易オントロジーです。後からセマンティックレイヤーやカタログに載せられます。
7. DAMA・SSOT との接続
| 枠組み | オントロジーの位置づけ |
|---|---|
| DAMA | データモデリング・設計 + メタデータの 意味層 |
| SSOT | 指標だけでなく 用語定義 の正本にもなる |
| 品質 | Validity(妥当性)——定義に沿っているか |
| ガバナンス | 用語変更の承認フロー |
ER が 骨格、オントロジーが 神経、SSOT が 公式の参照先 —— そう考えると、Stage 2 の流れが一本につながります。
体系コラム:カリキュラム上の位置づけ
| 項目 | 内容 |
|---|---|
| Stage / 章 | Stage 2 — 第3章「オントロジーと意味」 |
| 今回の論点 | ER は構造を示すが、返品を売上に含めるか など意味は別レイヤー |
| DAMA 領域 | データモデリング(意味層)、メタデータ管理 |
| ライフサイクル | 生成・加工の 定義合意 が先。活用前に Validity を担保 |
| 前章との接続 | ER・SSOT・マスターデータ の構造に、ビジネスルールを載せる |
| 次章への伏線 | メタデータとリネージ — 定義を 追跡可能 にする |
コラム:よくある誤解 —「オントロジー=難しいグラフ DB を入れること」
オントロジーと聞くと、RDF や Knowledge Graph、専用製品の導入を連想する人が多いです。さくら商事でも「Foundry 入れれば?」という雑談が一度出ましたが、鈴木さんは ツール以前に合意可能な言葉 がないとグラフも空箱だと指摘しました。
実際に効いたのは、佐藤さんと田中さんが作った 1 枚の用語集 です。「公式売上」「アクティブ顧客」「返品反映」の 3 語に、定義・オーナー・最終更新日を付けただけで、会議の定義確認は半分以下になりました。OWL ファイルはまだありません。
オントロジー的作業のシグナルは、CASE WHEN が 20 行を超える、同じ名詞で部門が割れる、監査で説明責任が問われる——といった 現場の痛み です。グラフ DB は、その痛みを整理した 後 の選択肢の一つに過ぎません。
まとめ
| 観点 | ER | オントロジー |
|---|---|---|
| 焦点 | 構造・キー | 意味・ルール |
| さくら商事の痛点 | 表はある | 返品・キャンセルの解釈が割れる |
| 最初の一歩 | ER 図共有 | 用語集 + ビジネスルール 1 枚 |
この章のキーメッセージ:
テーブルがきれいでも、意味が合意されていなければ 正しい SQL は存在しません。 オントロジーは難しい哲学ではなく、会議で揉める言葉を固定する作業 です。
次に読む
- 前章: ER・SSOT・マスターデータ
- 次章: メタデータとリネージ
- 関連: 指標定義(analytics)
確認問題
問題 1
さくら商事で orders テーブルは全員同じ ER を見ているが、返品の扱いで売上が割れる。
最も本質的な原因 はどれですか。
A. JOIN の書き方が悪い
B. 返品・売上確定の 業務定義 が合意されていない
C. BigQuery のリージョンが違う
D. ER 図の線の色が統一されていない
正解: B
解説: 構造は共有できても 意味 が未合意だと WHERE が割れます。A は症状への対症療法、C/D は無関係です。
問題 2
「キャンセル済み注文は売上確定と両立しない」というルールを、オントロジー的に表すと 最も近い のはどれですか。
A. part-of
B. excludes(相互に成立しない関係)
C. is-a
D. 外部キー制約
正解: B
解説: 業務上の 排他 は excludes 的ルールです。part-of は構成、is-a は種別、D は ER/DDL の話です。
問題 3
山田さんが「オントロジー導入 = OWL ファイルを全部書く」と理解している。 データマネジメント入門の観点で 最も適切な修正 はどれですか。
A. OWL だけがオントロジーなので、全テーブルを RDF 化する
B. まず用語集・ビジネスルール・オーナーで 合意可能な意味 を固定し、必要に応じてツール化する
C. オントロジーは不要。ER さえあれば売上は自動的に一致する
D. 返品問題は SQL の WINDOW 関数で解決する
正解: B
解説: 入門レベルでは 合意と文書化 が本体です。A は過剰、C は Stage 1–2 で否定済み、D は定義問題を技術で覆い隠します。
用語メモ(この章)
| 用語 | 意味(この章での使い方) |
|---|---|
| オントロジー(Ontology) | 概念と業務上の関係・ルールを形式化して整理する枠組み |
| is-a | 「A は B の一種」という種別関係 |
| part-of | 「A は B の一部」という構成関係 |
| 売上確定(Revenue Recognition) | 経理上、売上として認めるタイミングと条件 |
| ビジネスルール | キャンセル・返品等の例外を含む業務上の判断基準 |