A Fivetran async provider for Apache Airflow
Project description
Fivetran Async Provider for Apache Airflow
This package provides an async operator, sensor and hook that integrates Fivetran into Apache Airflow.
FivetranSensor
allows you to monitor a Fivetran sync job for completion before running downstream processes.
FivetranOperator
submits a Fivetran sync job and polls for its status on the triggerer.
Since an async sensor or operator frees up worker slot while polling is happening on the triggerer,
they consume less resources when compared to traditional "sync" sensors and operators.
Fivetran automates your data pipeline, and Airflow automates your data processing.
Installation
Prerequisites: An environment running apache-airflow
.
pip install airflow-provider-fivetran-async
Configuration
In the Airflow user interface, configure a Connection for Fivetran. Most of the Connection config fields will be left blank. Configure the following fields:
Conn Id
:fivetran
Conn Type
:Fivetran
Login
: Fivetran API KeyPassword
: Fivetran API Secret
Find the Fivetran API Key and Secret in the Fivetran Account Settings, under the API Config section. See our documentation for more information on Fivetran API Authentication.
The sensor assumes the Conn Id
is set to fivetran
, however if you are managing multiple Fivetran accounts, you can set this to anything you like. See the DAG in examples to see how to specify a custom Conn Id
.
Modules
Fivetran Operator Async
FivetranOperator
submits a Fivetran sync job and monitors it on trigger for completion.
It requires that you specify the connector_id
of the sync job to start. You can find connector_id
in the Settings page of the connector you configured in the Fivetran dashboard.
Import into your DAG via:
from fivetran_provider_async.operators import FivetranOperator
Fivetran Sensor Async
FivetranSensor
monitors a Fivetran sync job for completion.
Monitoring with FivetranSensor
allows you to trigger downstream processes only when the Fivetran sync jobs have completed, ensuring data consistency.
You can use multiple instances of FivetranSensor
to monitor multiple Fivetran connectors.
If used in this way,
FivetranSensor
requires that you specify the connector_id
of the sync job to start. You can find connector_id
in the Settings page of the connector you configured in the Fivetran dashboard.
Import into your DAG via:
from fivetran_provider_async.sensors import FivetranSensor
Examples
See the examples directory for an example DAG.
Issues
Please submit issues and pull requests in our official repo: https://github.com/astronomer/airflow-provider-fivetran-async
We are happy to hear from you. Please email any feedback to the authors at humans@astronomer.io.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for airflow-provider-fivetran-async-1.1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d8798358a6710881087d888cab687dff80b6d0d9b53f3343e90cdbd753f4eb2 |
|
MD5 | 7ab7b819c372a1070c25dcadd1c913d2 |
|
BLAKE2b-256 | 56f606e03da080de1ffe5a24e8c15f3d4d69701610518f0f40f0ee9e670ee78a |
Hashes for airflow_provider_fivetran_async-1.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 218da21902dbe4d7eec310eeff76fad60b779c91e511223b931e0161f0910053 |
|
MD5 | 094c1d5e31b38932e433ac6f41238f20 |
|
BLAKE2b-256 | c60775657a1b6ab95c46bb58e5ac3b4263c11fc34c1f69cfa381194c1c09b00c |