Databricks コンピュートをジョブで使用する
Databricksジョブを実行すると、タスクは、タスクの種類に応じて、サーバーレス コンピュート、クラスター、または SQL ウェアハウスのいずれかのDatabricksコンピュート上のジョブ実行の一部として構成されます。 ジョブを運用化する場合、コンピュート タイプと構成オプションを選択することが重要です。 この記事では、 Databricksコンピュートリソースを使用してジョブを実行するための推奨事項を示します。
Databricksジョブで serverless コンピュート を使用する方法の詳細については、「ワークフロー用の serverless コンピュートを使用しDatabricksジョブの実行」を参照してください。
注:
シークレットは、クラスターの Spark ドライバー ログstdout
およびstderr
ストリームから編集されません。 機密データを保護するために、デフォルトでは、Spark ドライバーのログは、ジョブ、シングル ユーザー アクセス モード、および共有アクセス モードのクラスターに対する CAN MANAGE 権限を持つユーザーのみが表示できます。 CAN ATTACH TO または CAN RESTART 権限を持つユーザーがこれらのクラスターのログを表示できるようにするには、クラスター構成で次の Spark 構成プロパティを設定します: spark.databricks.acl.needAdminPermissionToViewLogs false
。
非分離共有アクセス モード クラスターでは、CAN ATTACH TO または CAN MANAGE 権限を持つユーザーが Spark ドライバーのログを表示できます。 ログを読み取ることができるユーザーを CAN MANAGE 権限を持つユーザーのみに制限するには、 spark.databricks.acl.needAdminPermissionToViewLogs
を true
に設定します。
クラスター構成に Spark プロパティを追加する方法については、「 Spark 構成 」を参照してください。
ジョブに適したクラスタータイプを選択する
新しいジョブ クラスターは、ジョブまたはタスク実行専用のクラスターです。 共有ジョブ クラスターは、クラスターを使用する最初のタスクが開始されると作成および開始され、クラスターを使用する最後のタスクが完了した後に終了します。 クラスターはアイドル状態のときは終了せず、すべてのタスクが完了した後にのみ終了します。 共有ジョブ クラスターが失敗するか、すべてのタスクが完了する前に終了した場合は、新しいクラスターが作成されます。 単一のタスクにスコープ設定されたクラスターは、タスクの開始時に作成および開始され、タスクの完了時に終了します。 本番運用では、各ジョブまたはタスクが完全に分離された環境で実行されるように、新しい共有またはタスクスコープのクラスターを使用することをDatabricks推奨しています。
新しいクラスターでタスクを実行すると、タスクは データエンジニアリング (タスク) ワークロードとして扱われ、タスクワークロードの価格が適用されます。 既存の All-Purposeクラスターでタスクを実行すると、そのタスクはデータアナリティクス (汎用) ワークロードとして扱われ、汎用ワークロードの料金が適用されます。
終了した既存のクラスターを選択し、ジョブ所有者にCan Restart アクセス許可がある場合、Databricks はジョブの実行がスケジュールされているときにクラスターを開始します。
既存の汎用クラスターは、 ダッシュボード を定期的に更新するなどのタスクに最適です。