Apache Airflow: Veri Akışlarını Yönetmek

Şekil Resim Bir
Apache Airflow: Veri Akışlarını Yönetmek

Airflow Nedir?

Airbnb tarafından geliştirilen airflow verdiğimiz işleri sırasıyla ve zamanında yapan bir Data
Pipeline aracıdır.
Bültenimizin kapak resiminde de görüldüğü gibi Airflow aslında sizin aynı işi defalarca kez
yapmanız gerektiği durumlarda, yapılacak işi Airflow’a belirterek bizim yerimize otomatik bir
şekilde yapmasına imkan sağlar. Tıpkı bir orkestra şefi gibi şef enstrüman çalmaz ama kimin ne
zaman ne yapması gerektiğini söyler.

Airflow Mimarisi

Webserver: Monitör etmek ve debug etmek için kullanılan arayüzdür.
Scheduler: Hem zamanlanmış iş akışlarını tetikleyen
hem de DAG görevlerini Airflow Worker larına
ileterek yürütülmek üzere zamanlamaya başlar.
Worker: Yürütülmek üzere zamanlanmış görevleri alır ve yürütür.
Dag Directory: Sahip olunan bütün dagları tutan
ve scheduler tarafından sık sık okunan klasördür.
Metedata Database: Airflow’un mevcut durumunu depolamak için kullanılan bir meta veritabanıdır.

Airflow Kurulumu,

Airflow kendi web sitesinde verdiği docker compouse dosyası sayesinde aslında tek tık ile
kurulacak şekilde bizlere sunulmuştur.
Tabi ki kurulacak bilgisyarda docker’ın kurulu olduğu varsayımı üzerinden gidiyoruz.
Web sitesinden docker-compouse.yaml dosyasını bilgisayarımızda çalışacağımız dizine
kopyalayıp yine aynı dizinde bir terminal açıp aşağıdaki komutu yazmamız Airflowu çalıştırmak
için yeterlidir. Konsola docker-compose up -d yazıp enter a basalım ve bir süre bekleyelim gerekli
bileşenler indirilip airflow çalışmaya başlayacaktır.

Airflow arayüzüne bağlanma

Airflow’da Veri Akışları Oluşturma

Apache Airflow, veri akışlarının oluşturulmasına izin veren bir araçtır. Veri akışları, DAG’lar ve
operatörler kullanılarak tanımlanır

DAG’lar ve Operatörler: DAG’lar, veri akışı sürecini belirlemek için kullanılan ana yapıdır. Bir DAG,
bir dizi task’ın birbirine bağımlı olarak nasıl çalışacağını tanımlar. DAG, operatörler tarafından
oluşturulan task’larla doldurulur. Operatörler, veri işleme işlemlerini gerçekleştirmek için
kullanılır ve özelleştirilebilirler.

Task’lar: Task’lar, DAG’ların temel yapı taşlarıdır. Task’lar, bir operatör tarafından gerçekleştirilen
bir işlemi temsil eder.

Connection’lar: Connection’lar, veri kaynaklarına ve hedeflerine bağlanmak için kullanılır.
Airflow, farklı veri kaynakları için birçok bağlantı türünü destekler.

İlk Airflow Taskımızı Oluşturalım

Airflow’da Connections Oluşturma

Airflow Uygulama Alanları

Veri işleme: Airflow, veri işleme işlemlerini otomatikleştirmek için kullanılır. Özellikle büyük veri
işleme projelerinde Airflow, veri kaynaklarından veri alma, veri işleme, veri saklama ve veri
analizi süreçlerini yönetmek için kullanılabilir.

Makine Öğrenmesi: Airflow, makine öğrenimi projelerinde de kullanılabilir. Airflow, farklı
makine öğrenimi modellerini eğitmek, doğrulamak ve yayınlamak için kullanılabilir. Ayrıca,
Airflow, makine öğrenimi projelerinde kullanılan veri işleme süreçlerini de otomatikleştirebilir.

ETL: Airflow, ETL (Extract, Transform, Load) süreçlerinin otomatikleştirilmesinde de
kullanılabilir. Veri kaynaklarından veri alma, veri işleme ve veri yükleme işlemleri Airflow’un iş
akışları ile otomatik hale getirilebilir.

Görev Yönetimi: Airflow, birçok farklı sektörde görev yönetimi için kullanılabilir. Örneğin, bir
pazarlama ekipleri, görevlerini Airflow aracılığıyla takip edebilir ve bu sayede projelerinin
zamanında tamamlanmasını sağlayabilir.

Yapılandırılmış İşler: Airflow, işlerin yapılandırılması ve yönetimi için de kullanılabilir. Örneğin,
bir insan kaynakları ekibi, yeni işe alımların takibini Airflow aracılığıyla yapabilir.

Sonuç

Apache Airflow, veri akışlarının otomatikleştirilmesi için çok güçlü bir araçtır.
Airflow, birçok farklı veri kaynağına bağlanabilen esnek bir yapıya sahiptir.
Airflow, DAG’lar ve operatörler kullanarak veri akışlarının yönetilmesine izin verir ve
iş akışlarının otomatik olarak yönetilmesini sağlar.
Airflow, büyük veri işleme, makine öğrenmesi, ETL, görev yönetimi ve
yapılandırılmış işler gibi birçok farklı uygulama alanında kullanılabilir.
Airflow, esnek yapısı ve geniş topluluğu sayesinde, birçok farklı kuruluşta ve
endüstride kullanılmaktadır.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir