

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon SQSのバッチアクション
<a name="sqs-batch-api-actions"></a>

Amazon SQS のバッチアクションを使用すると、コストを削減し、1 つのアクションで最大 10 件のメッセージを操作できます。バッチアクションは以下のとおりです。
+ `[SendMessageBatch](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html)`
+ `[DeleteMessageBatch](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html)`
+ `[ChangeMessageVisibilityBatch](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibilityBatch.html)`

バッチアクションを使用すると、1 回の API コールで複数のオペレーションを実行できるため、パフォーマンスを最適化してコストを削減できます。クエリ API または Amazon SQS バッチアクションをサポートする任意の AWS SDK を使用して、バッチ機能を活用できます。

**重要な詳細**
+ **メッセージのサイズ制限:** 1 回の `SendMessageBatch` コールで送信するすべてのメッセージの合計サイズは、1,048,576 バイト (1 MiB) を超えることができません。
+ **アクセス許可:** `SendMessageBatch`、`DeleteMessageBatch`、または `ChangeMessageVisibilityBatch` のアクセス許可を明示的に設定することはできません。`SendMessage`、`DeleteMessage`、または `ChangeMessageVisibility` のアクセス許可を設定すると、代わりに、アクションの対応するバッチバージョンのアクセス許可が設定されます。
+ **コンソールのサポート:** Amazon SQS コンソールは、バッチアクションをサポートしていません。バッチオペレーションを実行するには、クエリ API または AWS SDK を使用する必要があります。

## メッセージアクションのバッチ処理
<a name="batching-message-actions"></a>

コストと効率をさらに最適化するには、メッセージアクションのバッチ処理に関する以下のベストプラクティスを検討してください。
+ **バッチ API アクション:** 1 つのアクションで複数のメッセージを送信、受信、削除したり、複数のメッセージのメッセージ可視性タイムアウトを変更したりするには、[Amazon SQS のバッチ API アクション](#sqs-batch-api-actions)を使用します。これにより、API コールの数と関連コストを削減できます。
+ **クライアント側のバッファリングとロングポーリング:** ロングポーリングと AWS SDK for Javaに含まれる[バッファリング非同期クライアント](sqs-client-side-buffering-request-batching.md)を併用することで、クライアント側のバッファリングとリクエストバッチ処理を組み合わせます。このアプローチは、リクエスト数を最小限に抑え、大量のメッセージ処理を最適化するのに役立ちます。

**注記**  
Amazon SQSバッファリング非同期クライアントは現在 FIFOキューをサポートしていません。