サーバーレス コンピュートのベストプラクティス
この記事では、ノートブックとジョブでサーバレス コンピュートを使用するためのベスト プラクティスの推奨事項を紹介します。
これらの推奨事項に従うことで、Databricks 上のワークロードの生産性、コスト効率、信頼性が向上します。
ワークロードをサーバレス・コンピュートに移行する
ユーザコードの分離を保護するために、サーバレス コンピュート Databricks セキュア標準アクセスモード (以前の共有アクセスモード) を利用しています。 このため、一部のワークロードでは、サーバレス コンピュートで作業を続けるためにコードの変更が必要になります。 サポートされていない機能のリストについては、 サーバレス コンピュートの制限事項を参照してください。
特定のワークロードは、他のワークロードよりも移行が容易です。 次の要件を満たすワークロードは、最も簡単に移行できます。
アクセスするデータは Unity Catalog に保存されている必要があります。
ワークロードは、標準アクセスモードのコンピュートと互換性がある必要があります。
ワークロードは、Databricks Runtime 14.3 以上と互換性がある必要があります。
ワークロードがサーバレス コンピュートで動作するかどうかをテストするには、 標準 アクセス モードで Databricks Runtime が 14.3 以上の非サーバレス コンピュート リソースでワークロードを実行します。 実行が成功すると、ワークロードは移行の準備ができています。
この変更の重要性と現在の制限事項のリストにより、多くのワークロードはシームレスに移行されません。 Databricks 、すべてを再コーディングするのではなく、新しいワークロードを作成するときにサーバーレス コンピュート互換性を優先することをお勧めします。
外部システムからのデータの取り込み
サーバーレス コンピュートではJARファイルのインストールがサポートされていないため、 JDBCまたはODBCドライバーを使用して外部データソースからデータを取り込むことはできません。
データ取り込みに使用できる別の戦略には、次のものがあります。
COPY INTOやストリーミングテーブルなどのSQLベースのビルディングブロック。
Auto Loader 、新しいデータファイルがクラウドストレージに到着したときに、段階的かつ効率的に処理できます。 Auto Loaderとはを参照してください。
データ取り込みパートナー ソリューション。 Partner Connect を使用して取り込みパートナーに接続するを参照してください。
ファイルを直接アップロードするためのデータ追加 UI。 Databricks へのファイルのアップロードを参照してください。
データ取り込みの代替手段
サーバレス コンピュートを使用する場合、次の機能を使用して、データを移動せずにクエリを実行することもできます。
データの重複を制限したり、可能な限り最新のデータをクエリしていることを保証したりする場合は、Databricks では Delta Sharing の使用を推奨します。 Delta Sharingは何ですか?を参照してください。
アドホックなレポート作成や概念実証作業を行いたい場合、 Databricks正しい選択、たとえばレイクハウスフェデレーションを試すことをお勧めします。 レイクハウスフェデレーションを使用すると、データベース全体を外部システムからDatabricksに同期でき、 Unity Catalogによって管理されます。 レイクハウスフェデレーションとは何ですか?を参照してください。
これらの機能の 1 つまたは両方を試して、クエリのパフォーマンス要件を満たしているかどうかを確認してください。
サーバーレスコンピュートのコストを監視する
サーバレス コンピュートのコストを監視するために使用できる機能は複数あります。
システムテーブルを使用して、ダッシュボードを作成したり、アラートを設定したり、アドホッククエリを実行したりします。 サーバーレス コンピュートのコストを監視するを参照してください。
アカウントで予算アラートを設定します。 「予算の作成と監視」を参照してください。
事前設定された使用状況ダッシュボードをインポートします。 使用状況ダッシュボードのインポートを参照してください。