DiscoverInputSchema - Amazon Kinesis Data Analytics for SQL Applications 開發人員指南

在仔細考慮之後,我們決定在兩個步驟中停止 Amazon Kinesis Data Analytics for SQL 應用程式:

1. 從 2025 年 10 月 15 日起,您將無法為SQL應用程式建立新的 Kinesis Data Analytics。

2. 我們將從 2026 年 1 月 27 日起刪除您的應用程式。您將無法啟動或操作SQL應用程式的 Amazon Kinesis Data Analytics。從那時SQL起,Amazon Kinesis Data Analytics 將不再提供 的支援。如需詳細資訊,請參閱Amazon Kinesis Data Analytics for SQL 應用程式終止

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

DiscoverInputSchema

注意

此文件適用於 Amazon Kinesis Data Analytics API 第 1 版,僅支援 SQL 應用程式。第 2 版的 API 則支援 SQL 和 Java 應用程式。如需第 2 版的詳細資訊,請參閱 Amazon Kinesis Data Analytics API V2 文件

透過評估範例記錄來推斷結構描述,這些範例紀錄來自特定的串流來源 (Amazon Kinesis 串流或 Amazon Kinesis Firehose 交付串流) 或 S3 物件。在回應中,作業會傳回推斷的結構描述,以及作業用來推斷結構描述的範例記錄。

在為應用程式設定串流來源時,您可以使用推斷的結構描述。如需概念資訊,請參閱設定應用程式輸入。請注意,當您使用 Amazon Kinesis Analytics 主控台建立應用程式時,主控台會使用此操作推斷結構描述,並在主控台使用者介面中顯示結構描述。

這項操作需要許可來執行 kinesisanalytics:DiscoverInputSchema 動作。

請求語法

{ "InputProcessingConfiguration": { "InputLambdaProcessor": { "ResourceARN": "string", "RoleARN": "string" } }, "InputStartingPositionConfiguration": { "InputStartingPosition": "string" }, "ResourceARN": "string", "RoleARN": "string", "S3Configuration": { "BucketARN": "string", "FileKey": "string", "RoleARN": "string" } }

請求參數

請求接受採用 JSON 格式的下列資料。

InputProcessingConfiguration

InputProcessingConfiguration於在探索記錄的結構描述之前預先處理記錄。

類型:InputProcessingConfiguration 物件

必要:否

InputStartingPositionConfiguration

您希望 Amazon Kinesis Analytics 從特定串流來源探索目的開始讀取記錄的點。

類型:InputStartingPositionConfiguration 物件

必要:否

ResourceARN

串流來源的 Amazon Resource Name (ARN)。

類型:字串

長度限制:長度下限為 1。長度上限為 2048。

模式:arn:.*

必要:否

RoleARN

Amazon Kinesis Analytics 可擔任的 IAM 角色 ARN,此角色可代您存取串流。

類型:字串

長度限制:長度下限為 1。長度上限為 2048。

模式:arn:.*

必要:否

S3Configuration

指定此參數來探索 Amazon S3 物件中的資料結構描述。

類型:S3Configuration 物件

必要:否

回應語法

{ "InputSchema": { "RecordColumns": [ { "Mapping": "string", "Name": "string", "SqlType": "string" } ], "RecordEncoding": "string", "RecordFormat": { "MappingParameters": { "CSVMappingParameters": { "RecordColumnDelimiter": "string", "RecordRowDelimiter": "string" }, "JSONMappingParameters": { "RecordRowPath": "string" } }, "RecordFormatType": "string" } }, "ParsedInputRecords": [ [ "string" ] ], "ProcessedInputRecords": [ "string" ], "RawInputRecords": [ "string" ] }

回應元素

如果動作成功,則服務傳回 HTTP 200 回應。

服務會傳回下列 JSON 格式的資料。

InputSchema

從串流來源推斷出來的結構描述。辨別串流來源中的資料格式,以及每個資料元素如何映射至相應欄位,這些欄位位於建立的應用程式內串流。

類型:SourceSchema 物件

ParsedInputRecords

元素陣列,其中每個元素對應到串流記錄中的一列 (串流記錄可以有多個資料列)。

類型:字串陣列的陣列。

ProcessedInputRecords

InputProcessingConfiguration 參數中指定的處理器修改之串流資料。

類型:字串陣列

RawInputRecords

已取樣來推斷結構描述的原始串流資料。

類型:字串陣列

錯誤

InvalidArgumentException

指定的輸入參數值無效。

HTTP 狀態碼:400

ResourceProvisionedThroughputExceededException

由於 Amazon Kinesis 串流的緣故,探索無法從串流 ProvisionedThroughputExceededException來源取得記錄。如需詳細資訊,請參閱 Amazon Kinesis Streams API 參考GetRecords中的。

HTTP 狀態碼:400

ServiceUnavailableException

服務無法使用。退回並重試操作。

HTTP 狀態碼:500

UnableToDetectSchemaException

資料格式無效。Amazon Kinesis Analytics 無法偵測指定串流來源的結構描述。

HTTP 狀態碼:400

UnsupportedOperationException

請求被拒絕,因為指定的參數不受支持,或指定的資源對此操作無效。

HTTP 狀態碼:400

另請參閱

如需在其中一個特定語言 AWS SDK 中使用此 API 的詳細資訊,請參閱下列內容: