使用結構描述編輯器 - 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 應用程式終止

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

使用結構描述編輯器

Amazon Kinesis Data Analytics 應用程式輸入串流的結構描述定義如何將串流中的資料提供給應用程式中的SQL查詢。

顯示串流輸入、來源結構描述組態和應用程式內輸入串流之間關係的圖表

結構描述包含選取準則,可決定串流輸入的哪一部分要轉換為應用程式內輸入串流中的資料欄。此輸入可為下列之一:

  • JSON輸入流的JSONPath表達式。JSONPath是用於查詢JSON數據的工具。

  • 以逗號分隔值 (CSV) 格式輸入串流的資料欄號碼。

  • 用於在應用程式內SQL資料串流中顯示資料的資料行名稱和資料類型。資料類型也包含字元或二進位資料的長度。

主控台嘗試使用 DiscoverInputSchema 產生結構描述。如果結構描述探索失敗,或傳回不正確或不完整的結構描述,您必須使用結構描述編輯器手動編輯結構描述。

結構描述編輯器主畫面

下列螢幕截圖顯示結構描述編輯器的主畫面。

編輯結構描述頁面的螢幕截圖。

您可以將下列編輯套用至結構描述:

  • 新增資料欄 (1):如果未自動偵測到資料項目,您可能需要新增資料欄。

  • 刪除資料欄 (2):如果應用程式不需要資料,您可以從來源串流中排除資料。此排除不會影響來源串流中的資料。如果排除資料,該資料就無法供應用程式使用。

  • 重新命名欄位 (3)。資料欄名稱不能為空白、長度必須超過單一字元,且不得包含保留的SQL關鍵字。名稱也必須符合一SQL般識別碼的命名準則:名稱必須以字母開頭,且僅包含字母、底線字元和數字。

  • 變更資料欄的資料類型 (4) 或長度 (5):您可以為資料欄指定相容的資料類型。如果您指定不相容的資料類型,則會填入資料行,NULL或完全不會填入應用程式內串流。在後者情況下,錯誤被寫入錯誤串流。如果您指定的資料欄長度太短,則會截斷傳入資料。

  • 變更欄 (6) 的選取準則:您可以編輯用於確定CSV欄中資料來源的JSONPath表示式或欄順序。若要變更結JSON構描述的選取準則,請輸入資料列路徑運算式的新值。結CSV構描述會使用欄順序作為選取準則。若要變更CSV綱要的選取條件,請變更欄的順序。

編輯串流來源的結構描述

如果您需要編輯串流來源的結構描述,請依照下列步驟執行。

如要編輯串流來源的結構描述
  1. 來源頁面上,選擇編輯結構描述

    股票資料格式化串流範例標籤的螢幕截圖,其中強調了編輯結構描述按鈕。
  2. 編輯結構描述頁面,編輯來源結構描述。

    編輯結構描述頁面的螢幕截圖。
  3. 針對「格式」,選擇JSONCSV。對於JSON或CSV格式,支持的編碼是 ISO 8859-1。

如需有關編輯資料架構JSON或CSV格式化資料架構的詳細資訊,請參閱下一節中的程序。

編輯JSON資料架構

您可以使用下列步驟來編輯JSON資料架構。

