

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

# FIFO トピックの Amazon SNS メッセージ重複排除
<a name="fifo-message-dedup"></a>

 Amazon SNS FIFO トピックおよび Amazon SQS FIFO キューでは、メッセージの重複排除がサポートされます。これは、以下の条件が満たされている限り、メッセージの配信と処理を 1 回だけ行います。
+ サブスクライブされた SQS FIFO キューがあり、このキューのアクセス許可により、このキューへのメッセージ配信を Amazon SNS サービスプリンシパルに許可します。
+ Amazon SQS FIFO キューコンシューマーはメッセージを処理し、可視性タイムアウトの期限が切れる前に、キューからメッセージを削除します。
+ Amazon SNS サブスクリプショントピックには、[メッセージのフィルター処理](fifo-message-filtering.md)がありません。メッセージフィルター処理を設定すると、サブスクリプションフィルターポリシーに基づいてメッセージをフィルター処理できるため、Amazon SNS FIFO トピックは最大 1 回の配信をサポートします。
+ メッセージ配信の確認応答を妨げるネットワークの中断はありません。

**注記**  
メッセージの重複排除は、トピック属性 `FifoThroughputScope` が `Topic` に設定されている場合、Amazon SNS FIFO トピック全体に適用されます。トピック属性 `FifoThroughputScope` が `MessageGroup` に設定されている場合、メッセージの重複排除は個々の[メッセージグループ](fifo-message-grouping.md)に適用されます。

メッセージを Amazon SNS FIFO トピックに発行する場合、メッセージには重複排除 ID を含める必要があります。この ID は、Amazon SNS FIFO トピックから、サブスクライブされた Amazon SQS FIFO キューに配信するメッセージに含まれます。

特定の重複排除 ID を持つメッセージが Amazon SNS FIFO トピックに正常に発行された場合、5 分間の重複排除インターバルの間、同じ重複排除 ID で発行されたメッセージは受け付けられますが、配信されません。Amazon SNS FIFO トピックは、サブスクライブされたエンドポイントにメッセージが配信された後も、トピック属性 `FifoThroughputScope` で設定された重複排除スコープでメッセージの重複排除 ID を追跡し続けます。

メッセージの発行ごとにメッセージ本文が一意であることが保証されている場合は、Amazon SNS FIFO トピックとサブスクライブされた Amazon SQS FIFO キューに対してコンテンツベースの重複排除を有効にできます。Amazon SNS は、メッセージ本文を使用して、各メッセージの重複除外 ID として使用する一意のハッシュ値を生成するため、各メッセージを送信するときに重複除外 ID を設定する必要はありません。

**注記**  
メッセージ属性はハッシュ計算に含まれません。

Amazon SNS FIFO トピックでコンテンツベースの重複排除が有効になっている場合、ある重複排除 ID を使ってメッセージが発行されると、発行された重複排除 ID によって生成されたコンテンツベースの重複排除 ID が上書きされます。

[自動車部品価格管理のユースケース例](fifo-example-use-case.md)では、価格更新ごとに汎用的に一意の重複除外 ID を設定する必要があります。これは、メッセージ属性が卸売と小売で異なる場合でも、メッセージ本文が同一になる可能性があるためです。ただし、企業が、メッセージ本文に製品 ID および製品価格と共にビジネスタイプ (卸売または小売) を追加した場合、Amazon SNS FIFO トピックおよびサブスクライブされた Amazon SQS FIFO キューでコンテンツベースの重複を有効にできます。

![\[自動車部品の価格管理の例を使用して、Amazon SNS FIFO (先入れ先出し) トピック環境において、メッセージの重複排除がどのように機能するかを説明します。Amazon SNS FIFO トピックに発行された重複メッセージ (m1) がサブスクライバーシステム (卸売、小売、分析キュー) に複数回配信されることを防いでいます。この重複排除により、一意のメッセージのみが処理され、異なるサブスクライバーにわたるメッセージ処理の効率と精度が向上します。\]](http://docs.aws.amazon.com/ja_jp/sns/latest/dg/images/sns-fifo-dedup.png)


メッセージの順序付けと重複排除に加えて、Amazon SNS FIFO トピックでは、AWS KMS キーによるメッセージのサーバー側の暗号化 (SSE)、および AWS PrivateLink による VPC エンドポイント経由のメッセージプライバシーをサポートしています。詳細については、「[FIFO トピックの Amazon SNS メッセージセキュリティ](fifo-message-security.md)」を参照してください。