

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

# DiscoverInputSchema
<a name="API_DiscoverInputSchema"></a>

透過評估指定串流來源 (Kinesis 資料串流或 Kinesis Data Firehose 交付串流） 或 Amazon S3 物件上的範例記錄，推斷 SQL 型 Kinesis Data Analytics 應用程式的結構描述。在回應中，作業會傳回推斷的結構描述，以及作業用來推斷結構描述的範例記錄。

 在為應用程式設定串流來源時，您可以使用推斷的結構描述。當您使用 Kinesis Data Analytics 主控台建立應用程式時，主控台會使用此操作來推斷結構描述，並將其顯示在主控台使用者介面中。

## 請求語法
<a name="API_DiscoverInputSchema_RequestSyntax"></a>

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

## 請求參數
<a name="API_DiscoverInputSchema_RequestParameters"></a>

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

 ** [InputProcessingConfiguration](#API_DiscoverInputSchema_RequestSyntax) **   <a name="APIReference-DiscoverInputSchema-request-InputProcessingConfiguration"></a>
[InputProcessingConfiguration](API_InputProcessingConfiguration.md) 用來在探索記錄的結構描述之前預先處理記錄的 。  
類型：[InputProcessingConfiguration](API_InputProcessingConfiguration.md) 物件  
必要：否

 ** [InputStartingPositionConfiguration](#API_DiscoverInputSchema_RequestSyntax) **   <a name="APIReference-DiscoverInputSchema-request-InputStartingPositionConfiguration"></a>
您希望 Kinesis Data Analytics 開始從指定串流來源讀取記錄的時間點，以供探索之用。  
類型：[InputStartingPositionConfiguration](API_InputStartingPositionConfiguration.md) 物件  
必要：否

 ** [ResourceARN](#API_DiscoverInputSchema_RequestSyntax) **   <a name="APIReference-DiscoverInputSchema-request-ResourceARN"></a>
串流來源的 Amazon Resource Name (ARN)。  
類型：字串  
長度限制：長度下限為 1。長度上限為 2048。  
模式：`arn:.*`  
必要：否

 ** [S3Configuration](#API_DiscoverInputSchema_RequestSyntax) **   <a name="APIReference-DiscoverInputSchema-request-S3Configuration"></a>
指定此參數來探索 Amazon S3 物件中的資料結構描述。  
類型：[S3Configuration](API_S3Configuration.md) 物件  
必要：否

 ** [ServiceExecutionRole](#API_DiscoverInputSchema_RequestSyntax) **   <a name="APIReference-DiscoverInputSchema-request-ServiceExecutionRole"></a>
用於存取串流來源的角色 ARN。  
類型：字串  
長度限制：長度下限為 1。長度上限為 2048。  
模式：`arn:.*`  
必要：是

## 回應語法
<a name="API_DiscoverInputSchema_ResponseSyntax"></a>

```
{
   "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" ]
}
```

## 回應元素
<a name="API_DiscoverInputSchema_ResponseElements"></a>

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

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

 ** [InputSchema](#API_DiscoverInputSchema_ResponseSyntax) **   <a name="APIReference-DiscoverInputSchema-response-InputSchema"></a>
從串流來源推斷的結構描述。辨別串流來源中的資料格式，以及每個資料元素如何映射至相應欄位，這些欄位位於建立的應用程式內串流。  
類型：[SourceSchema](API_SourceSchema.md) 物件

 ** [ParsedInputRecords](#API_DiscoverInputSchema_ResponseSyntax) **   <a name="APIReference-DiscoverInputSchema-response-ParsedInputRecords"></a>
元素陣列，其中每個元素對應到串流記錄中的一列 (串流記錄可以有多個資料列)。  
類型：字串陣列的陣列。

 ** [ProcessedInputRecords](#API_DiscoverInputSchema_ResponseSyntax) **   <a name="APIReference-DiscoverInputSchema-response-ProcessedInputRecords"></a>
由 `InputProcessingConfiguration` 參數中指定的處理器修改的串流資料。  
類型：字串陣列

 ** [RawInputRecords](#API_DiscoverInputSchema_ResponseSyntax) **   <a name="APIReference-DiscoverInputSchema-response-RawInputRecords"></a>
抽樣以推斷結構描述的原始串流資料。  
類型：字串陣列

## 錯誤
<a name="API_DiscoverInputSchema_Errors"></a>

 ** InvalidArgumentException **   
指定的輸入參數值無效。  
HTTP 狀態碼：400

 ** InvalidRequestException **   
請求 JSON 對 操作無效。  
HTTP 狀態碼：400

 ** ResourceProvisionedThroughputExceededException **   
探索無法從串流來源取得記錄，因為 Kinesis Streams `ProvisionedThroughputExceededException`。如需詳細資訊，請參閱 [Amazon Kinesis Video 串流 API 參考資料](https://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetRecords.html)中的 GetRecords。  
HTTP 狀態碼：400

 ** ServiceUnavailableException **   
服務無法完成請求。  
HTTP 狀態碼：500

 ** UnableToDetectSchemaException **   
資料格式無效。Kinesis Data Analytics 無法偵測指定串流來源的結構描述。    
 ** ProcessedInputRecords **   
在 `InputProcessingConfiguration` 參數中指定的處理器修改之串流資料。  
 ** RawInputRecords **   
已取樣來推斷結構描述的原始串流資料。
HTTP 狀態碼：400

 ** UnsupportedOperationException **   
請求被拒絕，因為指定的參數不受支持，或指定的資源對此操作無效。  
HTTP 狀態碼：400

## 另請參閱
<a name="API_DiscoverInputSchema_SeeAlso"></a>

如需在其中一種語言特定 AWS SDKs中使用此 API 的詳細資訊，請參閱下列內容：
+  [AWS 命令列界面 V2](https://docs.aws.amazon.com/goto/cli2/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 .NET V4 的 SDK](https://docs.aws.amazon.com/goto/DotNetSDKV4/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 C\$1\$1 的 SDK](https://docs.aws.amazon.com/goto/SdkForCpp/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 Go 的 SDK v2](https://docs.aws.amazon.com/goto/SdkForGoV2/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 Java V2 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaV2/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 JavaScript V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 Kotlin 的 SDK](https://docs.aws.amazon.com/goto/SdkForKotlin/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 PHP V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForPHPV3/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 Python 的 SDK](https://docs.aws.amazon.com/goto/boto3/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 
+  [AWS 適用於 Ruby V3 的 SDK](https://docs.aws.amazon.com/goto/SdkForRubyV3/kinesisanalyticsv2-2018-05-23/DiscoverInputSchema) 