

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 將最佳實務套用至 KPL 彙總
<a name="kinesis-producer-adv-aggregation"></a>

雖然產生的 Amazon Kinesis Data Streams 記錄序號方案保持不變， 彙總會導致彙總 Kinesis Data Streams 記錄中包含的 Amazon Kinesis Producer Library (KPL) 使用者記錄索引從 0 （零） 開始； 不過， 只要您不依賴序號來唯一識別您的 KPL 使用者記錄， 您的程式碼可以忽略這一點， 作為彙總 (KPL 使用者記錄的 Kinesis Data Streams 記錄） 和後續的取消彙總 (Kinesis Data Streams 記錄的 Kinesis Data Streams 記錄的 KPL 使用者記錄） 會自動為您處理此問題。無論您的消費者使用的是 KCL 或 AWS SDK，這都適用。若要使用此彙總功能，如果您的取用者是使用 AWS SDK 中提供的 API 進行寫入，則需要將 KPL 的 Java 部分提取到組建中。

若您打算使用序號做為 KPL 使用者記錄的唯一識別符，建議您使用 `Record` 和 `UserRecord` 所提供遵守合約的 `public int hashCode()` 及 `public boolean equals(Object obj)` 操作，對您的 KPL 使用者記錄進行比較。此外，如果想要檢查 KPL 使用者記錄的子序號，您可以將其轉換為 `UserRecord` 執行個體並擷取其子序號。

如需詳細資訊，請參閱[實作消費者取消彙總](kinesis-kpl-consumer-deaggregation.md)。