airflow.providers.common.sql.operators.generic_transfer¶
類¶
將資料從一個連線移動到另一個連線。 |
模組內容¶
- class airflow.providers.common.sql.operators.generic_transfer.GenericTransfer(*, sql, destination_table, source_conn_id, source_hook_params=None, destination_conn_id, destination_hook_params=None, preoperator=None, insert_args=None, page_size=None, **kwargs)[原始碼]¶
基類:
airflow.models.BaseOperator將資料從一個連線移動到另一個連線。
假設它們都在各自的 hook 中提供了所需的方法。源 hook 需要暴露一個 get_records 方法,目標 hook 需要暴露一個 insert_rows 方法。
這適用於適合記憶體的較小資料集。
- 引數:
sql (str) – 對源資料庫執行的 SQL 查詢。(模板化)
destination_table (str) – 目標表。(模板化)
source_conn_id (str) – 源連線。(模板化)
source_hook_params (dict | None) – 源 hook 引數。
destination_conn_id (str) – 目標連線。(模板化)
destination_hook_params (dict | None) – 目標 hook 引數。
preoperator (str | list[str] | None) – 在載入資料之前執行的 SQL 語句或語句列表。(模板化)
insert_args (dict | None) – insert_rows 方法的額外引數。
page_size (int | None) – 分頁模式下讀取的記錄數(可選)。
- template_fields: collections.abc.Sequence[str] = ('source_conn_id', 'destination_conn_id', 'sql', 'destination_table', 'preoperator', 'insert_args')[原始碼]¶
- template_ext: collections.abc.Sequence[str] = ('.sql', '.hql')[原始碼]¶
- classmethod get_hook(conn_id, hook_params=None)[原始碼]¶
返回此連線 ID 的 DbApiHook。
- 引數:
- 返回:
此連線的 DbApiHook
- 返回型別:
- property source_hook: airflow.providers.common.sql.hooks.sql.DbApiHook[原始碼]¶
- property destination_hook: airflow.providers.common.sql.hooks.sql.DbApiHook[原始碼]¶
- render_template_fields(context, jinja_env=None)[原始碼]¶
模板化 self.template_fields 中列出的所有屬性。
這會就地改變屬性,且不可逆。
- 引數:
context (airflow.sdk.definitions.context.Context) – 包含要應用於內容的上下文字典。
jinja_env (jinja2.Environment | None) – 用於渲染的 Jinja 環境。