建立資料庫物件 - Amazon Redshift

自 2025 年 11 月 1 日起,Amazon Redshift 將不再支援建立新的 Python UDFs。如果您想要使用 Python UDFs,請在該日期之前建立 UDFs。現有的 Python UDFs將繼續如常運作。如需詳細資訊,請參閱部落格文章

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

建立資料庫物件

您可以建立資料庫物件,包括資料庫、結構描述、資料表和使用者定義函數 (UDF)。您必須連線至叢集或工作群組和資料庫,才能建立資料庫物件。

建立資料庫

您可以使用查詢編輯器 v2 在叢集或工作群組中建立資料庫。

若要建立資料庫

如需有關資料庫的資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的 CREATE DATABASE

  1. 選擇 Plus sign icon inside a circle, indicating an add or create action. 建立,然後選擇資料庫

  2. 輸入資料庫名稱

  3. (選擇性) 選取使用者和群組,然後選擇資料庫使用者

  4. (選擇性) 您可以從資料共用或 AWS Glue Data Catalog建立資料庫。如需詳細資訊 AWS Glue,請參閱《 AWS Glue 開發人員指南》中的什麼是 AWS Glue?

    • (選擇性) 選取使用資料共用建立,然後選擇選取資料共用。此清單包含可用來在目前的叢集或工作群組中建立取用者資料共用的生產者資料共用。

    • (選用) 選取使用 建立 AWS Glue Data Catalog,然後選擇選擇 AWS Glue 資料庫。在資料目錄結構描述中,輸入在參考由三個部分組成的名稱 (database.schema.table) 中的資料時,會用於結構描述的名稱。

  5. 選擇建立資料庫

    樹狀檢視面板中隨即會顯示新的資料庫。

    當您選擇選擇性步驟來查詢從資料共用建立的資料庫時,請連線到叢集或工作群組中的 Amazon Redshift 資料庫 (例如,預設資料庫 dev),並使用由三個部分組成的標記法 (datase.schema.table) (其會參考您選取使用資料共用建立時所建立的資料庫名稱)。資料共用資料庫會列在查詢編輯器 v2 的編輯器標籤中,但未啟用直接連線功能。

    當您選擇選用步驟來查詢從 建立的資料庫 AWS Glue Data Catalog時,請連線至叢集或工作群組中的 Amazon Redshift 資料庫 (例如,預設資料庫 dev),並使用三部分表示法 (database.schema.table),以參考您選取使用 建立 AWS Glue Data Catalog時建立的資料庫名稱、您在資料目錄結構描述中命名的結構描述,以及 中的資料表 AWS Glue Data Catalog。類似於:

    SELECT * FROM glue-database.glue-schema.glue-table
    注意

    確認您已使用 連線方法連線至預設資料庫 使用 IAM 身分的暫時登入資料,且您的 IAM 登入資料已授予 AWS Glue 資料庫使用權限。

    GRANT USAGE ON DATABASE glue-database to "IAM:MyIAMUser"

    AWS Glue 資料庫會列在查詢編輯器 v2 編輯器索引標籤中,但不會啟用直接連線。

    如需查詢 的詳細資訊 AWS Glue Data Catalog,請參閱《Amazon Redshift 資料庫開發人員指南》中的以消費者身分使用 Lake Formation 受管資料共用以生產者身分使用 Lake Formation 受管資料共用

以資料共用取用者身分建立資料庫的範例

