DataHubはLinkedIn発のオープンソースデータカタログで、メタデータ収集・検索・リネージ・ガバナンスを一つのプラットフォームで提供します。2026年時点で最も活発に開発されているOSSデータカタログの1つであり、dbtとの統合も手厚いため、モダンデータスタック採用チームの有力な選択肢です。
DataHubとは何か
DataHubはLinkedIn社が社内用に開発し、2020年にオープンソースとして公開したデータカタログおよびメタデータプラットフォームです。「どこに何のデータがあり、誰が使い、どう変換されているか」を一元管理することを目的としています。
従来のデータカタログが静的なメタデータストアに近かったのに対し、DataHubはイベント駆動で動的にメタデータを取り込む設計です。Snowflake、BigQuery、dbt、Airflow、Kafkaといった主要ツールからメタデータを収集し、GraphQL APIで検索・参照できます。
DataHubのアーキテクチャ
DataHubは複数のマイクロサービスから構成されます。メタデータストア(MySQLまたはPostgres)、検索エンジン(Elasticsearch)、イベントストリーム(Kafka)、GraphQL API、フロントエンドが中核です。この構成により、メタデータの取り込みと検索がスケールする設計になっています。
全体像をテキストベースで示します。
【DataHubアーキテクチャ概念図】
[Source Systems]
Snowflake / BigQuery / dbt / Airflow / Kafka / BI
|
v
[Ingestion Framework (CLI / UI)]
|
v
[Kafka Event Bus] --> [GMS: Metadata Service]
|
+-------------------+-------------------+
v v v
[MySQL / Postgres] [Elasticsearch] [Neo4j (optional)]
メタデータ本体 検索インデックス リネージグラフ
|
v
[GraphQL API] <-- [React Frontend]
※ Ingestionは定期バッチ、またはイベント駆動で実行します。
主な機能
DataHubが提供する機能は多岐にわたります。代表的なものを表に整理しました。
| 機能カテゴリ | 機能 | 概要 |
|---|---|---|
| メタデータ収集 | Ingestion Framework | 50以上のソースに対応、YAML設定で実行 |
| 検索 | 全文検索 + ファセット | Elasticsearchベース、自然言語検索対応 |
| リネージ | カラム単位リネージ | dbt / SQLパースによる自動追跡 |
| ガバナンス | タグ / ドメイン / オーナーシップ | メタデータの責任者を明示 |
| 用語集 | Business Glossary | 業務用語の定義と紐付け |
| データ品質 | Assertions / 品質サマリ | dbt testsやGE結果を取り込み |
| API | GraphQL / REST | 外部システムとの連携に利用 |
メタデータの取り込みはDataHub CLIを通じてYAMLで宣言します。以下はSnowflakeからメタデータを取り込む設定例です。
source:
type: snowflake
config:
account_id: xyz12345
warehouse: COMPUTE_WH
username: ${SNOWFLAKE_USER}
password: ${SNOWFLAKE_PASSWORD}
role: DATAHUB_ROLE
include_table_lineage: true
profiling:
enabled: true
sink:
type: datahub-rest
config:
server: http://datahub-gms:8080
DataHubの導入方法
DataHubの導入形態は3つあります。Docker Composeによるクイックスタート、Kubernetesでの本格運用、そして商用SaaSのAcryl Cloudです。評価目的ならDocker Composeが最速で、以下の手順で起動できます。
python3 -m pip install --upgrade acryl-datahub
datahub docker quickstart
datahub docker ingest-sample-data
# ブラウザで http://localhost:9002 を開く
本番運用では、Helm chartを使ったKubernetesデプロイが推奨されます。メタデータのバックアップ、Elasticsearchのスケーリング、Single Sign-On連携などを整える必要があります。
モダンデータスタックの中核であるdbtとの統合は特に手厚く、dbt manifestとrun_resultsを読み込むだけで、モデル定義・テスト・リネージがDataHubに取り込まれます。
source:
type: dbt
config:
manifest_path: "./target/manifest.json"
catalog_path: "./target/catalog.json"
run_results_paths: ["./target/run_results.json"]
target_platform: snowflake
DataHubのメリットと課題
DataHubは強力なOSSですが万能ではありません。メリットと課題を整理すると次のようになります。
| 観点 | メリット | 課題 |
|---|---|---|
| 機能 | リネージ・検索・ガバナンスが充実 | UIの学習コストあり |
| コミュニティ | 活発、Slackで質問可能 | 日本語情報は限定的 |
| 拡張性 | マイクロサービス構成で水平スケール | 運用負荷が高め |
| 統合 | dbt / Airflow / Snowflake等と標準連携 | 独自システムは自作が必要 |
| コスト | OSSで無料、クラウドリソース次第 | Elasticsearch等のリソース要件が高い |
| セキュリティ | RBAC / SSO対応 | 設定項目が多く、初期の作り込みが必要 |
DataHub vs Acryl Data(商用版)
DataHubの開発を主導するAcryl Data社は、商用SaaSとしてAcryl Cloudを提供しています。OSS版と商用版の主な違いを整理しました。
| 項目 | OSS DataHub | Acryl Cloud |
|---|---|---|
| 運用形態 | セルフホスト | SaaS |
| インフラ管理 | 自社で構築・運用 | ベンダーが担当 |
| サポート | コミュニティ | 商用SLA |
| 追加機能 | なし | 観測性、SLA、高度なガバナンス |
| コスト | インフラ費のみ | ユーザー数ベースの課金 |
| 向くチーム | 運用リソースあり | 導入スピード重視 |
まとめ
DataHubは、モダンデータスタックを採用するチームにとって最も現実的なOSSデータカタログの選択肢です。dbt連携の手厚さ、活発な開発、豊富な機能がそろっており、PoCから本番運用までスムーズに移行できます。まずはDocker Composeで体験してみるところから始めましょう。
よくある質問
DataHubは無料で使えますか?
はい。OSS版は完全無料です。商用版のAcryl CloudはSaaSとして提供され、追加のガバナンス機能とサポートが含まれます。運用リソースがあるチームならOSS、ないチームなら商用版という住み分けが自然です。
DataHubの導入にはどのくらいのインフラが必要ですか?
Docker Compose構成で最低4GB RAM・2CPUのサーバーが必要です。本番運用ではKubernetesデプロイが推奨されます。Elasticsearchのメモリ要件が相対的に大きいため、取り込み対象の規模に応じて増強してください。
DataHubはdbtと連携できますか?
はい。dbtのメタデータ(モデル定義、テスト、リネージ)をDataHubに自動取り込みできます。datahub-dbt-integrationパッケージで設定可能です。dbt中心のデータ基盤ではこの連携が最大の価値源泉となります。