SQLExecuteQueryOperator 连接 Apache Pinot¶
使用 SQLExecuteQueryOperator
执行针对 Apache Pinot 集群的 SQL 查询。
注意
对于 Apache Pinot 没有专门的 Operator。请改用 SQLExecuteQueryOperator
。
注意
确保已安装所需的 provider 包(例如 apache-airflow-providers-apache-pinot
)以启用 Apache Pinot 支持。
使用 Operator¶
使用 conn_id
参数连接到您的 Apache Pinot 实例,连接元数据结构如下
参数 |
输入 |
---|---|
主机:字符串 |
Pinot broker 主机名或 IP 地址 |
端口:整数 |
Pinot broker 端口(默认:8000) |
模式:字符串 |
(未使用) |
额外:JSON |
可选字段,例如: |
SQLExecuteQueryOperator 连接 Apache Pinot 的一个示例用法如下
tests/system/apache/pinot/example_pinot.py
# Task: Simple query to test connection and query engine
select_1_task = SQLExecuteQueryOperator(
task_id="select_1",
sql="SELECT 1",
)
# Task: Count total records in airlineStats (sample table)
count_airline_stats = SQLExecuteQueryOperator(
task_id="count_airline_stats",
sql="SELECT COUNT(*) FROM airlineStats",
)
# Task: Group by Carrier and count flights
group_by_carrier = SQLExecuteQueryOperator(
task_id="group_by_carrier",
sql=dedent("""
SELECT Carrier, COUNT(*) AS flight_count
FROM airlineStats
GROUP BY Carrier
ORDER BY flight_count DESC
LIMIT 5
""").strip(),
)
参考¶
如需进一步信息,请参阅
注意
直接通过 SQLExecuteQueryOperator() 提供的参数优先于 Airflow 连接元数据中指定的参数。