

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

# FIFO トピックの Amazon SNS メッセージのグループ化
<a name="fifo-message-grouping"></a>

同じグループに属するメッセージは、グループに対する厳密な順序で 1 つずつ処理されます。

メッセージを Amazon SNS FIFO トピックに発行する際、メッセージのグループ ID を設定します。グループ ID は、メッセージが特定のメッセージグループに属することを指定する必須トークンです。SNS FIFO トピックは、グループ ID をサブスクライブされた Amazon SQS FIFO キューに渡します。SNS FIFO トピックまたは SQS FIFO キュー内のグループ ID の数に制限はありません。メッセージグループ ID は Amazon SQS 標準キューには渡されません。

メッセージグループとサブスクリプションの間にアフィニティはありません。したがって、任意のメッセージグループに発行されたメッセージは、サブスクリプションに添付されたフィルターポリシーに従って、すべてのサブスクライブ済みキューに配信されます。詳細については、「[FIFO トピックの Amazon SNS メッセージ配信](fifo-message-delivery.md)」および「[SNS FIFO トピックの Amazon SNS メッセージフィルター処理](fifo-message-filtering.md)」を参照してください。

[自動車部品価格管理のユースケース例](fifo-example-use-case.md)では、プラットフォームで販売されている製品ごとに専用のメッセージグループがあります。すべての価格更新の処理には、同じ Amazon SNS FIFO トピックが使用されます。価格更新の順序は、単一の自動車部品製品のコンテキスト内で保持されますが、ない複数の製品にまたがっていません。この 仕組み を以下に示します。メッセージグループ ID が **product-214** の製品の場合、メッセージ **m1** は **m4** の前に処理されることに注意してください。この順序は、Amazon SNS FIFO と Amazon SQS FIFO を使用するワークフロー全体を通じて保持されます。同様に、メッセージグループ ID が **product-799** の製品の場合、メッセージ **m2** は **m3** の前に処理されます。ただし、Amazon SQS 標準キューを使用すると、メッセージの順序は保証されなくなり、メッセージグループは存在しません。**product-214** および **product-799** メッセージグループは互いに独立しているため、メッセージの順序付けには関係がありません。

![\[さまざまな およびメッセージグループ IDs を含む Amazon SNS FIFO トピックシナリオでのメッセージの順序 AWS のサービス 付けと重複排除の仕組みの例。Lambda 関数から Amazon SNS FIFO トピックを介してさまざまなタイプの Amazon SQS キュー (FIFO および標準) に送信されるメッセージのフローを示しています。FIFO キューでは厳密な順序が維持されますが、標準キューでは順序が維持されない場合があります。この設定は、e コマースプラットフォームでの価格更新など、アプリケーションでのメッセージの順序が重要である場合に利用されます。さまざまなコンシューマーサービスにわたって各メッセージグループが独立して順序を維持しています。\]](http://docs.aws.amazon.com/ja_jp/sns/latest/dg/images/sns-fifo-grouping.png)


## メッセージグループ ID 別のデータ配布によりパフォーマンスを改善
<a name="fifo-message-grouping-message-group-ids"></a>

配信スループットを最適化するために、Amazon SNS FIFO トピックは異なるメッセージグループからのメッセージを並列配信しますが、メッセージの順序は各メッセージグループ内で厳密に維持されます。個々のメッセージグループごとに、1 秒あたり最大 300 件のメッセージを配信できます。したがって、1 つのトピックで高いスループットを実現するには、多数の異なるメッセージグループ ID を使用してください。Amazon SNS FIFO トピックは、多様なメッセージグループのセットを利用することで、メッセージを多数の並列パーティションに自動的に配布します。

**注記**  
Amazon SNS FIFO トピックは、グループ数に関係なく、メッセージグループ IDs 間でメッセージを均一に分散するように最適化されています。パフォーマンスを最適化するために、多数の個別のメッセージグループ IDs を使用する AWS ことをお勧めします。

スループットが高い Amazon SNS FIFO トピックに公開し、1 つ以上の Amazon SQS FIFO キューがサブスクライブされている場合は、キューで高スループットを有効にすることをお勧めします。詳細については、「*Amazon Simple Queue Service デベロッパーガイド*」の「[FIFO キューの高スループット](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html)」を参照してください。