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