airflow.providers.apache.hive.transfers.hive_to_mysql

此模块包含一个将数据从 Hive 移动到 MySQL 的操作符。

模块内容

HiveToMySqlOperator

将数据从 Hive 移动到 MySQL。

class airflow.providers.apache.hive.transfers.hive_to_mysql.HiveToMySqlOperator(*, sql, mysql_table, hiveserver2_conn_id='hiveserver2_default', mysql_conn_id='mysql_default', mysql_preoperator=None, mysql_postoperator=None, bulk_load=False, hive_conf=None, **kwargs)[source]

基类: airflow.models.BaseOperator

将数据从 Hive 移动到 MySQL。

请注意,目前数据在推送到 MySQL 之前会加载到内存中,因此此操作符应仅用于少量数据。

参数
  • sql (str) – 要针对 Hive 服务器执行的 SQL 查询。(已模板化)

  • mysql_table (str) – 目标 MySQL 表,使用点号表示法定位特定数据库。(已模板化)

  • mysql_conn_id (str) – 源 mysql 连接

  • hiveserver2_conn_id (str) – 对 Hive Server2 thrift 服务连接 ID的引用。

  • mysql_preoperator (str | None) – 在导入之前针对 MySQL 运行的 SQL 语句,通常用于截断或删除传入的数据,允许任务是幂等的(运行两次任务不会重复加载数据)。(已模板化)

  • mysql_postoperator (str | None) – 在导入之后针对 MySQL 运行的 SQL 语句,通常用于将数据从暂存区移动到生产区并发出清理命令。(已模板化)

  • bulk_load (bool) – 使用 bulk_load 选项的标志。这使用 LOAD DATA LOCAL INFILE 命令直接从制表符分隔的文本文件加载 MySQL。MySQL 服务器必须支持通过此命令加载本地文件(默认情况下禁用)。

  • hive_conf (dict | None) –

template_fields: collections.abc.Sequence[str] = ('sql', 'mysql_table', 'mysql_preoperator', 'mysql_postoperator')[source]
template_ext: collections.abc.Sequence[str] = ('.sql',)[source]
template_fields_renderers[source]
ui_color = '#a0e08c'[source]
execute(context)[source]

在创建操作符时派生。

上下文是与渲染 Jinja 模板时使用的相同的字典。

有关更多上下文,请参考 get_template_context。

此条目是否有帮助?