データの散在を明確さに変える準備はできていますか?DataHub は、元々 LinkedIn で作成されたオープンソースのメタデータプラットフォームで、チームがデータウェアハウス、BI ツール、オーケストレーションシステムなどでデータを検出、信頼、管理するのに役立ちます。この実践的なステップバイステップガイドでは、専門用語に迷うことなく、ゼロから DataHub のインスタンスを動作させ、メタデータを取り込み、リネージを探索し、ガバナンスをセットアップします。
概要:学習内容
- 一般的なソース(例:Snowflake、BigQuery、dbt)からメタデータを取り込み
- UI での検索、リネージ、所有権、ドキュメントを探索
注:これは、実際のワークフローに対応するように設計された、実践的でソリューション指向のチュートリアルです。必要に応じて、詳細やより深い理解のために公式ドキュメントを引用します。
- クイックスタート:DataHub をローカルで実行する
DataHub を実験またはパイロット運用する場合、最も速い方法はクイックスタートです。まず、Docker がインストールされていることを確認してください。次に:
公式のクイックスタートの詳細、コマンド、デフォルトはこちらにあります。この紹介では、アーキテクチャと、DataHub が最新のスタックに適したリアルタイムメタデータモデル(エンティティ、アスペクト、ストリーミングアップデート)を使用する理由について説明しています。
スマートなセットアップのヒント:
- 後で Kubernetes に移行する予定がある場合でも、ローカルから開始してください。導入とデモがより迅速に行えます。
- すでに Docker Desktop がインストールされている場合は、通常数分以内に起動できます。
- サンドボックスでも、クレデンシャルを安全に保管してください。今構築した習慣は後で役に立ちます。
- 5 分でコアコンセプトを理解する
何かを取り込む前に、DataHub のメンタルモデルに慣れてください:
- エンティティ:データセット、テーブル、チャート、ダッシュボード、パイプライン、ユーザーなど。
- アスペクト:エンティティに関するメタデータのバージョン管理された「ファセット」(スキーマ、所有権、タグ、グロッサリー用語、リネージ)。
- グラフ:リレーションシップ(リネージ、所有権、依存関係)が検索とディスカバリーエクスペリエンスを強化します。
このグラフベースのアプローチにより、影響分析(このカラムを変更すると何が壊れるか?)、下流のリネージマッピング、信頼シグナル(所有者、タグ、ドキュメント)などの機能が実現します。簡潔な概念の概要は、入門ガイドにあります。
- メタデータの取り込み:UI vs. CLI(パスを選択)
DataHub は、ユーザーフレンドリーな UI 取り込みと、スクリプト可能な CLI パイプラインの両方をサポートしています。今日のワークフローに合ったものを選択してください。多くのチームが両方を使用しています。
オプション A:UI ベースの取り込み(初回実行に最適)
- UI で、[Ingestion(取り込み)]→[New Source(新しいソース)]に移動します。
- ソースを選択します(例:Snowflake、BigQuery、dbt、Kafka、Looker、Tableau)。
- オンデマンドで取り込みをスケジュールまたは実行します。
UI フローと手順はこちらで説明されています。エンジニアではない人や、接続性を迅速に検証したいチームに最適です。
オプション B:CLI ベースの取り込み(反復可能で CI フレンドリー)
- ソース、フィルター、マッピングを定義する YAML レシピを作成します。
- 実行:datahub ingest -c recipe.yml
- 反復可能性のために、レシピをバージョン管理にコミットします。
CLI 取り込みとレシピの詳細はこちらに記載されています。このアプローチは、開発/本番パイプライン、自動化、および一貫性に適しています。
取り込みのプロのヒント:
- 最も重要な 1 つまたは 2 つのソース(例:Snowflake + dbt)から開始します。迅速な成功は勢いを増します。
- 積極的にフィルタリングします。初日にすべてのサンドボックスデータセットを取り込まないでください。ノイズが発生します。
- プラットフォームインスタンス名(snowflake:prod 対 snowflake:dev など)を追加して、混乱を避けます。
- UI の探索:検索、リネージ、および所有権
最初の取り込みが完了したら、UI に飛び込んで価値を迅速に検証します:
- ユニバーサル検索:名前、スキーマ、タグ、またはグロッサリー用語でデータセット、ダッシュボード、およびパイプラインを検索します。
- リネージグラフ:データセットをクリックして、アップストリームおよびダウンストリームの接続を確認します。これは影響分析に非常に役立ちます。
- 所有権とドキュメント:所有者(チームまたはユーザー)を追加し、明確な説明を記述します。これらは、組織が感じる最初の信頼シグナルです。
- スキーマとプロファイリング:カラム名、型、およびサンプル統計を確認します。異常を早期に発見します。
- 意味の追加:グロッサリー、タグ、およびドメイン
生のメタデータはほんの始まりです。セマンティクスを重ねることで、実際の導入を促進できます:
- グロッサリー用語:ビジネスに適した概念(顧客、ARR、アクティブユーザー)を定義します。データセット/カラムにアタッチして、言語を標準化します。
- タグ:軽量ラベル(PII、Critical、Deprecated、Gold)。リスクと重要性を示す簡単な視覚的な手がかり。
- ドメイン:ビジネス機能(財務、マーケティング)またはプラットフォームで関連するアセットをグループ化します。
推奨される最初のタクソノミー:
- 誰もが理解できる 3 つのグロッサリー用語(顧客、注文、収益)
- 小さなタグセット:pii、gold、deprecated、experimental
- 組織図またはデータプラットフォームに対応する 5〜7 個のドメイン
- スケールするガバナンス:ポリシーとアクセス
DataHub は、ロールベースおよびアセットベースのポリシーをサポートしているため、ドキュメントの編集、タグの追加、リネージの管理など、誰が何ができるかを制御できます。簡単に始めましょう:
- ドキュメント、所有権、およびタグに対する編集権限を持つ「Stewards(管理者)」グループを作成します。
- アナリストにはほとんどのアセットへの読み取りアクセス権を付与しますが、機密性の高いドメインは制限します。
- 「Top Picks(おすすめ)」に表示される前に、「gold(ゴールド)」データセットの所有者を必須にします。
ポリシーとガバナンスはプラットフォーム内に存在するため、エディターとビューアーのエクスペリエンスは一貫しています。組織が成熟するにつれて、より詳細な権限と承認フローで拡張します。
- 運用上のベストプラクティス:定着させる
メタデータプログラムは、余分な作業のように感じられると失敗します。DataHub を通常のフローの一部にします:
- PR/CI に埋め込む:データパイプラインが変更された場合、メタデータの取り込みを実行し、スキーマの差分を比較します。破壊的な変更を自動的にフラグ付けします。
- dbt と連携:dbt のドキュメント、テスト、およびエクスポージャーを使用します。DataHub でそれらを表示して、コードをビジネスコンテキストに接続します。
- 「Adoption Playbook(導入プレイブック)」を作成します。所有者は、オンボーディング中にドキュメント、タグ、およびグロッサリー用語を追加します。スコアカードを通じて品質を評価します。
- データコントラクトを発行します。主要なテーブルについて、SLA、鮮度、Null 可能性、および安定性ルールを定義します。DataHub でそれを表示します。
- インフラストラクチャ:ローカル Docker からマネージド環境(Kubernetes、クラウドサービス)に移行します。組織で利用可能な場合は、ホストされたオプションを検討してください。
- 認証/SSO:ID プロバイダー(Okta、Azure AD など)と統合します。
- 可観測性:取り込みジョブ、グラフサイズ、および UI パフォーマンスを監視します。
- 変更管理:メタデータレビューの頻度を確立します(例:毎週の管理同期)。
- 「テーブルが表示されない」。ネットワークルール、クレデンシャル、およびソースフィルターを確認します。最小限の取り込みレシピを実行して、問題を切り分けます。
- 「リネージが不完全」。オーケストレーション(Airflow)、変換(dbt)、およびウェアハウスソースから取り込んでいることを確認してください。リネージには、多くの場合、複数のコネクターが必要です。
- 「検索が乱雑に感じる」。フィルターを絞り込み、タグ/グロッサリーを追加し、非推奨のアセットを非表示にします。
- 「ドキュメントが古くなっている」。定期的な取り込みをスケジュールします。コードの変更と並行して、所有者に説明を更新するように促します。
- 例:48 時間で価値を迅速に実現するパス
1 日目
- クイックスタートを介して DataHub をローカルでスピンアップします。
- UI 取り込みを使用して、ウェアハウス(Snowflake/BigQuery)から取り込みます。
- 5 つの重要なデータセットに所有者と説明を追加します。
- 顧客と収益のグロッサリー用語を作成します。それらのデータセットを gold としてタグ付けします。
2 日目
- dbt メタデータを取り込んで、モデルをテーブルに接続します。
- 取り込み→変換→ BI 全体でリネージを検証します。
- 管理者のみが gold データセットのドキュメントを変更できるポリシーを作成します。
- リネージビューと検索エクスペリエンスを利害関係者にデモします。フィードバックを収集します。
主要な参考文献
- クイックスタート:ローカルセットアップ、クレデンシャル、ポート、コマンド
Sider.AI が役立つ場所
チームがベストプラクティスを頻繁に調査したり、データセットドキュメントを作成したり、リネージとスキーマの変更に関するわかりやすい要約が必要な場合は、Sider.AI がドキュメント作成と知識共有を加速できることに注目する価値があります。たとえば、複雑なスキーマの差分を人間が読める変更ログに変換したり、管理者が改善するデータセットの説明の最初のドラフトを生成したりして、生のメタデータから使用可能なコンテキストまでの時間を短縮できます。 チートシート:最初の 10 個のアクション
- クイックスタートを介して DataHub をローカルで起動します。
- UI 取り込みを介して 1 つのウェアハウスソースを追加します。
- リネージのために dbt またはオーケストレーションメタデータを取り込みます。
- 5〜10 個のキーデータセットに所有者を追加します。
- 3 つのグロッサリー用語と 4〜6 個のタグを作成します。
- 5 つのデータセットを gold としてタグ付けし、非推奨のデータセットを非表示にします。
- 管理者のための 1 つのエディターポリシーを設定します。
- UI を 2 つの利害関係者チームにデモし、フィードバックを収集します。
次は何ですか?
- Kubernetes またはマネージド環境にスケールします。
- ガバナンスのために SSO とグループを展開します。
- BI およびイベントストリームへの取り込みを拡張します。
- データ品質とドキュメントの完全性のためのスコアカードを作成します。
- スキーマの変更が常にカタログに反映されるように、CI/CD と統合します。
最終的なポイント
- 速度を重視する場合は UI 取り込みを使用します。再現性を重視する場合は CLI を使用します。
- 信頼を高めるために、グロッサリー、タグ、およびポリシーを早期にレイヤー化します。
- 完全なリネージのために、ウェアハウス + dbt + BI を接続します。
- ドキュメントを作成後の追加ではなく、開発の一部として扱います。
FAQ
Q1:DataHub とは何ですか?なぜ使用する必要があるのですか?
DataHub は、データスタック全体でのディスカバリー、リネージ、およびガバナンスのためのオープンソースのメタデータプラットフォームです。チームが信頼できるデータセットを見つけ、影響を理解し、ドキュメントを標準化するのに役立ちます。公式の紹介で基本を学びましょう。
Q2:DataHub をすばやくインストールするにはどうすればよいですか?
クイックスタートを使用します。Docker をインストールし、CLI をインストールしてから、単一のコマンドで開始します。UI にローカルでアクセスし、デフォルトでログインして、セットアップをすばやく検証できます。
Q3:DataHub で UI 取り込みと CLI 取り込みのどちらを使用する必要がありますか?
すばやく開始したり、エンジニアではない人を関与させたりするには、UI ベースの取り込みを使用します。これは、初回接続とデモに最適です。バージョン管理されたレシピ、自動化、および CI/CD 統合の場合は、CLI 取り込みに切り替えます。
Q4:DataHub でリネージを表示するにはどうすればよいですか?
複数のソース(ウェアハウス(例:Snowflake)、変換レイヤー(例:dbt)、およびオーケストレーション(例:Airflow))から取り込みます。DataHub がこれらの要素を接続すると、リネージが表示されます。
Q5:DataHub で最初に有効にする必要があるガバナンス機能は何ですか?
所有権、簡潔な説明、小さなグロッサリー、および gold、pii、deprecated などの一貫性のあるタグから始めます。次に、重要なアセットを編集できるユーザーを制御し、定期的な取り込みをスケジュールするためのポリシーを追加します。