| :mod:`airflow.hooks.druid_hook` |
| =============================== |
| |
| .. py:module:: airflow.hooks.druid_hook |
| |
| |
| Module Contents |
| --------------- |
| |
| .. py:class:: DruidHook(druid_ingest_conn_id='druid_ingest_default', timeout=1, max_ingestion_time=None) |
| |
| Bases: :class:`airflow.hooks.base_hook.BaseHook` |
| |
| Connection to Druid overlord for ingestion |
| |
| To connect to a Druid cluster that is secured with the druid-basic-security |
| extension, add the username and password to the druid ingestion connection. |
| |
| :param druid_ingest_conn_id: The connection id to the Druid overlord machine |
| which accepts index jobs |
| :type druid_ingest_conn_id: str |
| :param timeout: The interval between polling |
| the Druid job for the status of the ingestion job. |
| Must be greater than or equal to 1 |
| :type timeout: int |
| :param max_ingestion_time: The maximum ingestion time before assuming the job failed |
| :type max_ingestion_time: int |
| |
| |
| .. method:: get_conn_url(self) |
| |
| |
| |
| |
| .. method:: get_auth(self) |
| |
| Return username and password from connections tab as requests.auth.HTTPBasicAuth object. |
| |
| If these details have not been set then returns None. |
| |
| |
| |
| |
| .. method:: submit_indexing_job(self, json_index_spec) |
| |
| |
| |
| |
| .. py:class:: DruidDbApiHook(*args, **kwargs) |
| |
| Bases: :class:`airflow.hooks.dbapi_hook.DbApiHook` |
| |
| Interact with Druid broker |
| |
| This hook is purely for users to query druid broker. |
| For ingestion, please use druidHook. |
| |
| .. attribute:: conn_name_attr |
| :annotation: = druid_broker_conn_id |
| |
| |
| |
| .. attribute:: default_conn_name |
| :annotation: = druid_broker_default |
| |
| |
| |
| .. attribute:: supports_autocommit |
| :annotation: = False |
| |
| |
| |
| |
| .. method:: get_conn(self) |
| |
| Establish a connection to druid broker. |
| |
| |
| |
| |
| .. method:: get_uri(self) |
| |
| Get the connection uri for druid broker. |
| |
| e.g: druid://localhost:8082/druid/v2/sql/ |
| |
| |
| |
| |
| .. method:: set_autocommit(self, conn, autocommit) |
| |
| |
| |
| |
| .. method:: insert_rows(self, table, rows, target_fields=None, commit_every=1000) |
| |
| |
| |
| |