設問
ある顧客が、Bulk APIを使用して外部システムからSalesforceにデータをインポートしています。これらのジョブのバッチサイズは2000で、並列モードで実行されています。バッチは「最大CPU時間を超えました」というエラーで頻繁に失敗します。バッチサイズを小さくすると、このエラーは修正されます。
バッチサイズを小さくする場合、検討すべき2つのオプションはどれですか?(2つ選択してください。)
選択肢
A. バッチサイズが小さいと、同時APIリクエストの制限を超える可能性があります。
B. バッチサイズが小さいと、「同時バッチが多すぎます」というエラーが発生する可能性があります。
C. バッチサイズが小さいと、一括ジョブの実行に必要な時間が長くなる可能性があります。
D. バッチサイズが小さいと、レコードロックエラーが発生する可能性があります。
解答
B. バッチサイズが小さいと、「同時バッチが多すぎます」というエラーが発生する可能性があります。
C. バッチサイズが小さいと、一括ジョブの実行に必要な時間が長くなる可能性があります。
解説
A. バッチサイズが小さいと、同時APIリクエストの制限を超える可能性があります。
不正解です。
同時APIリクエスト制限は20秒以上のリクエストに対する制限で、Bulk APIのバッチサイズとは直接関係ありません。Bulk APIには独自の制限があります。
B. バッチサイズが小さいと、「同時バッチが多すぎます」というエラーが発生する可能性があります。
正解です。
同時実行可能なバッチジョブの制限は5つで、バッチサイズを小さくすると必要なバッチ数が増え、この制限を超える可能性があります。
C. バッチサイズが小さいと、一括ジョブの実行に必要な時間が長くなる可能性があります。
正解です。
バッチ数が増えると各バッチの処理時間が累積し、全体の実行時間が長くなります。同じデータ量でもバッチサイズが小さいほど処理のオーバーヘッドが増加します。
D. バッチサイズが小さいと、レコードロックエラーが発生する可能性があります。
不正解です。
CPU制限の問題はコードやダウンストリーム処理の問題であり、バッチサイズを小さくしてもレコードロックエラーの可能性は増加しません。
第4問
こちらをクリック