動態分割的緩衝區資料 - Amazon Data Firehose

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

動態分割的緩衝區資料

Amazon Data Firehose 會在將傳入串流資料交付至指定目的地之前,將傳入串流資料緩衝至特定大小和一段時間。您可以在建立新的 Firehose 串流時設定緩衝區大小和緩衝區間隔,或更新現有 Firehose 串流上的緩衝區大小和緩衝區間隔。緩衝區大小以 MB 為測量單位,緩衝間隔以秒為測量單位。

注意

零緩衝功能不適用於動態分割。

啟用動態分割時,Firehose 會根據設定的緩衝提示 (大小和時間) 在內部緩衝屬於指定分割區的記錄,再將這些記錄交付至 Amazon S3 儲存貯體。為了提供最大大小的物件,Firehose 會在內部使用多階段緩衝。因此,一批記錄的端到端延遲可能是設定緩衝提示時間的 1.5 倍。這會影響 Firehose 串流的資料新鮮度。

作用中分割區計數是交付緩衝區內的作用中分割區總數。例如,如果動態分割查詢每秒建構 3 個分割區,而且您的緩衝區提示組態會每 60 秒觸發交付,則平均而言,您就會有 180 個作用中分割區。如果 Firehose 無法將分割區中的資料交付至目的地,則此分割區在交付緩衝區中會計為作用中,直到可以交付為止。

根據記錄資料欄位和 S3 字首運算式將 S3 字首評估為新值時,會建立新的分割。會為每個作用中的分割建立新的緩衝區。具有相同評估 S3 字首的每個後續記錄都會交付到該緩衝區。

一旦緩衝區符合緩衝區大小限制或緩衝區時間間隔,Firehose 會使用緩衝區資料建立物件,並將其交付至指定的 Amazon S3 字首。交付物件後,會刪除該分割區的緩衝區和分割區本身,並從作用中分割區計數中移除。

一旦分別符合每個分割區的緩衝區大小或間隔,Firehose 會將每個緩衝區資料做為單一物件傳遞。一旦作用中分割區的數量達到每個 Firehose 串流 500 個的限制,Firehose 串流中的其餘記錄就會交付至指定的 S3 錯誤儲存貯體字首 (activePartitionExceeded。您可以使用 Amazon Data Firehose 限制表單,請求增加此配額,每個指定 Firehose 串流最多 5000 個作用中分割區。如果您需要更多分割區,您可以建立更多 Firehose 串流,並將作用中分割區分散到其中。