編輯資JSON料架構的步驟
  1. 在結構描述編輯器,選擇新增資料欄以新增資料欄。

    一個新的資料欄出現在第一欄位置。若要變更資料欄順序,請選擇欄名稱旁的向上和向下箭頭。

    針對每個新資料欄,請提供以下資訊:

    • 資料欄名稱中,輸入名稱。

      資料欄名稱不能為空白、長度必須超過單一字元,且不得包含保留的SQL關鍵字。它還必須滿足SQL普通標識符的命名標準:它必須以字母開頭,並且只包含字母,底線字符和數字。

    • 在資料行類型中,輸入SQL資料類型。

      資料行類型可以是任何支援的SQL資料類型。如果新資料類型為CHAR、或 VARBINARYVARCHAR,請指定 Length 的資料長度。如需詳細資訊,請參閱資料類型

    • 資料列路徑,請提供資料列路徑。資料列路徑是對應至JSON元素的有效JSONPath運算式。

      注意

      基本資料列路徑值,是包含要匯入之資料的最上層父系路徑。根據預設,此值為 $。如需詳細資訊,請參閱 JSONMappingParameters 中的 RecordRowPath

  2. 若要刪除資料欄,請選擇欄編號旁邊的 x 圖示。

    結構描述編輯器的螢幕截圖,顯示資料欄邊號旁邊的 x 圖示。
  3. 若要重新命名欄,請在資料欄名稱輸入新名稱。新的資料欄名稱不能為空白、長度必須超過單一字元,且不得包含保留的SQL關鍵字。它還必須滿足SQL普通標識符的命名標準:它必須以字母開頭,並且只包含字母,底線字符和數字。

  4. 若要變更欄的資料類型,請為資料欄類型選擇新的資料類型。如果新資料類型為 CHAR, VARBINARY or VARCHAR,請指定長度的資料長度。如需詳細資訊,請參閱資料類型

  5. 選擇儲存結構描述並更新串流,以儲存您的變更。

修改後的結構描述會顯示在編輯器中,類似如下。

顯示已修改結構描述的結構描述編輯器螢幕截圖

如果您的結構描述有許多資料列,可以使用 依資料欄名稱篩選來篩選資料列。例如,若要編輯以 P 開頭的資料欄名稱 (例如 Price 欄),請在依資料欄名稱篩選方塊中輸入 P

編輯CSV資料架構

您可以使用下列步驟來編輯CSV資料架構。

編輯資CSV料架構的步驟
  1. 在結構描述編輯器中,針對資料列分隔符號,選擇傳入資料串流使用的分隔符號。這是串流中資料記錄 (例如換行字元) 之間的分隔符號。

  2. 針對資料欄分隔符號,請選擇傳入資料串流使用的分隔符號。這是串流中資料欄位之間的分隔符號。

  3. 若要新增資料欄,請選擇新增資料欄

    一個新的資料欄出現在第一欄位置。若要變更資料欄順序,請選擇欄名稱旁的向上和向下箭頭。

    針對每個新資料欄,請提供以下資訊:

    • 資料欄名稱中輸入名稱。

      資料欄名稱不能為空白、長度必須超過單一字元,且不得包含保留的SQL關鍵字。它還必須滿足SQL普通標識符的命名標準:它必須以字母開頭,並且只包含字母,底線字符和數字。

    • 欄類型中,輸入SQL資料類型。

      資料行類型可以是任何支援的SQL資料類型。如果新資料類型為CHAR、或 VARBINARYVARCHAR,請指定 Length 的資料長度。如需詳細資訊,請參閱資料類型

  4. 若要刪除資料欄,請選擇欄編號旁邊的 x 圖示。

    結構描述編輯器的螢幕截圖,顯示資料欄邊號旁邊的 x 圖示。
  5. 若要重新命名資料欄,請在資料欄名稱中輸入新名稱。新的資料欄名稱不能為空白、長度必須超過單一字元,且不得包含保留的SQL關鍵字。它還必須滿足SQL普通標識符的命名標準:它必須以字母開頭,並且只包含字母,底線字符和數字。

  6. 若要變更資料欄的資料類型,請為資料欄類型選擇新的資料類型。如果新資料類型為CHAR、或 VARBINARYVARCHAR,請指定 Length 的資料長度。如需詳細資訊,請參閱資料類型

  7. 選擇儲存結構描述並更新串流,以儲存您的變更。

修改後的結構描述會顯示在編輯器中,類似如下。

顯示已修改結構描述的結構描述編輯器螢幕截圖

如果您的結構描述有許多資料列,可以使用 依資料欄名稱篩選來篩選資料列。例如,若要編輯以 P 開頭的資料欄名稱 (例如 Price 欄),請在依資料欄名稱篩選方塊中輸入 P