メインコンテンツまでスキップ

相互運用性と使いやすさに関するベストプラクティス

この記事では、 相互運用性と使いやすさ のベスト プラクティスを、次のセクションに示すアーキテクチャの原則別に整理して説明します。

1. 統合の標準を定義する

外部統合に標準的で再利用可能な統合パターンを使用する

統合標準は、さまざまなシステムやアプリケーション間でデータをどのように表現、交換、処理するかについてのガイドラインを提供するため、重要です。 これらの標準は、データの互換性、高品質、およびさまざまなソースと宛先間での相互運用性を確保するのに役立ちます。

Databricks レイクハウスには、プラットフォームのほぼすべての側面をプログラムで管理できる包括的な REST API が付属しています。 REST API サーバーはコントロールプレーンで実行され、Databricks プラットフォームを管理するための統合エンドポイントを提供します。

REST API は、常に使用できる最低レベルの統合を提供します。 ただし、Databricks と統合する推奨される方法は、 Databricks SDKCLI ツールなどの高レベルの抽象化を使用することです。 CLI ツールはシェルベースであり、Databricks プラットフォームを CI/CD および MLOps ワークフローに簡単に統合できます。

最適化されたコネクタを使用して、データソースをレイクハウスに取り込む

Databricks は、Delta Lake にデータを取り込むためのさまざまな方法を提供します。

  • は、データのリアルタイムに近いデータ インジェストのための など、Databricks ストリーム メッセージング サービス用に最適化されたコネクタ を提供します。ApacheKafka

  • Databricks は、 多くのクラウドネイティブデータシステム への組み込み統合と、他のデータシステムに接続するための拡張可能な JDBC サポートを提供します。

  • ETLなしでデータソースを統合するための1つのオプションは、レイクハウスフェデレーションです。レイクハウスフェデレーションは、 Databricksのクエリフェデレーションプラットフォームです。 クエリ フェデレーションという用語は、すべてのデータを統合システムに移行しなくても、ユーザーとシステムが複数のデータソースに対してクエリを実行できるようにする機能のコレクションを表します。 Databricks は Unity Catalog を使用してクエリのフェデレーションを管理します。 Unity Catalog のデータガバナンスツールとデータリネージツールにより、Databricks ワークスペース内のユーザーが実行するすべてのフェデレーションクエリのデータアクセスが管理および監査されます。

注記

Databricks プラットフォームでレイクハウスフェデレーション ソースを使用するクエリは、そのソースに送信されます。ソースシステムが負荷を処理できることを確認します。 また、ソース システムが別のクラウド リージョンまたはクラウドにデプロイされている場合は、クエリごとにエグレス コストが発生することに注意してください。

認定パートナーツールの使用

組織にはさまざまなニーズがあり、1 つのツールでそれらすべてを満たすことはできません。 Partner Connectでは、データ取り込み、準備と変換、BIと視覚化、機械学習、データ品質など、レイクハウスのあらゆる側面をカバーするパートナーを探索し、簡単に統合することができます。Partner Connect では、選択した Databricks 技術パートナーとトライアル アカウントを作成し、Databricks UI からDatabricksワークスペースをパートナー ソリューションに接続することができます。Databricks レイクハウスのデータを使用してパートナーソリューションを試し、ビジネスニーズに最適なソリューションを採用してください。

データエンジニアリングパイプラインの複雑さを軽減

データエンジニアリングパイプラインの複雑さを軽減するための投資を行うことで、スケーラビリティ、俊敏性、柔軟性を実現し、より迅速に拡張し、イノベーションを起こすことができます。 簡素化されたパイプラインにより、タスク オーケストレーション、クラスター管理、モニタリング、データ品質、エラー処理など、データ エンジニアリング パイプラインのすべての運用ニーズの管理と適応が容易になります。

DLT は、信頼性、保守性、およびテスト性に優れたデータ処理パイプラインを構築するためのフレームワークです。データに対して実行する変換を定義すると、DLT はタスク オーケストレーション、クラスタリング管理、モニタリング、データ品質、およびエラー処理を処理します。 DLTとはを参照してください。

Auto Loader は 、新しいデータ ファイルがクラウド ストレージに到着すると、段階的かつ効率的に処理します。クラウドストレージからデータファイルを確実に読み取ることができます。DLT と Auto Loader の両方の重要な側面は、その宣言型の性質です: それらがなければ、通知サービスやキューイング サービスなどのさまざまなクラウド サービスを統合する複雑なパイプラインを構築する必要があります。これにより、イベントに基づいてクラウド ファイルを確実に読み取り、バッチ ソースとストリーミング ソースを確実に組み合わせることができます。

