OpenMetadata は、データ発見(Discovery)/データ観測(Observability)/データガバナンス(Governance)を一つのプラットフォームで扱う、統合メタデータ管理基盤のOSS。中央メタデータリポジトリ、列レベルのリネージ、チームコラボレーション機能を備える。
構成は4層:
openmetadata-spec/): JSON Schema による正準データモデル定義。コード生成の起点。openmetadata-service/): Java 21 + Dropwizard ベースの REST API と MySQL/PostgreSQL + Elasticsearch/OpenSearch をバックエンドにしたメタデータの中央リポジトリ。ingestion/): Python 3.10–3.11 + Pydantic 2 によるプラガブルな取り込み基盤。BigQuery・Snowflake・Redshift・Databricks・Airflow・dbt・Tableau 等 75〜84 種のコネクタを同梱。加えて React/TypeScript フロントエンド(openmetadata-ui/、Tailwind v4 の tw: プレフィックスを採用した独自コンポーネントライブラリ)、Airflow ベースのワークフロー、K8s オペレータ、MCP サーバ、SDK(Java/Python)、Docker 一式が同梱された モノレポ。
| 従来手段 | 課題 | OpenMetadata の解 |
|---|---|---|
| Excel / Confluence での手作り台帳 | 常に陳腐化、リネージ不可 | コネクタ経由で自動取り込み・同期 |
| DataHub(LinkedIn 発) | Kafka 依存のイベント駆動でスタックが重い | MySQL/PostgreSQL + ES/OS のみで軽量起動、Docker 1 コマンド |
| Amundsen(Lyft 発) | 発見特化でガバナンス・観測が弱い | Discovery + Lineage + Quality + Governance + Observability を一本化 |
| Alation / Collibra 等 商用 | 高価でベンダーロックイン | Apache 2.0 完全 OSS、セルフホスト可能 |
| 個別ツール併用(Great Expectations + Marquez + Atlas…) | 連携コストが高い | 単一プラットフォームで完結、Slack/Teams/Webhook 連携も標準 |
特色は Schema-First アーキテクチャ(make generate で Java/Python/TS のモデルを一括生成)、列レベルリネージ、ノーコード Data Quality、KPI ダッシュボード、ロール/ポリシーベースの細粒度アクセス制御、そして「メタデータを書くプロデューサー」と「検索・ガバナンス UI」を共通 API で結ぶ一貫設計。
./docker/run_local_docker.sh -m ui -d mysql
→ localhost:8585 で UI、MySQL + ES + Airflow が起動。
openmetadata-spec/ の Connection JSON Schema から動的生成されるフォーム)。mvn clean install(spec)→ make generate(全言語モデル再生成)。mvn clean package、mvn spotless:apply。yarn start / yarn test / yarn playwright:run。ingestion/src/metadata/ingestion/source/ 配下にプラグインとして追加。要するに、OSS で自前運用可能な「データカタログ + データ品質 + リネージ + ガバナンス + 観測」の全部乗せ基盤であり、スキーマ駆動の拡張性と豊富なコネクタで、DataHub/Amundsen/商用カタログの代替として位置付けられる。