airflow.providers.apache.spark.hooks.spark_sql

模組內容

類別

SparkSqlHook

此 Hook 是 spark-sql 二進制檔案的包裝器;需要 PATH 中有 "spark-sql" 二進制檔案。

class airflow.providers.apache.spark.hooks.spark_sql.SparkSqlHook(sql, conf=None, conn_id=default_conn_name, total_executor_cores=None, executor_cores=None, executor_memory=None, keytab=None, principal=None, master=None, name='default-name', num_executors=None, verbose=True, yarn_queue=None)[原始碼]

Bases: airflow.hooks.base.BaseHook

此 Hook 是 spark-sql 二進制檔案的包裝器;需要 PATH 中有 “spark-sql” 二進制檔案。

參數
  • sql (str) – 要執行的 SQL 查詢

  • conf (dict[str, Any] | str | None) – 任意 Spark 配置屬性

  • conn_id (str) – connection_id 字串

  • total_executor_cores (int | None) – (僅限獨立和 Mesos) 所有執行器的總核心數 (預設:worker 上所有可用的核心)

  • executor_cores (int | None) – (僅限獨立和 YARN) 每個執行器的核心數 (預設:2)

  • executor_memory (str | None) – 每個執行器的記憶體 (例如 1000M, 2G) (預設:1G)

  • keytab (str | None) – 包含 keytab 的檔案完整路徑

  • master (str | None) – spark://host:port, mesos://host:port, yarn, 或 local (預設:連線中設定的 hostport,或 "yarn")

  • name (str) – Job 的名稱。

  • num_executors (int | None) – 要啟動的執行器數量

  • verbose (bool) – 是否將 verbose 標誌傳遞給 spark-sql

  • yarn_queue (str | None) – 要提交到的 YARN 佇列 (預設:連線中設定的 queue 值,或 "default")

conn_name_attr = 'conn_id'[原始碼]
default_conn_name = 'spark_sql_default'[原始碼]
conn_type = 'spark_sql'[原始碼]
hook_name = 'Spark SQL'[原始碼]
classmethod get_ui_field_behaviour()[原始碼]

傳回 Spark SQL 連線的自訂 UI 欄位行為。

classmethod get_connection_form_widgets()[原始碼]

傳回要新增至 Spark SQL 連線表單的連線小工具。

get_conn()[原始碼]

傳回 Hook 的連線。

run_query(cmd='', **kwargs)[原始碼]

遠端 Popen (實際執行 Spark-sql 查詢)。

參數
  • cmd (str) – 要附加到 spark-sql 命令的命令

  • kwargs (Any) – Popen 的額外參數 (請參閱 subprocess.Popen)

kill()[原始碼]

終止 Spark job。

此條目是否有幫助?