設定備份設定 - Amazon Data Firehose

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

設定備份設定

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中設定 SizeInMBsUpdateDestination API。

注意
  • 緩衝區提示會套用至碎片或分割區層級,而動態分割緩衝區提示則會套用至串流或主題層級。

  • 若要符合較低的即時使用案例延遲,您可以使用零緩衝間隔提示。當您將緩衝間隔設定為零秒時,Firehose 不會緩衝資料,並將在幾秒內傳送資料。將緩衝提示變更為較低值之前,請向供應商查詢 Firehose 對其目的地的建議緩衝提示。

  • 零緩衝功能僅適用於應用程式目的地,不適用於 Amazon S3 備份目的地。

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

  • 當您設定緩衝時間間隔少於 60 秒以提供較低的延遲時,Firehose 會使用 S3 目的地的分段上傳。由於 S3 目的地的分段上傳,如果您選擇緩衝時間間隔小於 60 秒,則 S3 PUTAPI成本會有所增加。

如需目的地特定的緩衝提示範圍和預設值,請參閱下表:

目的地 緩衝大小,以 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)