airflow.providers.databricks.hooks.databricks_sql

模块内容

DatabricksSqlHook

用于与 Databricks SQL 交互的 Hook。

函数

create_timeout_thread(cur, execution_timeout)

属性

LIST_SQL_ENDPOINTS_ENDPOINT

T

airflow.providers.databricks.hooks.databricks_sql.LIST_SQL_ENDPOINTS_ENDPOINT = ('GET', 'api/2.0/sql/endpoints')[源代码]
airflow.providers.databricks.hooks.databricks_sql.T[源代码]
airflow.providers.databricks.hooks.databricks_sql.create_timeout_thread(cur, execution_timeout)[源代码]
class airflow.providers.databricks.hooks.databricks_sql.DatabricksSqlHook(databricks_conn_id=BaseDatabricksHook.default_conn_name, http_path=None, sql_endpoint_name=None, session_configuration=None, http_headers=None, catalog=None, schema=None, caller='DatabricksSqlHook', **kwargs)[源代码]

基类:airflow.providers.databricks.hooks.databricks_base.BaseDatabricksHook, airflow.providers.common.sql.hooks.sql.DbApiHook

用于与 Databricks SQL 交互的 Hook。

参数
  • databricks_conn_id (str) – 指向 Databricks 连接 的引用。

  • http_path (str | None) – Databricks SQL Endpoint 或集群的可选 HTTP 路径字符串。如果未指定,则应在 Databricks 连接的额外参数中指定,或者必须指定 sql_endpoint_name

  • sql_endpoint_name (str | None) – Databricks SQL Endpoint 的可选名称。如果未指定,则必须提供如上所述的 http_path

  • session_configuration (dict[str, str] | None) – 可选的 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+

  • kwargs – Databricks SQL Connector 参数内部的其他参数

hook_name = 'Databricks SQL'[源代码]
get_conn()[源代码]

返回 Databricks SQL 连接对象。

run(sql: str | collections.abc.Iterable[str], autocommit: bool = ..., parameters: collections.abc.Iterable | collections.abc.Mapping[str, Any] | None = ..., handler: None = ..., split_statements: bool = ..., return_last: bool = ..., execution_timeout: datetime.timedelta | None = None) None[源代码]
run(sql: str | collections.abc.Iterable[str], autocommit: bool = ..., parameters: collections.abc.Iterable | collections.abc.Mapping[str, Any] | None = ..., handler: Callable[[Any], T] = ..., split_statements: bool = ..., return_last: bool = ..., execution_timeout: datetime.timedelta | None = None) tuple | list[tuple] | list[list[tuple] | tuple] | None

运行一个命令或一系列命令。

将 SQL 语句列表传递给 SQL 参数,以便按顺序执行它们。

参数
  • sql – 要执行的 SQL 语句(字符串)或要执行的 SQL 语句列表

  • autocommit – 在执行查询之前,将连接的自动提交设置设为什么。请注意,目前 Databricks SQL 中没有提交功能,因此此标志无效。

  • parameters – 用于呈现 SQL 查询的参数。

  • handler – 结果处理程序,它会使用每个语句的结果调用。

  • split_statements – 是否将单个 SQL 字符串拆分为多个语句并分别运行

  • return_last – 是否仅返回最后一个语句的结果,或在拆分后返回所有语句的结果

  • execution_timeout – 允许执行此任务实例的最长时间,如果超出此时间,将引发错误并失败。

返回

如果提供了处理程序,则仅返回最后一个 SQL 表达式的结果,除非将 return_last 设置为 False。

abstract bulk_dump(table, tmp_file)[源代码]

将数据库表转储到制表符分隔的文件中。

参数
  • table – 源表的名称

  • tmp_file – 目标文件的路径

abstract bulk_load(table, tmp_file)[source]

将制表符分隔的文件加载到数据库表中。

参数
  • table – 目标表的名称

  • tmp_file – 要加载到表中的文件路径

此条目有帮助吗?