建立 BigQuery 連線 - AWS Glue

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

建立 BigQuery 連線

若要從 AWS Glue 連線至 Google BigQuery,必須在 AWS Secrets Manager 秘密中建立並儲存您的 Google Cloud Platform 憑證,然後將該秘密與 Google BigQuery AWS Glue 連線建立關聯。

設定連至 BigQuery 的連線:
  1. 在 Google Cloud Platform 中建立並識別相關資源:

  2. 在 Google Cloud Platform 中建立和匯出服務帳戶憑證:

    您可以使用 BigQuery 憑證精靈來加速此步驟:Create credentials

    若要在 GCP 中建立服務帳戶,請依照 Create service accounts 中提供的教學課程進行操作。

    • 在選取專案時,請選取包含您 BigQuery 資料表的專案。

    • 在為您的服務帳戶選取 GCP IAM 角色時,請新增或建立角色,其會授予供執行 BigQuery 任務的適當許可,以讀取、寫入或建立 BigQuery 資料表。

    若要為您的服務帳戶建立憑證,請依照 Create a service account key 中提供的教學課程進行操作。

    • 在選取金鑰類型時,請選取 JSON

    您現在應已下載 JSON 檔案,該檔案中包含您服務帳戶的憑證。其看起來與下列類似:

    { "type": "service_account", "project_id": "*****", "private_key_id": "*****", "private_key": "*****", "client_email": "*****", "client_id": "*****", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "*****", "universe_domain": "googleapis.com" }
  3. 對您下載的憑證檔案進行 base64 編碼。在 AWS CloudShell 工作階段或類似工作階段中,您可以透過執行 cat credentialsFile.json | base64 -w 0 來從命令列進行此動作。保留此命令的輸出,credentialString

  4. 在 AWS Secrets Manager 中使用您的 Google Cloud Platform 憑證建立秘密。若要在 Secrets Manager 中建立機密,請遵循 AWS Secrets Manager 文件中建立 AWS Secrets Manager 機密中提供的教學課程。建立機密之後,請保留機密名稱 secretName,以便進行下一個步驟。

    • 在選取鍵值對時,請使用 credentialString 值來建立 credentials 鍵對。

  5. 在 AWS Glue Data Catalog 中,依照 https://docs.aws.amazon.com/glue/latest/dg/console-connections.html 中的步驟建立連線。建立連線之後,請保留連線名稱 connectionName,以便進行下一個步驟。

    • 選取連線類型時,請選取 Google BigQuery。

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

  6. 授予與您 AWS Glue 任務許可相關聯的 IAM 角色,以讀取 secretName

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