Registry / workflow / apache-airflow-providers-apache-pinot

apache-airflow-providers-apache-pinot

JSON →
library4.10.3pypypiunverified

This provider allows Apache Airflow to integrate with Apache Pinot, enabling data transfers, SQL execution, and cluster management. Current version 4.10.2 works with Python >=3.10 and Airflow >=2.10. Releases are on demand.

pip install apache-airflow-providers-apache-pinot
INSTALL
IMPORT
SIG · APACHE-AIRFLOW-PRO
A
apache-airflow-providers-apache-pinot
workflowpythonv4.10.3
Install
23.4s avg
Import
Disk
251MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v4.10.3 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 251.1MB
glibc
py 3.103.95 runs
installs and imports cleanly · install 23.4s · import 0.000s · 249MB
251MB installed
● package 251MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

PinotAdminHook
from airflow.providers.apache.pinot.hooks.pinot_admin import PinotAdminHook
from airflow.providers.apache.pinot.hooks.pinot_admin import PinotAdminHook

Basic DAG using Pinot operators and hooks. Requires a running Pinot cluster.

from datetime import datetime from airflow import DAG from airflow.providers.apache.pinot.hooks.pinot import PinotDbApiHook from airflow.providers.apache.pinot.operators.pinot_table_create_or_update import PinotTableCreateOrUpdateOperator with DAG( dag_id='pinot_example', start_date=datetime(2025, 1, 1), catchup=False, ) as dag: # Example: create a Pinot table create_table = PinotTableCreateOrUpdateOperator( task_id='create_pinot_table', table_config={ 'tableName': 'myTable', 'tableType': 'OFFLINE', 'segmentsConfig': { 'replication': '1', 'schemaName': 'mySchema' } }, pinot_admin_hook=PinotAdminHook(pinot_admin_host='http://localhost:9000'), )
Debug
Known issues
breakingRemoval of 'pinot_hook' import path: In provider version 2.0.0, the Pinot hook was moved from airflow.hooks.pinot_hook to airflow.providers.apache.pinot.hooks.pinot. Direct imports from the old path will fail.
fix
Update imports to use the new provider.module path: from airflow.providers.apache.pinot.hooks.pinot import PinotDbApiHook
affects: >=2.0.0
breakingMinimum Airflow version increased to 2.10. Starting from provider version 4.0.0, Airflow >=2.10 is required. Older Airflow versions will raise ImportError.
fix
Upgrade Apache Airflow to version >=2.10.
affects: >=4.0.0
gotchaPassword provided via extra parameter not connection: The PinotDbApiHook does not support password through the standard connection ``password`` field. Instead, pass it via the ``extra`` parameter as JSON: ``{"password": "mypassword"}``. Otherwise authentication may silently fail.
fix
When creating a Pinot connection in Airflow UI, set 'Extra' to '{"password": "..."}' instead of using the 'Password' field.
affects: all
Upgrade
Version history
4.10.3latest on PyPI · released Jun 7, 2026
Audit
Dependencies
apache-airflowrequiredRequired runtime dependency
pinotdbrequiredRequired for DBAPI hook
pinot-adminoptionalRequired for cluster management hooks (PinotAdminHook)
Agent activity
55 hits · last 30 days
node
50
OpenAI (training)
1
Resources
apache-airflow-providers-apache-pinot — pip install apache-airflow-providers-apache-pinot · libregistry