本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定備份設定
Amazon Data Firehose 使用 Amazon S3 備份所有或僅失敗的資料,而這些資料嘗試傳遞到您選擇的目的地。
重要
-
只有在 Firehose 串流的來源為 Direct PUT或 Kinesis Data Streams 時,才支援備份設定。
-
零緩衝功能僅適用於應用程式目的地,不適用於 Amazon S3 備份目的地。
如果您做出下列其中一個選擇,則可以指定 Firehose 串流的 S3 備份設定。
-
如果您將 Amazon S3 設定為 Firehose 串流的目的地,並選擇指定 AWS Lambda 函數來轉換資料記錄,或者選擇轉換 Firehose 串流的資料記錄格式。
-
如果您將 Amazon Redshift 設定為 Firehose 串流的目的地,並選擇指定 AWS Lambda 函數來轉換資料記錄。
-
如果您將下列任何服務設定為 Firehose 串流的目的地:Amazon OpenSearch Service、Datadog、Dynatrace、HTTPEndpoint LogicMonitor、MongoDB Cloud、New Relic、Splunk 或 Sumo Logic、Snowflake、Apache Iceberg Tables。
以下是 Firehose 串流的備份設定。
-
Amazon S3 中的來源記錄備份 - 如果 S3 或 Amazon Redshift 是您選取的目的地,此設定會指出您是要啟用來源資料備份,還是保持停用狀態。如果將任何其他支援的服務 (S3 或 Amazon Redshift 除外) 設為您選取的目的地,則此設定會指示您是要備份所有來源資料,還是僅備份失敗的資料。
-
S3 備份儲存貯體 - 這是 Amazon Data Firehose 用來備份資料的 S3 儲存貯體。
-
S3 備份儲存貯體字首 - 這是 Amazon Data Firehose 備份資料的字首。
-
S3 備份儲存貯體錯誤輸出字首 - 所有失敗的資料都會備份在此 S3 儲存貯體錯誤輸出字首中。
-
緩衝提示、壓縮和加密以進行備份 - Amazon Data Firehose 使用 Amazon S3 來備份其嘗試傳遞至所選目的地的所有或失敗資料。Amazon Data Firehose 會在將傳入的資料交付 (備份) 至 Amazon S3 之前進行緩衝。您可以選擇 1–128 的緩衝區大小, MiBs 以及 60–900 秒的緩衝區間隔。只要滿足其中一項條件,即會觸發資料交付至 Amazon S3 的動作。 如果您啟用資料轉換,緩衝區間隔會從 Amazon Data Firehose 收到轉換的資料時間,套用到資料交付到 Amazon S3。如果傳遞至目的地的資料落後於寫入 Firehose 串流的資料,Amazon Data Firehose 會動態提高緩衝區大小,以趕上進度。此動作可確保所有資料皆能成功傳送至目的地。
-
S3 壓縮 - 選擇 GZIP、Snappy、Zip 或 Hadoop 相容 Snappy 資料壓縮,或沒有資料壓縮。Snappy、Zip 和 Hadoop 相容 Snappy 壓縮不適用於 Amazon Redshift 作為目的地的 Firehose 串流。
S3 副檔名格式 (選用) – 為交付至 Amazon S3 目的地儲存貯體的物件指定副檔名格式。如果您啟用此功能,指定的檔案副檔名會覆寫資料格式轉換或 S3 壓縮功能附加的預設檔案副檔名,例如 .parquet 或 .gz。當您使用此功能進行資料格式轉換或 S3 壓縮時,請確定是否已設定正確的副檔名。檔案副檔名必須以句點 (.) 開頭,且可包含允許的字元:0-9a-z!-_.*‘()。檔案副檔名不得超過 128 個字元。
-
Firehose 支援使用 AWS Key Management Service (SSE-KMS) 的 Amazon S3 伺服器端加密,用於加密 Amazon S3 中交付的資料。您可以選擇使用目的地 S3 儲存貯體中指定的預設加密類型,或使用 AWS KMS 您擁有的金鑰清單中的金鑰進行加密。如果您使用 AWS KMS 金鑰加密資料,您可以使用預設 AWS 受管金鑰 (aws/s3) 或客戶受管金鑰。如需詳細資訊,請參閱使用 AWS KMS受管金鑰使用伺服器端加密保護資料 (SSE-KMS)。
設定緩衝提示
Amazon Data Firehose 會將記憶體中的傳入串流資料緩衝至特定大小 (緩衝大小) 和一段特定時間 (緩衝間隔),然後再將其交付至指定的目的地。當您想要將大小最佳的檔案交付給 Amazon S3,並從資料處理應用程式取得更好的效能,或調整 Firehose 交付速率以符合目的地速度時,您會使用緩衝提示。
您可以在建立新的 Firehose 串流時設定緩衝大小和緩衝間隔,或更新現有 Firehose 串流上的緩衝大小和緩衝間隔。緩衝大小以 為單位,MBs緩衝間隔以秒為單位。不過,如果指定它們其中一個值,您也必須提供其他的值。第一個滿足的緩衝條件會觸發 Firehose 交付資料。如果您未設定緩衝值,則會使用預設值。
您可以透過 AWS Management Console AWS Command Line Interface、 或 設定 Firehose 緩衝提示 AWS SDKs。對於現有的串流,您可以使用主控台中的編輯選項或使用 UpdateDestination ,以適合您的使用案例的值重新設定緩衝提示API。對於新串流,您可以使用主控台或使用 CreateDeliveryStream 將緩衝提示設定為新串流建立的一部分API。若要調整緩衝大小,請在 CreateDeliveryStream或 的目的地特定DestinationConfiguration
參數IntervalInSeconds
中設定 SizeInMBs
和 UpdateDestination API。
注意
-
緩衝區提示會套用至碎片或分割區層級,而動態分割緩衝區提示則會套用至串流或主題層級。
-
若要符合較低的即時使用案例延遲,您可以使用零緩衝間隔提示。當您將緩衝間隔設定為零秒時,Firehose 不會緩衝資料,並將在幾秒內傳送資料。將緩衝提示變更為較低值之前,請向供應商查詢 Firehose 對其目的地的建議緩衝提示。
零緩衝功能僅適用於應用程式目的地,不適用於 Amazon S3 備份目的地。
-
零緩衝功能不適用於動態分割。
-
當您設定緩衝時間間隔少於 60 秒以提供較低的延遲時,Firehose 會使用 S3 目的地的分段上傳。由於 S3 目的地的分段上傳,如果您選擇緩衝時間間隔小於 60 秒,則 S3
PUT
API成本會有所增加。
如需目的地特定的緩衝提示範圍和預設值,請參閱下表:
目的地 | 緩衝大小,以 MB 為單位 (括號中的預設值) | 緩衝間隔以秒為單位 (括號中的預設值) |
---|---|---|
Amazon S3 | 1-128 (5) | 0-900 (300) |
Apache Iceberg 資料表 | 1-128 (5) | 0-900 (300) |
Amazon Redshift | 1-128 (5) | 0-900 (300) |
OpenSearch 無伺服器 | 1-100 (5) | 0-900 (300) |
OpenSearch | 1-100 (5) | 0-900 (300) |
Splunk | 1-5 (5) | 0-60 (60) |
Datadog | 1-4 (4) | 0-900 (60) |
Coralogix | 1-64 (6) | 0-900 (60) |
Dynatrace | 1-64 (5) | 0-900 (60) |
彈性 | 1 | 0-900 (60) |
Honeycomb | 1-64 (15) | 0-900 (60) |
HTTP 端點 | 1-64 (5) | 0-900 (60) |
LogicMonitor | 1-64 (5) | 0-900 (60) |
Logzio | 1-64 (5) | 0-900 (60) |
mongoDB | 1-16 (5) | 0-900 (60) |
newRelic | 1-64 (5) | 0-900 (60) |
sumoLogic | 1-64 (1) | 0-900 (60) |
Splunk Observability Cloud | 1-64 (1) | 0-900 (60) |
Snowflake | 1 - 128 (1) | 0 - 900 (0) |