Auto Loader と DLT は、システムの依存関係と複雑さを軽減し、クラウド ストレージとの相互運用性、およびバッチやストリーミングなどの異なるパラダイム間の相互運用性を大幅に向上させます。副作用として、パイプラインのシンプルさにより、プラットフォームの使いやすさが向上します。

Infrastructure as Code (IaC) をデプロイとメンテナンスに使用

HashiCorp Terraformは、複数のクラウドプロバイダー間で安全で予測可能なクラウドインフラストラクチャを作成するための人気のあるオープンソースツールです。 「オペレーショナル エクセレンス: デプロイとメンテナンスのためのコードとしてのインフラストラクチャの使用」を参照してください

2. オープンインターフェースとオープンデータフォーマットの活用

オープンデータ形式の使用

オープンデータ形式を使用するということは、その使用に制限がないことを意味します。 これは、分析やビジネスの知見を促進するためのデータへのアクセスと使用の障壁を取り除くため、重要です。 Apache Spark上に構築されたものなどのオープン形式には、ACIDトランザクション、統合ストリーミング、バッチ データ処理のサポートによりパフォーマンスを向上させる機能も追加されています。さらに、オープンソースはコミュニティ主導であるため、コミュニティは常に既存の機能の改善と新しい機能の追加に取り組んでおり、ユーザーがプロジェクトを最大限に活用しやすくなります。

