バッチ予測APIのマルチパートアップロード¶
本機能の提供について
Multipart upload for batch predictions is off by default. この機能を有効にする方法については、DataRobotの担当者または管理者にお問い合わせください。
機能フラグ:バッチ予測のマルチパートアップロードの有効化
The batch prediction API's local file intake process requires that you upload scoring data for a job using a PUT
request to the URL specified in the csvUpload
parameter. By default, a single PUT
request starts the job (or queues it for processing if the prediction instance is occupied). Multipart upload for batch predictions allows you to override the default behavior to upload scoring data through multiple files. This upload process requires multiple PUT
requests followed by a single POST
request (finalizeMultipart
) to finalize the multipart upload manually. This feature can be helpful when you want to upload large datasets over a slow connection.
備考
バッチ予測APIとローカルファイルの取り込みの詳細については、バッチ予測APIと予測取り込みオプションを参照してください。
マルチパートアップロードのエンドポイント¶
この機能により、次のマルチパートアップロードのエンドポイントがバッチ予測APIに追加されます。
エンドポイント | 説明 |
---|---|
PUT /api/v2/batchPredictions/:id/csvUpload/part/0/ |
スコアリングデータを複数の部分でcsvUpload で指定されたURLにアップロードします。 アップロードの各部分について、0 を1つずつ順番に増やします。 |
POST /api/v2/batchPredictions/:id/csvUpload/finalizeMultipart/ |
マルチパートアップロードプロセスを完了します。 完了する前に、アップロードの各部分が終了していることを確認してください。 |
ローカルファイルの取り込み設定¶
ローカルファイルアダプターの取り込み設定により、バッチ予測APIのマルチパートアップロードをサポートする2つの新しいプロパティが追加されました。
プロパティ | タイプ | デフォルト | 説明 |
---|---|---|---|
intakeSettings.multipart |
ブーリアン | false |
|
intakeSettings.async |
ブーリアン | true |
|
マルチパート取り込み設定¶
新しいマルチパートアップロードのワークフローを有効にするには、次のサンプルリクエストに示すように、localFile
アダプターのintakeSettings
を設定します。
{
"intakeSettings": {
"type": "localFile",
"multipart": true
}
}
これらのプロパティでは、ローカルファイルのアップロードワークフローを変更するため、以下を行う必要があります。
-
任意の数の連番ファイルをアップロードします。
-
アップロードが完了すると、必要なすべてのファイルが正常にアップロードされたことを示します。
非同期取り込み設定¶
非同期を有効にして新しいマルチパートアップロードのワークフローを有効にするには、次のサンプルリクエストに示すように、localFile
アダプターのintakeSettings
を設定します。
備考
multipart
設定とは別にasync
取り込み設定を使用することもできます。
{
"intakeSettings": {
"type": "localFile",
"multipart": true,
"async": false
}
}
A defining feature of batch predictions is that the scoring job starts on the initial file upload, and only one batch prediction job at a time can run for any given prediction instance. This functionality may cause issues when uploading large datasets over a slow connection. In these cases, the client's upload speed could create a bottleneck and block the processing of other jobs. To avoid this potential bottleneck, you can set async
to false
, as shown in the example above. This configuration postpones submitting the batch prediction job to the queue.
"async": false
の場合、ジョブがバッチ予測キューに入るポイントは、multipart
設定によって異なります。
-
"multipart": true
の場合、ジョブはPOST
リクエストの後にキューに送信され、finalizeMultipart
を解決します。 -
"multipart": false
の場合、最初のファイル取り込みPUT
リクエストが解決された後、ジョブはキューに送信されます。
マルチパートアップロードリクエストの例¶
3部構成のマルチパートバッチ予測ジョブをアップロードするために必要なバッチ予測APIリクエストは次のようになります。
PUT /api/v2/batchPredictions/:id/csvUpload/part/0/
PUT /api/v2/batchPredictions/:id/csvUpload/part/1/
PUT /api/v2/batchPredictions/:id/csvUpload/part/2/
POST /api/v2/batchPredictions/:id/csvUpload/finalizeMultipart/
アップロードされた各部分は、ヘッダー付きの完全なCSVファイルです。
マルチパートアップロードの中止¶
終了したくないマルチパートアップロードを開始する場合は、既存のbatchPredictions
中止ルートへのDELETE
リクエストを使用できます。
DELETE /api/v2/batchPredictions/:id/