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

サーバレス コンピュートのベストプラクティス

この記事では、ノートブックとジョブでサーバレス コンピュートを使用するためのベスト プラクティスの推奨事項を示します。

これらの推奨事項に従うことで、Databricks 上のワークロードの生産性、コスト効率、信頼性を向上させることができます。

サーバレス コンピュートへのワークロードの移行

ユーザコードの分離を保護するために、サーバレス コンピュート Databricks セキュア標準アクセスモード (以前の共有アクセスモード) を利用しています。 このため、一部のワークロードでは、サーバレス コンピュートで作業を続けるためにコードの変更が必要になります。 サポートされていない機能のリストについては、 サーバレス コンピュートの制限事項を参照してください。

特定のワークロードは、他のワークロードよりも移行が容易です。 次の要件を満たすワークロードは、最も簡単に移行できます。

  • アクセスするデータは、Unity Catalog に保存する必要があります。
  • ワークロードは、標準アクセスモードのコンピュートと互換性がある必要があります。
  • ワークロードは、Databricks Runtime 14.3 以降と互換性がある必要があります。

ワークロードがサーバレス コンピュートで動作するかどうかをテストするには、 標準 アクセス モードで Databricks Runtime が 14.3 以上の非サーバレス コンピュート リソースでワークロードを実行します。 実行が成功すると、ワークロードは移行の準備ができています。

この変更の重要性と現在の制限事項のリストにより、多くのワークロードはシームレスに移行されません。 Databricks では、すべてを再コーディングするのではなく、新しいワークロードを作成する際にサーバレス コンピュートの互換性を優先することをお勧めします。

外部システムからのデータの取り込み

サーバレス コンピュートは JAR ファイルのインストールをサポートしていないため、 JDBC ドライバや ODBC ドライバを使用して外部データソースからデータを取り込むことはできません。

データ取り込みに使用できる別の戦略には、次のものがあります。

インジェストの代替手段

サーバレス コンピュートを使用する場合、次の機能を使ってデータを移動せずにクエリを実行することもできます。

  • データの重複を制限したい場合、または可能な限り最新のデータをクエリしていることを保証する場合、Databricks では Delta Sharing を使用することをお勧めします。 「Delta Sharing とは」を参照してください。
  • アドホックなレポート作成や概念実証の作業を行いたい場合は、 Databricks は正しい選択、つまりレイクハウスフェデレーションを試すことをお勧めします。 レイクハウスフェデレーションは、データベース全体を外部システムから Databricks に同期することを可能にし、 Unity Catalogによって管理されます。 「レイクハウスフェデレーションとは」を参照してください。

これらの機能の 1 つまたは両方を試して、クエリのパフォーマンス要件を満たしているかどうかを確認してください。

サーバレス コンピュートのコストを監視する

サーバレス コンピュートのコストを監視するために使用できる機能は複数あります。