連線至 dbt Cloud

在您的 Airflow 環境中安裝 dbt Cloud provider 後,將可以使用對應的 dbt_cloud 連線類型。以下說明如何為您的 dbt Cloud 連線設定 API 權杖,以及選填提供帳戶 ID 和/或租戶名稱。

預設連線 ID

所有與 dbt Cloud 相關的 hook 和運算子預設使用 dbt_cloud_default

驗證 dbt Cloud API

若要在 Airflow 中與 dbt Cloud API 互動,需要使用者 API 權杖服務帳戶 API 權杖

設定連線

密碼 (必填)

用於驗證 dbt Cloud API 的 API 權杖。

若使用 Airflow UI 中的連線表單,權杖也可以儲存在「API 權杖」欄位中。

登入 (選填)

作為 dbt Cloud 運算子或 DbtCloudHook 方法的預設帳戶 ID 使用的帳戶 ID。若連線中提供了帳戶 ID,則您不需要將 account_id 傳遞給運算子或 hook 方法。account_id 值將會改為從 Airflow 連線中擷取。若有需要,仍然可以將 account_id 明確地傳遞給運算子或 hook 方法,以覆寫連線中設定的預設值。

若使用 Airflow UI 中的連線表單,帳戶 ID 也可以儲存在「帳戶 ID」欄位中。

注意

若 Airflow 連線中未提供帳戶 ID,則 account_id *必須* 明確地傳遞給運算子或 hook 方法。

主機 (選填)

您的 dbt Cloud 環境的租戶網域 (例如「my-tenant.getdbt.com」)。當使用單一租戶 dbt Cloud 執行個體或其他 dbt Cloud 區域 (如 EMEA 或 Virtual Private dbt Cloud) 時,這特別有用。若未提供租戶網域,則會使用「cloud.getdbt.com」作為預設值,假設為北美區域中的多租戶執行個體。

若使用 Airflow UI 中的連線表單,租戶網域也可以儲存在「租戶」欄位中。

額外 (選填)

以 JSON 字典指定額外參數。目前,若要透過 Proxy 連線至 dbt Cloud,僅支援 proxies

proxies 應為 HTTP 和 HTTPS 連線使用的 Proxy 字典。

{
  "proxies": {
    "http": "http://myproxy.mycompany.local:8080",
    "https": "http://myproxy.mycompany.local:8080"
  }
}

當以環境變數指定連線時,您應依照資料庫連線的標準語法指定。請注意,URI 的所有元件都應進行 URL 編碼。

例如,若要新增連線 ID 為「dbt_cloud_default」的連線

當指定帳戶 ID 時

export AIRFLOW_CONN_DBT_CLOUD_DEFAULT='dbt-cloud://account_id:api_token@'

當未指定帳戶 ID 時

export AIRFLOW_CONN_DBT_CLOUD_DEFAULT='dbt-cloud://:api_token@'

當指定租戶網域時,請務必遵循此處表格中的存取 URL 模式 ([here](https://docs.getdbt.com/docs/cloud/about-cloud/access-regions-ip-addresses))

export AIRFLOW_CONN_DBT_CLOUD_DEFAULT='dbt-cloud://:api_token@my-access-url'

例如,若我的帳戶託管在 Cell-based 北美區域,且我的存取 URL 為 ab123.us1.dbt.com,則我的連線字串應為: .. code-block:: bash

export AIRFLOW_CONN_DBT_CLOUD_DEFAULT=’dbt-cloud://:api_token@ab123.us1.dbt.com’

您可以參考關於透過環境變數建立連線的文件以取得更多資訊。

此條目是否對您有幫助?