この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Bulk API の制限

Bulk API を使用する場合は、次の制限事項に注意してください。
API の使用制限
Bulk API には、標準の API の使用制限が適用されます。使用制限の計算では、各 HTTP 要求が 1 コールとカウントされます。
バッチのコンテンツ
各バッチには、単一オブジェクトのレコードから成る CSV ファイル、XML ファイル、または JSON ファイルが 1 つだけ含まれている必要があります。この制限が守られていない場合、バッチは処理されず、stateMessage が更新されます。オブジェクトレコードの形式を正しいものとするためには、Enterprise WSDL を使用します。
バッチの制限
24 時間内に送信可能なバッチ数は最大で 10,000 件に制限されています。作成後 24 時間を超えたジョブにバッチを関連付けることはできません。
バッチの有効期限
作成後 7 日を超えたバッチやジョブは、ジョブの状況にかかわらずキューから削除されます。この有効期限は、ジョブに関連付けられた最も新しいバッチの作成日時によって判断されます。バッチが含まれていないジョブでは、ジョブの作成日時が基準になります。作成後 24 時間を超えたジョブにバッチを関連付けることはできません。
バッチサイズ
  • データ読み込みのバッチは 10 MB 以下の単一の CSV ファイル、XML ファイル、または JSON ファイルで構成できます。
  • 1 つのバッチには、最大で 10,000 件のレコードを含めることができます。
  • 1 つのバッチには、最大で 10,000,000 文字のデータを含めることができます。
  • 1 つの項目には、最大で 32,000 文字を含めることができます。
  • 1 つのレコードには、最大で 5,000 項目を含めることができます。
  • 1 つのレコードに含まれる項目には、合計で最大 400,000 文字を含めることができます。
  • バッチには何らかのコンテンツが必要です。バッチが空の場合はエラーが返されます。
バイナリ型のコンテンツの制限については、「バイナリ型のコンテンツ」を参照してください。
バッチの処理時間
バッチはチャンクで処理されます。チャンクサイズは、API バージョンによって異なります。API バージョンが 20.0 以前の場合、チャンクサイズは 100 レコードです。API バージョンが 21.0 以降の場合、チャンクサイズは 200 レコードです。各チャンクの処理時間には、5 分という制限があります。また、バッチ全体の処理に 10 分以上かかる場合、Bulk API ではバッチの残りがキューに戻され、後で処理されます。その後の処理でも 10 分以内に完了できない場合、バッチがキューに戻され最大 10 回まで処理が試行されます。それでも完了できない場合は、バッチ処理が完全に失敗したとみなされます。
バッチの状態が Failed であっても、一部のレコードは正常に処理されている可能性があります。バッチ結果を取得して、個々のレコードの処理状況を確認する方法については、「バッチ結果の取得」を参照してください。バッチの処理時にタイムアウトエラーが発生する場合は、バッチをより小さなサイズに分割して再試行します。

一括クエリの場合、バッチ処理制限とは別に、クエリの処理時間に 2 分という制限が追加されます。query の制限」を参照してください。

メモ

バイナリ型のコンテンツ
  • ファイル名の最大長は 512 バイトです。
  • zip ファイルの最大サイズは 10 MB です。
  • コンテンツの最大合計サイズは、圧縮解除した状態で 20 MB です。
  • 1 つの zip ファイルに含めることができるファイル数は最大で 1,000 ファイルです。ディレクトリはファイル数にはカウントされません。
圧縮
有効な圧縮形式の値は gzip のみです。圧縮は必須ではありませんが、できる限り行うことをお勧めします。なお、圧縮を行っても、「バッチサイズ」で説明した文字数の制限は変わりません。
ジョブの中止
ジョブの中止は、適切な権限があればどのユーザでも実行できます。ジョブの終了は、そのジョブを作成したユーザのみが実行できます。
ジョブの終了
ジョブの終了は、そのジョブを作成したユーザのみが実行できます。ジョブの中止は、適切な権限があればどのユーザでも実行できます。
ジョブのコンテンツ
それぞれのジョブでは、1 つの処理と 1 つのオブジェクトを指定できます。このジョブに関連付けられたバッチには、1 つのオブジェクトのレコードが含まれます。必要に応じて逐次処理モードを指定することもできますが、このモードは、以前に送信した非同期ジョブでロックによる競合が発生した場合にのみ使用します。これは、Salesforce が推奨した場合にのみ使用してく���さい。
ジョブの外部 ID
JobInfo では外部 ID 項目の値を編集することはできません。外部 ID 項目を指定した場合、実行される処理は必ず更新/挿入となります。作成や更新の処理で使用しようとするとエラーが生成されます。
ジョブの有効期限
作成後 7 日を超えたバッチやジョブは、ジョブの状況にかかわらずキューから削除されます。この有効期限は、ジョブに関連付けられた最も新しいバッチの作成日時によって判断されます。バッチが含まれていないジョブでは、ジョブの作成日時が基準になります。作成後 24 時間を超えたジョブにバッチを関連付けることはできません。
ジョブの Open 状態の時間
ジョブの状態が Open であるのは、作成後最大 24 時間までです。Bulk API では、バッチを毎時間に 1 つずつ、長時間にわたって追加するようなクライアントはサポートされません。
ジョブ履歴に表示されるジョブの状況
ジョブの状況とバッチの結果セットは、ジョブの完了後 7 日間保存され、それを過ぎると完全に削除されます。
ジョブの状況の変更
ジョブの状況を変更して POST の本文を送信する場合、指定できるのは status 項目の値のみとなります。operation 項目や entity 項目の値を指定した場合はエラーが発生します。
ポータルユーザ
カスタマーポータル、セルフサービスポータル、パートナーポータルなどのポータルユーザは、「API の有効化」権限を割り当てられていたとしても Bulk API にはアクセスできません。
query の制限
Bulk API クエリには、次の制限があります。
機能 詳細
取得されるファイルサイズ 1 GB
取得されるファイル数 15 個。クエリで返されるファイルが 15 個を超える場合は、クエリの検索条件を追加して返されるデータ量を減らす必要があります。一括バッチサイズは、一括クエリには使用されません。
クエリの試行回数 10 分ごとに 15 回、バッチを処理します。クエリの処理時間には 2 分という制限もあります。クエリの試行回数が 15 回を超えると、「Tried more than ten times (試行回数が 15 回を超えました)」というエラーメッセージが返されます。クエリの処理時間が 2 分を超えると、QUERY_TIMEOUT エラーが返されます。
結果が保持される期間 7 日間。
Bulk API クエリでは、次の SOQL はサポートされていません。
  • COUNT
  • ROLLUP
  • SUM
  • GROUP BY CUBE
  • OFFSET
  • ネストされた SOQL クエリ