Data Intelligence Platform で使用される主要なデータ形式は Delta Lakeで、信頼性機能からパフォーマンスの向上まで、多くの利点を提供する完全にオープンなデータ形式です (ACIDトランザクションをサポートするデータ形式の使用」および「パフォーマンス効率のベスト プラクティス」を参照してください。

そのオープンな性質のために、 Delta Lake は大規模なエコシステムが付属しています。 Delta Lakeは、数十のサードパーティツールとアプリケーションをサポートしています。

相互運用性をさらに強化するために、Delta Universal Format (UniForm) を使用すると、Iceberg リーダー クライアントで Delta テーブルを読み取ることができます。 UniFormは、データを書き換えることなく、Icebergメタデータを非同期で自動的に生成するため、IcebergクライアントはDeltaテーブルをIcebergテーブルであるかのように読み取ることができます。 データファイルの 1 つのコピーで両方の形式に対応します。

すべてのデータ資産で安全なデータとAI共有を実現

データとAI資産を共有することで、より良いコラボレーションと意思決定が可能になります。 ただし、データを共有する場合は、制御を維持し、データを保護し、関連するデータ共有に関する法律や規制へのコンプライアンスを確保することが重要です。

Delta Sharing は、Databricks が開発したオープンプロトコルで、使用するコンピューティングプラットフォームに関係なく、他の組織とデータを安全に共有します。 Databricks ワークスペースの外部のユーザーとデータを共有する場合は、Databricks を使用しているかどうかに関係なく、オープン Delta Sharing を使用してデータを安全に共有できます。 が有効になっているDatabricks ワークスペースを持つユーザーとデータを共有する場合は、Unity Catalog Databricks-to-DatabricksDelta Sharingを使用できます。

どちらの場合も、 テーブルビューボリュームモデルノートブックを共有できます。

  • パートナーとデータを共有するには、オープンな Delta Sharing プロトコルを使用します。

    Delta Sharing は、レイクハウスのライブデータを任意のコンピューティングプラットフォームに 安全に共有するためのオープンソリューションを提供します 。 受信者は、Databricksプラットフォーム上、同じクラウド上、またはどのクラウド上にいる必要もありません。 Delta Sharing は Unity Catalog とネイティブに統合されているため、組織は企業全体で共有データと AI アセットを一元的に管理および監査し、セキュリティとコンプライアンスの要件を満たすデータと AI アセットを自信を持って共有できます。

    データプロバイダーは、ライブデータとAIモデルをデータプラットフォームに保存されている場所から共有でき、それを別のシステムに複製したり移動したりすることはありません。 このアプローチにより、データ プロバイダーは、クラウド、地域、またはデータ プラットフォーム間で各データ コンシューマーにデータを複数回レプリケートする必要がないため、データと AI 共有の運用コストが削減されます。

  • Databricks-to-DatabricksDelta SharingDatabricksユーザー間で を使用します。

    メタストアにアクセスできないユーザーとデータを共有する場合は、受信者がUnity Catalog Databricks-to-DatabricksDelta Sharingが有効になっているDatabricks ワークスペースにアクセスできる限り、Unity Catalog を使用できます。Databricks-to-Databricks 共有を使用すると、他の Databricks アカウントのユーザー、クラウドリージョン間、およびクラウドプロバイダー間でデータを共有できます。 これは、自分の Databricks アカウント内のさまざまな Unity Catalog メタストア間でデータを安全に共有するための優れた方法です。

MLライフサイクル管理にオープンスタンダードを使用

オープンソースデータ形式を使用するのと同様に、 AI ワークフローにオープンスタンダードを使用すると、柔軟性、俊敏性、コスト、セキュリティの点で同様のメリットが得られます。

MLflowは、MLとAIのライフサイクルを管理するためのオープンソースプラットフォームです。は、エンタープライズ セキュリティ機能、高可用性、およびエクスペリメントや実行管理、ノートブックのリビジョン追跡などの他のDatabricks ワークスペース機能と統合された、フルマネージド およびホスト型バージョンの を提供します。MLflowDatabricks

主なコンポーネントは、MLモデルとディープラーニングモデルを自動的にログに記録して追跡する実験追跡 、機械学習モデルをパッケージ化するための標準形式としてのUnity Catalogモデル 、 と統合された モデルレジストリ 、およびスケーラブルなエンタープライズグレードの モデルサービング です。

3. 新しいユースケースの実装を簡素化する

プラットフォーム全体でセルフサービスエクスペリエンスを提供

ユーザーが自分のニーズに応じてツールや機能を自律的に使用できるプラットフォームには、いくつかの利点があります。 セルフサービス プラットフォームの構築に投資すると、より多くのユーザーにサービスを提供できるように拡張することが容易になり、ユーザーのプロビジョニング、問題の解決、アクセス要求の処理に人間が関与する必要性が最小限に抑えられるため、効率が向上します。

Databricks Data Intelligence Platform には、セルフサービスエクスペリエンスを提供するために必要なすべての機能が備わっています。 必須の承認手順がある場合もありますが、ベスト プラクティスは、ビジネス ユニットがレイクハウスへのアクセスを要求したときにセットアップを完全に自動化することです。 新しい環境を自動的にプロビジョニングし、ユーザーを同期して認証にSSOを使用し、共有データへのアクセス制御を提供し、自分のデータ用にオブジェクトストアを分離します。 意味的に一貫性のあるビジネス対応データセットの中央データカタログとともに、新しいビジネスユニットはレイクハウス機能と必要なデータに迅速かつ安全にアクセスできます。

Use サーバレス コンピュート

プラットフォーム上の サーバレス コンピュート Databricksの場合、コンピュート レイヤーは顧客のDatabricks アカウントで実行されます。クラウド管理者は、クォータの調整、ネットワーク リソースの作成と保守、請求ソースへの接続を必要とする複雑なクラウド環境を管理する必要がなくなりました。 ユーザーは、クラスター、起動待ち時間、クエリの同時実行性の向上というメリットを享受できます。

定義済みのコンピュートテンプレートを使用する

定義済みのテンプレートは、ユーザーによるコンピュート リソースの使用または作成方法を制御するのに役立ちます: ユーザー クラスターの作成を所定の設定または特定の数に制限する、ユーザー インターフェイスを簡略化する、またはクラスターあたりの最大コストを制限することでコストを制御する。

データインテリジェンスプラットフォームは、次の2つの方法でこれを実現します。

  • 共有クラスターをユーザーの即時環境として提供します。 これらのクラスターでは、オートスケールを使用してノードの数を最小限に抑え、アイドル コストが高くならないようにします。
  • 標準化された環境の場合は、 コンピュート ポリシー を使用して、クラスターのサイズまたは機能を制限するか、T シャツ サイズのクラスター (S、M、L) を定義します。

AI機能を活用して生産性を向上

AIツールは、生産性の向上だけでなく、エラーのパターンを特定し、そのインプットに基づいて追加の知見を提供するのにも役立ちます。全体として、これらのツールを開発プロセスに組み込むことで、エラーを大幅に減らし、意思決定を容易にし、リリースまでの時間を短縮できます。

AI を活用したナレッジエンジンである Databricks IQ は、Data Intelligence Platform の中核をなすものです。 Unity Catalog のメタデータを活用して、組織全体のテーブル、列、説明、一般的なデータアセットを理解し、パーソナライズされた回答を提供します。 これにより、プラットフォームを使用する際の生産性を向上させる次のようないくつかの機能が有効になります。

  • Databricks Assistant を使用すると、会話型インターフェイスを介してデータをクエリできるため、Databricks での生産性が向上します。 タスクを英語で説明し、ウィザードでSQLクエリを生成し、複雑なコードを説明し、エラーを自動的に修正します。
  • Unity Catalog によって管理される任意のテーブルまたはテーブル列に対して AI が生成するコメントにより、メタデータ管理プロセスがスピードアップします。ただし、AIモデルは常に正確であるとは限らず、コメントを保存する前に確認する必要があります。 Databricks では、AI が生成したコメントを人間がレビューして不正確さをチェックすることを強くお勧めします。

4. データの一貫性と有用性を確保する

ビジネスが信頼できる再利用可能な製品としてのデータを提供する

AIとデータドリブンを目指す組織は、多くの場合、高品質で信頼できるデータを社内チームに提供する必要があります。 品質とユーザビリティを優先するアプローチの 1 つは、明確に定義された "データ製品" を作成することで、公開されたデータ資産に製品思考を適用することです。 このようなデータ製品を構築することで、組織はデータとAIの目標に対する標準とビジネスの真実の信頼できる基盤を確立することができます。 データ製品は、ユーザーとアプリケーションが適切なデータを、適切なタイミングで、適切な品質で、適切な形式で持っている場合に、最終的に価値を提供します。 この価値は、従来、低コスト、より迅速なプロセス、リスクの軽減によるより効率的な運用という形で実現されてきましたが、最新のデータ製品は、組織の業界やパートナーエコシステム内での新たな付加価値の提供やデータ共有の機会への道を開くこともできます。

ブログ記事「 Databricks を使用した高品質で信頼性の高いデータ製品の構築」を参照してください。

データ製品を企業全体で意味的に一貫性のある形で公開

通常、データレイクには、複数のソースシステムからのデータが含まれています。 これらのシステムは、同じ概念に対して異なる名前( 例:顧客アカウント )を持つ場合や、異なる概念を指すために同じ識別子を使用する場合があります。 ビジネスユーザーがこれらのデータセットを有意義な方法で簡単に組み合わせることができるように、意味的に一貫性を保つために、データをすべてのソースで同種にする必要があります。 また、一部のデータを分析に役立てるためには、収益認識などの内部ビジネスルールを正しく適用する必要があります。 すべてのユーザーが正しく解釈されたデータを使用していることを確認するには、これらのルールが適用されたデータセットを利用可能にし、Unity Catalog に公開する必要があります。 ソース データへのアクセスは、正しい使用法を理解しているチームに制限する必要があります。

ディスカバリーとリネージのための一元的なカタログを提供

検出とリネージのための中央カタログは、データ利用者が企業全体の複数のソースからデータにアクセスするのを支援し、中央ガバナンスチームの運用オーバーヘッドを削減します。

Unity Catalogでは、管理者とデータスチュワードは、 アカウント内のすべてのワークスペースでユーザーとデータへのアクセスを 一元的にDatabricks 管理します。異なるワークスペースのユーザーは同じデータを共有でき、Unity Catalog で一元的に付与されたユーザー権限に応じて、データに一緒にアクセスできます。

データディスカバリーの場合、 Unity Catalog は次のような機能でユーザーをサポートします。

  • Catalog Explorer は、多くの Unity Catalog 機能の主要なユーザーインターフェースです。 カタログ エクスプローラーを使用して、スキーマの詳細の表示、サンプル データのプレビュー、テーブルの詳細とプロパティの表示を行うことができます。 管理者は所有者を表示および変更でき、管理者とデータ オブジェクトの所有者はアクセス許可を付与および取り消すことができます。 また、Databricks Search を使用すると、ユーザーはデータ資産 (テーブル、列、ビュー、ダッシュボード、モデルなど) を簡単かつシームレスに見つけることができます。 ユーザーには、検索要求に関連し、アクセス権を持つ結果が表示されます。
  • データリネージ across all queries executed on a Databricks clustering or SQLwarehouse. リネージはすべての言語でサポートされており、列レベルまでキャプチャされます。 リネージデータには、クエリに関連するノートブック、ジョブ、ダッシュボードが含まれます。 リネージは、カタログエクスプローラーでリアルタイムに近い状態で視覚化し、 Databricks REST APIで取得できます。

企業がすべてのデータプラットフォームにわたるすべてのデータの全体像をユーザーに提供できるように、Unity Catalog はエンタープライズデータカタログ(「カタログのカタログ」と呼ばれることもあります)との統合を提供します。