airflow.providers.apache.hive.operators.hive_stats¶
類¶
收集分割槽統計資訊並將它們插入到 MySQL 中。 |
模組內容¶
- class airflow.providers.apache.hive.operators.hive_stats.HiveStatsCollectionOperator(*, table, partition, extra_exprs=None, excluded_columns=None, assignment_func=None, metastore_conn_id='metastore_default', presto_conn_id='presto_default', mysql_conn_id='airflow_db', ds='{{ ds }}', dttm='{{ logical_date.isoformat() }}', **kwargs)[source]¶
基類:
airflow.models.BaseOperator收集分割槽統計資訊並將它們插入到 MySQL 中。
統計資訊是透過動態生成的 Presto 查詢收集的,並以此格式插入。如果您重新執行相同的日期/分割槽,統計資訊會覆蓋自身。
CREATE TABLE hive_stats ( ds VARCHAR(16), table_name VARCHAR(500), metric VARCHAR(200), value BIGINT );
- 引數:
metastore_conn_id (str) – 對 Hive Metastore 連線 ID 的引用。
table (str) – 源表,格式為
database.table_name。(模板化)partition (Any) – 源分割槽。(模板化)
extra_exprs (dict[str, Any] | None) – 用於針對表執行的表示式字典,其中鍵是指標名稱,值是 Presto 相容的表示式
excluded_columns (list[str] | None) – 要排除的列列表,考慮排除 blobs、大型 json 列等…
assignment_func (Callable[[str, str], dict[Any, Any] | None] | None) – 一個接收列名和型別,並返回指標名稱和 Presto 表示式字典的函式。如果返回 None,則應用全域性預設值。如果返回空字典,則不對該列計算統計資訊。
- template_fields: collections.abc.Sequence[str] = ('table', 'partition', 'ds', 'dttm')[source]¶