airflow.providers.databricks.operators.databricks_sql

此模組包含 Databricks 運算子。

模組內容

類別

DatabricksSqlOperator

在 Databricks SQL 端點或 Databricks 叢集中執行 SQL 程式碼。

DatabricksCopyIntoOperator

在 Databricks SQL 端點或 Databricks 叢集中執行 COPY INTO 命令。

屬性

COPY_INTO_APPROVED_FORMATS

class airflow.providers.databricks.operators.databricks_sql.DatabricksSqlOperator(*, databricks_conn_id=DatabricksSqlHook.default_conn_name, http_path=None, sql_endpoint_name=None, session_configuration=None, http_headers=None, catalog=None, schema=None, output_path=None, output_format='csv', csv_params=None, client_parameters=None, **kwargs)[原始碼]

基底: airflow.providers.common.sql.operators.sql.SQLExecuteQueryOperator

在 Databricks SQL 端點或 Databricks 叢集中執行 SQL 程式碼。

另請參閱

如需更多關於如何使用此運算子的資訊,請參閱指南: DatabricksSqlOperator

參數
  • databricks_conn_id (str) – 參照 Databricks 連線 ID (已套用範本)

  • http_path (str | None) – 指定 Databricks SQL 端點或叢集 HTTP 路徑的選用字串。若未指定,則應在 Databricks 連線的額外參數中指定,或必須指定 sql_endpoint_name

  • sql_endpoint_name (str | None) – Databricks SQL 端點的選用名稱。若未指定,則必須如上所述提供 http_path

  • sql – 要執行的 SQL 程式碼,可以是單一字串、字串清單 (SQL 陳述式) 或範本檔案的參照。(已套用範本) 範本參照會以 ‘.sql’ 結尾的字串辨識

  • parameters – (選用) 用於呈現 SQL 查詢的參數。

  • session_configuration – Spark 會議參數的選用字典。預設為 None。若未指定,則可在 Databricks 連線的額外參數中指定。

  • client_parameters (dict[str, Any] | None) – Databricks SQL 連接器參數內部的其他參數

  • http_headers (list[tuple[str, str]] | None) – 將在每個請求上設定為 HTTP 標頭的 (k, v) 配對的選用清單。(已套用範本)

  • catalog (str | None) – 要使用的選用初始目錄。需要 DBR 9.0+ 版本 (已套用範本)

  • schema (str | None) – 要使用的選用初始結構描述。需要 DBR 9.0+ 版本 (已套用範本)

  • output_path (str | None) – 指定寫入選取資料的檔案的選用字串。(已套用範本)

  • output_format (str) – 若指定 output_path` ,則為輸出資料的格式。 可能的值為 ``csv``jsonjsonl。預設值為 csv

  • csv_params (dict[str, Any] | None) – 將傳遞至用於寫入 CSV 資料的 csv.DictWriter 類別的參數。

template_fields: collections.abc.Sequence[str][原始碼]
template_ext: collections.abc.Sequence[str] = ('.sql',)[原始碼]
template_fields_renderers: ClassVar[dict][原始碼]
conn_id_field = 'databricks_conn_id'[原始碼]
get_db_hook()[原始碼]

取得連線的資料庫 Hook。

傳回

資料庫 Hook 物件。

傳回類型

airflow.providers.databricks.hooks.databricks_sql.DatabricksSqlHook

airflow.providers.databricks.operators.databricks_sql.COPY_INTO_APPROVED_FORMATS = ['CSV', 'JSON', 'AVRO', 'ORC', 'PARQUET', 'TEXT', 'BINARYFILE'][原始碼]
class airflow.providers.databricks.operators.databricks_sql.DatabricksCopyIntoOperator(*, table_name, file_location, file_format, databricks_conn_id=DatabricksSqlHook.default_conn_name, http_path=None, sql_endpoint_name=None, session_configuration=None, http_headers=None, client_parameters=None, catalog=None, schema=None, files=None, pattern=None, expression_list=None, credential=None, storage_credential=None, encryption=None, format_options=None, force_copy=None, copy_options=None, validate=None, **kwargs)[原始碼]

基底: airflow.models.BaseOperator

在 Databricks SQL 端點或 Databricks 叢集中執行 COPY INTO 命令。

COPY INTO 命令由各個部分建構而成,這些部分在文件中說明。

另請參閱

如需更多關於如何使用此運算子的資訊,請參閱指南: DatabricksCopyIntoOperator

參數
  • table_name (str) – 表格的必要名稱。(已套用範本)

  • file_location (str) – 要匯入檔案的必要位置。(已套用範本)

  • file_format (str) – 必要檔案格式。支援的格式為 CSVJSONAVROORCPARQUETTEXTBINARYFILE

  • databricks_conn_id (str) – 參照 Databricks 連線 ID (已套用範本)

  • http_path (str | None) – 指定 Databricks SQL 端點或叢集 HTTP 路徑的選用字串。若未指定,則應在 Databricks 連線的額外參數中指定,或必須指定 sql_endpoint_name

  • sql_endpoint_name (str | None) – Databricks SQL 端點的選用名稱。若未指定,則必須如上所述提供 http_path

  • session_configuration – Spark 會議參數的選用字典。預設為 None。若未指定,則可在 Databricks 連線的額外參數中指定。

  • http_headers (list[tuple[str, str]] | None) – 將在每個請求上設定為 HTTP 標頭的 (k, v) 配對的選用清單

  • catalog (str | None) – 要使用的選用初始目錄。需要 DBR 9.0+ 版本

  • schema (str | None) – 要使用的選用初始結構描述。需要 DBR 9.0+ 版本

  • client_parameters (dict[str, Any] | None) – Databricks SQL 連接器參數內部的其他參數

  • files (list[str] | None) – 要匯入檔案的選用清單。不能與 pattern 一起指定。(已套用範本)

  • pattern (str | None) – 用於比對要匯入檔案名稱的選用 regex 字串。不能與 files 一起指定。

  • expression_list (str | None) – 將在 SELECT 運算式中使用的選用字串。

  • credential (dict[str, str] | None) – 用於驗證來源位置的選用認證組態。

  • storage_credential (str | None) – 目的地的選用 Unity Catalog 儲存認證。

  • encryption (dict[str, str] | None) – 指定位置的選用加密組態。

  • format_options (dict[str, str] | None) – 具有特定檔案格式選項的選用字典。

  • force_copy (bool | None) – 用於控制強制匯入資料的選用布林值 (也可以在 copy_options 中指定)。

  • validate (bool | int | None) – 用於結構描述和資料驗證的選用組態。True 強制驗證所有列,整數數字 - 僅驗證前 N 列

  • copy_options (dict[str, str] | None) – 選用複製選項字典。目前僅支援 force 選項。

template_fields: collections.abc.Sequence[str] = ('file_location', 'files', 'table_name', 'databricks_conn_id')[原始碼]
execute(context)[原始碼]

在建立運算子時衍生。

Context 是與呈現 Jinja 範本時使用的字典相同。

請參閱 get_template_context 以取得更多上下文。

on_kill()[原始碼]

覆寫此方法以在任務執行個體被終止時清理子程序。

運算子內任何使用 threading、subprocess 或 multiprocessing 模組的地方都需要清理,否則會留下孤立程序。

此條目是否有幫助?