下列範例描述的是所使用的一個特定案例,目的是使用查詢編輯器 v2 從資料共用建立資料庫。請檢閱此案例,以了解如何在環境中從資料共用建立資料庫。此案例使用兩個叢集,分別是 cluster-base (生產者叢集) 和 cluster-view (取用者叢集)。

  1. 使用 Amazon Redshift 主控台在叢集 cluster-base 中為資料表 category2 建立資料共用。生產者資料共用會命名為 datashare_base

    如需有關建立資料共用的資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的在 Amazon Redshift 中跨叢集共用資料

  2. 使用 Amazon Redshift 主控台接受資料共用 datashare_base 作為叢集 cluster-view 中資料表 category2 的取用者。

  3. 檢視查詢編輯器 v2 中的樹狀檢視面板,該面板會將 cluster-base 的階層顯示為:

    • 叢集:cluster-base

      • 資料庫:dev

        • 結構描述︰public

          • 資料表:category2

  4. 選擇 Plus sign icon inside a circle, indicating an add or create action. 建立,然後選擇資料庫

  5. 資料庫名稱中輸入 see_datashare_base

  6. 選取使用資料共用建立,然後選擇選取資料共用。選擇 datashare_base 作為您要建立之資料庫的來源。

    查詢編輯器 v2 中的樹狀檢視面板會將 cluster-view 的階層顯示為:

    • 叢集:cluster-view

      • 資料庫:see_datashare_base

        • 結構描述︰public

          • 資料表:category2

  7. 當您查詢資料時,請連線到叢集 cluster-view 的預設資料庫 (名稱一般是 dev),但在 SQL 中請參考資料共用資料庫 see_datashare_base

    注意

    在查詢編輯器 v2 的編輯器檢視中,所選取的叢集為 cluster-view。所選取的資料庫為 dev。資料庫 see_datashare_base 會列出,但未啟用直接連線功能。您選擇 dev 資料庫,並在執行的 SQL 中參考 see_datashare_base

    SELECT * FROM "see_datashare_base"."public"."category2";

    查詢會從叢集 cluster_base 中的資料共用 datashare_base 擷取資料。

從 建立資料庫的範例 AWS Glue Data Catalog

下列範例說明使用 AWS Glue Data Catalog 查詢編輯器 v2 從 建立資料庫的特定案例。檢閱此案例,了解如何從 AWS Glue Data Catalog 環境中的 建立資料庫。這個案例會使用 cluster-view 這個叢集來包含您建立的資料庫。

  1. 選擇 Plus sign icon inside a circle, indicating an add or create action. 建立,然後選擇資料庫

  2. 資料庫名稱中輸入 data_catalog_database

  3. 選取使用 建立 AWS Glue Data Catalog,然後選擇選擇 AWS Glue 資料庫。選擇 glue_db 作為您要建立之資料庫的來源。

    選擇資料目錄結構描述,並輸入 myschema 作為要在由三個部分組成的標記法中使用的結構描述名稱。

    查詢編輯器 v2 中的樹狀檢視面板會將 cluster-view 的階層顯示為:

    • 叢集:cluster-view

      • 資料庫:data_catalog_database

        • 結構描述︰myschema

          • 資料表:category3

  4. 當您查詢資料時,請連線到叢集 cluster-view 的預設資料庫 (名稱一般是 dev),但在 SQL 中請參考資料庫 data_catalog_database

    注意

    在查詢編輯器 v2 的編輯器檢視中,所選取的叢集為 cluster-view。所選取的資料庫為 dev。資料庫 data_catalog_database 會列出,但未啟用直接連線功能。您選擇 dev 資料庫,並在執行的 SQL 中參考 data_catalog_database

    SELECT * FROM "data_catalog_database"."myschema"."category3";

    查詢會擷取由 AWS Glue Data Catalog分類的資料。

建立結構描述

您可以使用查詢編輯器 v2 在叢集或工作群組中建立結構描述。

建立結構描述

