Wprowadzenie
Apache Airflow to jedno z najpopularniejszych narzędzi do zarządzania data pipeline. Dzięki swojej elastyczności i bogatemu ekosystemowi, jest często wybierany przez zespoły zajmujące się ETL, ELT i automatyzacją procesów w obszarze machine learning. Jednak aby w pełni wykorzystać jego możliwości, warto skonfigurować lokalne środowisko programistyczne, które umożliwi szybkie iteracje i testowanie.
Dlaczego lokalne środowisko jest kluczowe?
Praca nad data pipeline w środowisku produkcyjnym może być ryzykowna. Błędy w kodzie mogą prowadzić do przestojów lub utraty danych. Lokalna konfiguracja pozwala na bezpieczne testowanie i debugowanie, zanim zmiany zostaną wdrożone w środowisku produkcyjnym.
Co będziesz potrzebować?
- Apache Airflow
- Docker i Docker Compose
- Podstawowa znajomość Python
Krok 1: Konfiguracja Docker Compose
Docker Compose umożliwia łatwe uruchamianie wielu kontenerów jednocześnie. Poniżej znajduje się przykładowy plik docker-compose.yml dla Apache Airflow:
version: '3.7'
services:
airflow:
image: apache/airflow:2.5.0
ports:
- "8080:8080"
environment:
- AIRFLOW__CORE__EXECUTOR=LocalExecutor
volumes:
- ./dags:/opt/airflow/dags
Ten plik definiuje podstawową konfigurację Airflow z lokalnym executor i mapowaniem katalogu dags.
Krok 2: Tworzenie i testowanie DAG-ów
DAG (Directed Acyclic Graph) to serce każdego data pipeline. Oto prosty przykład:
from airflow import DAG
from airflow.operators.dummy import DummyOperator
from datetime import datetime
default_args = {
'owner': 'airflow',
'start_date': datetime(2023, 1, 1),
}
dag = DAG(
'example_dag',
default_args=default_args,
schedule_interval='@daily',
)
start = DummyOperator(task_id='start', dag=dag)
end = DummyOperator(task_id='end', dag=dag)
start >> end
Po zapisaniu pliku w katalogu dags, Airflow automatycznie załaduje nowy DAG.
Krok 3: Debugowanie i monitorowanie
Interfejs użytkownika Airflow (dostępny pod http://localhost:8080) umożliwia monitorowanie stanu zadań, przeglądanie logów i ręczne uruchamianie DAG-ów. Upewnij się, że wszystkie zadania działają zgodnie z oczekiwaniami, zanim przejdziesz do środowiska produkcyjnego.
Podsumowanie
Konfiguracja lokalnego środowiska z Apache Airflow i Docker Compose to kluczowy krok w dostarczaniu niezawodnych data pipeline. Dzięki temu możesz testować i debugować swoje rozwiązania w bezpiecznym środowisku, co minimalizuje ryzyko błędów w produkcji.
Gotowy, aby zacząć? Pobierz Apache Airflow i rozpocznij swoją przygodę z budowaniem niezawodnych DAG-ów!


