選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

Vertica 連線

焦點模式
Vertica 連線 - AWS Glue

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

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

您可以使用 AWS Glue for Spark 來讀取和寫入 Glue 4.0 及更新版本中 Vertica AWS 中的資料表。您可以使用 SQL 查詢定義要從 Vertica 讀取的內容。您可以使用 AWS Secrets Manager 透過 Glue 連線存放於 AWS 中的使用者名稱和密碼登入資料來連線至 Vertica。

如需有關 Vertica 的詳細資訊,請參閱 Vertica 文件

設定 Vertica 連線

若要從 Glue AWS 連線至 Vertica,您需要在 AWS Secrets Manager 秘密中建立並存放您的 Vertica 登入資料,然後將該秘密與 Vertica AWS Glue 連線建立關聯。如果您的 Vertica 執行個體位於 Amazon VPC 中,您也需要提供聯網選項給 Glue Vertica AWS 連線。從資料庫讀取和寫入資料庫時,您將需要用於暫存空間的 Amazon S3 儲存貯體或資料夾。

若要從 Glue AWS 連線至 Vertica,您需要一些先決條件:

  • 從資料庫讀取和寫入資料庫時用於暫存空間的 Amazon S3 儲存貯體或資料夾 (稱為 tempS3Path)。

    注意

    在 Glue AWS 任務資料預覽中使用 Vertica 時,可能不會自動從 tempS3Path 中移除暫存檔案。若要確保移除暫存檔案,請選擇資料預覽窗格中的結束工作階段,直接結束資料預覽工作階段。

    如果無法保證資料預覽工作階段會直接結束,請考慮設定 Amazon S3 生命週期組態以移除舊資料。根據最長任務執行期和餘裕,我們建議移除超過 49 小時的資料。如需有關設定 Amazon S3 生命週期的詳細資訊,請參閱《Amazon S3 文件》中的管理您的儲存空間生命週期

  • IAM 政策,具有與 Glue AWS 任務角色建立關聯之 Amazon S3 路徑的適當許可。

  • 如果您的 Vertica 執行個體位於 Amazon VPC 中,請設定 Amazon VPC 以允許您的 AWS Glue 任務與 Vertica 執行個體通訊,而不會讓流量周遊公有網際網路。

    在 Amazon VPC 中,識別或建立 Glue AWS 在執行任務時將使用的 VPC子網路安全群組。此外,您也需要確保 Amazon VPC 已完成設定,以允許 Vertica 執行個體與此位置之間的網路流量。您的任務將需要與 Vertica 用戶端連接埠建立 TCP 連線 (預設 5433)。根據您的網路配置,這可能需要變更安全群組規則、網路 ACL、NAT 閘道及對等連線。

然後,您可以繼續設定 AWS Glue 以搭配 Vertica 使用。

設定連至 Vertica 的連線:
  1. 在 中 AWS Secrets Manager,使用您的 Vertica 登入資料 verticaUsernameverticaPassword 建立秘密。若要在 Secrets Manager 中建立秘密,請遵循 AWS Secrets Manager 文件中建立 AWS Secrets Manager 秘密中提供的教學課程。建立機密之後,請保留機密名稱 secretName,以便進行下一個步驟。

    • 在選取鍵/值組時,請使用 verticaUsername 值來建立 user 金鑰對。

    • 在選取鍵/值組時,請使用 verticaPassword 值來建立 password 金鑰對。

  2. 在 AWS Glue 主控台中,依照中的步驟建立連線新增 AWS Glue 連線。建立連線之後,請保留連線名稱 connectionName,以便進行下一個步驟。

    • 選取連線類型時,請選取 Vertica。

    • 選取 Vertica 主機後,請提供 Vertica 安裝的主機名稱。

    • 選取 Vertica 連接埠時,您可透過該連接埠安裝 Vertica。

    • 選取 AWS 機密時,請提供 secretName

  3. 在下列情況中,您可能需要其他組態:

    • 對於 Amazon VPC AWS 中託管於 的 Vertica 執行個體

      • 將 Amazon VPC AWS 連線資訊提供給定義 Vertica 安全憑證的 Glue 連線。建立或更新連線時,請在網路選項中設定 VPC子網路安全群組

建立 AWS Glue Vertica 連線後,您需要先執行下列步驟,才能呼叫連線方法。

  • 將與您的 Glue AWS 任務許可相關聯的 IAM 角色授予 tempS3Path

  • 授予與您的 Glue 任務相關聯的 IAM AWS 角色讀取 secretName 的許可。

  • 在您的 AWS Glue 任務組態中,提供 connectionName 作為其他網路連線

從 Vertica 讀取

先決條件:

  • 您想要讀取的 Vertica 資料表。您將需要 Vertica 資料庫名稱 dbName 和資料表名稱 tableName

  • 設定為提供驗證資訊的 AWS Glue Vertica 連線。完成上一個程序設定連至 Vertica 的連線的步驟,以設定驗證資訊。您需要 Glue AWS 連線的名稱,connectionName

  • 用於暫存空間的 Amazon S3 儲存貯體或資料夾 (如前述)。您將需要名稱 tempS3Path。您將需要使用 s3a 通訊協定連線至此位置。

例如:

dynamicFrame = glueContext.create_dynamic_frame.from_options( connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "table": "tableName", } )

您也可提供 SELECT SQL 查詢,以篩選傳回 DynamicFrame 的結果,或從多個資料表存取資料集。

例如:

dynamicFrame = glueContext.create_dynamic_frame.from_options( connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "query": "select * FROM tableName", }, )

寫入 Vertica 資料表

此範例會從現有的 DynamicFrame dynamicFrame 將資訊寫入 Vertica。如果資料表已有資訊, AWS Glue 將從您的 DynamicFrame 附加資料。

先決條件:

  • 您想要寫入的目前或所需資料表名稱 tableName。您也需要相應的 Vertica 資料庫名稱 dbName

  • 設定為提供驗證資訊的 AWS Glue Vertica 連線。完成上一個程序設定連至 Vertica 的連線的步驟,以設定驗證資訊。您將需要 Glue AWS 連線的名稱 connectionName

  • 用於暫存空間的 Amazon S3 儲存貯體或資料夾 (如前述)。您將需要名稱 tempS3Path。您將需要使用 s3a 通訊協定連線至此位置。

例如:

glueContext.write_dynamic_frame.from_options( frame=dynamicFrame, connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "table": "tableName", } )

Vertica 連線選項參考

  • connectionName – 必要。用於讀取/寫入。 AWS Glue Vertica 連線的名稱,設定為向您的連線方法提供身分驗證和聯網資訊。

  • db – 必要。用於讀取/寫入。您的連線方法將會互動的 Vertica 資料庫名稱。

  • dbSchema:如需要識別資料表,則為必要項目。用於讀取/寫入。預設:public。您的連線方法將會互動的結構描述名稱。

  • table:除非已提供 query,否則為寫入和讀取的必要項目。用於讀取/寫入。您的連線方法將會互動的資料表名稱。

  • query – 用於讀取。定義從 Teradata 讀取時應擷取之內容的 SELECT SQL 查詢。

  • staging_fs_url – 必要。用於讀取/寫入。有效值:s3a URL。用於暫存空間的 Amazon S3 儲存貯體或資料夾的 URL。

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。