如需有關結構描述的資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的結構描述

  1. 選擇 Plus sign icon inside a circle, indicating an add or create action. 建立,然後選擇結構描述

  2. 輸入結構描述名稱

  3. 選擇本機外部作為結構描述類型

    如需本機結構描述的相關資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的 CREATE SCHEMA。如需外部結構描述的相關資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的 CREATE EXTERNAL SCHEMA

  4. 如果您選擇外部,則會有下列外部結構描述選項。

    • Glue Data Catalog — 可在 Amazon Redshift 中建立會參考 AWS Glue中資料表的外部結構描述。除了選擇 AWS Glue 資料庫之外,請選擇與叢集相關聯的 IAM 角色,以及與 Data Catalog 相關聯的 IAM 角色。

    • PostgreSQL — 可在 Amazon Redshift 中建立會參考 Amazon RDS for PostgreSQL 或 Amazon Aurora PostgreSQL 相容版本資料庫的外部結構描述。也請提供連線資訊給資料庫。如需聯合查詢的相關資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的使用聯合查詢來查詢資料

    • MySQL — 可在 Amazon Redshift 中建立會參考 Amazon RDS for MySQL 或 Amazon Aurora MySQL 相容版本資料庫的外部結構描述。也請提供連線資訊給資料庫。如需聯合查詢的相關資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的使用聯合查詢來查詢資料

  5. 選擇建立結構描述

    樹狀檢視面板中便會出現新的結構描述。

建立資料表

您可以使用查詢編輯器 v2 在叢集或工作群組中建立資料表。

若要建立資料表

您可以根據指定的逗號分隔值 (CSV) 檔案來建立資料表,也可以定義資料表的每個資料欄。如需有關資料表的資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的設計資料表CREATE TABLE

請選擇在編輯器中開啟查詢,先檢視及編輯 CREATE TABLE 陳述式,再執行查詢以建立資料表。

  1. 選擇 Plus sign icon inside a circle, indicating an add or create action. 建立,然後選擇資料表

  2. 選擇結構描述。

  3. 輸入資料表名稱。

  4. 選擇 Plus sign icon representing an addition or new item action. 新增欄位以新增資料欄。

  5. 使用 CSV 檔案作為資料表定義的範本:

    1. 選擇從 CSV 載入

    2. 瀏覽至檔案位置。

      如果您使用 CSV 檔案,請確定檔案的第一個資料列包含資料欄標題。

    3. 選擇檔案,然後選擇開啟。確認資料欄名稱和資料類型符合所需。

  6. 針對每一個資料欄,請選擇該資料欄,然後選擇您想要的選項:

    • 編碼選擇一個值。

    • 選擇預設值

    • 如果您希望資料欄的值遞增,請開啟自動遞增。然後指定自動遞增種子自動遞增步長的值。

    • 如果資料欄一律應該包含值,請開啟非 NULL

    • 輸入資料欄的大小值。

    • 如果您想讓資料欄成為主索引鍵,請開啟主索引鍵

    • 如果您想讓資料欄成為唯一索引鍵,請開啟唯一索引鍵

  7. (選擇性) 選擇資料表詳細資訊,然後選擇下列任何選項:

    • 分佈索引鍵資料欄和樣式。

    • 排序索引鍵資料欄和排序類型。

    • 開啟備份,以將資料表包含在快照中。

    • 開啟暫存資料表以將資料表建立為暫存資料表。

  8. 選擇在編輯器中開啟查詢以繼續指定用來定義資料表的選項,或選擇建立資料表以建立資料表。

建立函數

您可以使用查詢編輯器 v2 在叢集或工作群組中建立函數。

建立 函數
  1. 選擇 Plus sign icon inside a circle, indicating an add or create action. 建立,然後選擇函數

  2. 類型中,選擇 SQLPython

  3. 選擇結構描述的值。

  4. 輸入函數名稱的值。

  5. 輸入函數波動的值。

  6. 以輸入參數的順序,依資料類型選擇參數

  7. 傳回中,選擇資料類型。

  8. 輸入函數的 SQL 程式Python 程式的程式碼。

  9. 選擇建立

如需使用者定義函數 (UDF) 的相關資訊,請參閱《Amazon Redshift 資料庫開發人員指南》中的建立使用者定義函數