本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
啟用記錄格式轉換
如果您啟用記錄格式轉換,則無法將 Amazon Data Firehose 目的地設定為 Amazon OpenSearch Service、Amazon Redshift 或 Splunk。啟用格式轉換後,Amazon S3 是您可用於 Firehose 串流的唯一目的地。下一節說明如何從主控台和 Firehose API 操作啟用記錄格式轉換。如需如何使用 設定記錄格式轉換的範例 CloudFormation,請參閱 AWS::DataFirehose::DeliveryStream。
從主控台啟用記錄格式轉換
您可以在建立或更新 Firehose 串流時,在主控台上啟用資料格式轉換。啟用資料格式轉換後,Amazon S3 是您可以為 Firehose 串流設定的唯一目的地。此外,啟用格式轉換將停用 Amazon S3 壓縮。然而,轉換程序中會自動出現 Snappy 壓縮。在此情況下,Amazon Data Firehose 使用的 Snappy 訊框格式與 Hadoop 相容。這表示您可使用 Snappy 壓縮的結果,並在 Athena 中查詢這些資料。如需 Hadoop 可使用的 Snappy 影格格式,請參閱 BlockCompressorStream.java
啟用資料 Firehose 串流的資料格式轉換
-
登入 AWS 管理主控台,然後開啟位於 https://https://console.aws.amazon.com/firehose/
的 Amazon Data Firehose 主控台。 -
選擇要更新的 Firehose 串流,或依照中的步驟建立新的 Firehose 串流教學課程:從主控台建立 Firehose 串流。
-
在 Convert record format (轉換記錄格式) 底下,將 Record format conversion (記錄格式轉換) 設定為 Enabled (已啟用)。
-
選擇您想要的輸出格式。如需兩個選項的詳細資訊,請參閱 Apache Parquet
和 Apache ORC 。 -
選擇 AWS Glue 資料表來指定來源記錄的結構描述。設定區域、資料庫、表格與表格版本。
從 Firehose API 管理記錄格式轉換
如果您希望 Amazon Data Firehose 將輸入資料的格式從 JSON 轉換為 Parquet 或 ORC,請在 ExtendedS3DestinationConfiguration 或 ExtendedS3DestinationUpdate 中指定選用的 DataFormatConversionConfiguration 元素。 ExtendedS3DestinationConfiguration ExtendedS3DestinationUpdate 如果您指定 DataFormatConversionConfiguration,則適用下列限制。
-
在 BufferingHints 中,若您啟用記錄格式轉換,
SizeInMBs的值將無法設定為小於 64。格式轉換未啟用時,該值預設為 5,啟用後則變成 128。 -
您必須在 ExtendedS3DestinationConfiguration 或在 ExtendedS3DestinationUpdate 中將
CompressionFormat設定為UNCOMPRESSED。CompressionFormat的預設值為UNCOMPRESSED。因此,ExtendedS3DestinationConfiguration 也可不指定該值。序列化程序仍會壓縮這些資料,預設使用 Snappy 壓縮。在此情況下,Amazon Data Firehose 使用的 Snappy 訊框格式與 Hadoop 相容。這表示您可使用 Snappy 壓縮的結果,並在 Athena 中查詢這些資料。如需 Hadoop 可使用的 Snappy 影格格式,請參閱 BlockCompressorStream.java。設定序列化程式時,您可選擇其他壓縮類型。