airflow.providers.apache.hive.operators.hive¶
类¶
在指定的 Hive 数据库中执行 hql 代码或 hive 脚本。 |
模块内容¶
- class airflow.providers.apache.hive.operators.hive.HiveOperator(*, hql, hive_cli_conn_id='hive_cli_default', schema='default', hiveconfs=None, hiveconf_jinja_translate=False, script_begin_tag=None, mapred_queue=None, mapred_queue_priority=None, mapred_job_name=None, hive_cli_params='', auth=None, proxy_user=None, **kwargs)[source]¶
基类:
airflow.models.BaseOperator
在指定的 Hive 数据库中执行 hql 代码或 hive 脚本。
- 参数:
hql (str) – 要执行的 hql。注意,您也可以使用相对于 dag 文件路径的(模板化)hive 脚本的相对路径。(已模板化)
hive_cli_conn_id (str) – Hive CLI 连接 ID 的引用。(已模板化)
hiveconfs (dict[Any, Any] | None) – 如果定义,这些键值对将作为
-hiveconf "key"="value"
传递给 hive。hiveconf_jinja_translate (bool) – 当为 True 时,hiveconf 类型的模板 ${var} 将被转换为 jinja 类型的模板 {{ var }},${hiveconf:var} 将被转换为 jinja 类型的模板 {{ var }}。请注意,您可能希望将其与
DAG(user_defined_macros=myargs)
参数一起使用。查看 DAG 对象文档了解更多详情。script_begin_tag (str | None) – 如果定义,操作符将删除脚本中在 script_begin_tag 第一次出现之前的部分。
mapred_queue (str | None) – Hadoop CapacityScheduler 使用的队列。(已模板化)
mapred_queue_priority (str | None) – CapacityScheduler 队列中的优先级。可能的设置包括:VERY_HIGH(非常高)、HIGH(高)、NORMAL(正常)、LOW(低)、VERY_LOW(非常低)
mapred_job_name (str | None) – 此名称将显示在 jobtracker 中。这可以使监控更容易。
hive_cli_params (str) – 传递给 hive CLO 的参数
auth (str | None) – 为 Hive 连接传递的可选身份验证选项
proxy_user (str | None) – 以此用户身份运行 HQL 代码。
- template_fields: collections.abc.Sequence[str] = ('hql', 'schema', 'hive_cli_conn_id', 'mapred_queue', 'hiveconfs', 'mapred_job_name',...[source]¶
- template_ext: collections.abc.Sequence[str] = ('.hql', '.sql')[source]¶
- property hook: airflow.providers.apache.hive.hooks.hive.HiveCliHook[source]¶
获取 Hive cli hook。
- execute(context)[source]¶
创建操作符时实现此方法。
Context 是与渲染 jinja 模板时相同的字典。
请参考 get_template_context 获取更多 context 信息。