Skip to main content

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 Key
  • Password: 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

airflow-provider-fivetran-async-1.1.1.tar.gz (24.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file airflow-provider-fivetran-async-1.1.1.tar.gz.

File metadata

File hashes

Hashes for airflow-provider-fivetran-async-1.1.1.tar.gz
Algorithm Hash digest
SHA256 4d8798358a6710881087d888cab687dff80b6d0d9b53f3343e90cdbd753f4eb2
MD5 7ab7b819c372a1070c25dcadd1c913d2
BLAKE2b-256 56f606e03da080de1ffe5a24e8c15f3d4d69701610518f0f40f0ee9e670ee78a

See more details on using hashes here.

File details

Details for the file airflow_provider_fivetran_async-1.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for airflow_provider_fivetran_async-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 218da21902dbe4d7eec310eeff76fad60b779c91e511223b931e0161f0910053
MD5 094c1d5e31b38932e433ac6f41238f20
BLAKE2b-256 c60775657a1b6ab95c46bb58e5ac3b4263c11fc34c1f69cfa381194c1c09b00c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page