Data Engineer Serüveni 1

Yunus Yarba
4 min readAug 14, 2020

--

Selam, sizlerle bu yazı serisi ile data engineer ve big data eğitimi üzerine tecrübe ve deneyimlerimi paylaşmayı hedefliyorum.Eğitimi Zekeriya Beşiroğlu mentorlüğünde İstanbul Data Science Academy bünyesinde almaya başladım. Başta Zekeriya Hocam olmak üzere kurstaki tüm arkadaşlarıma her zaman yardımlaşma ve bilgi paylaşımlarındaki çabalarıdan dolayı teşekkür ederim.

Bu yazımda data warehouse, ETL, ELT ve data lake konularından bahsetmeye çalışacam.

Data Warehouse

Data warehouse,çeşitli kaynaklardan gelen dataları iş bilgisine göre toplayan ve yöneten bir tür database yapısıdır. Amaç, veri analizi ve raporlama için oluşturulan BI sisteminin temelidir.

Database ile data warehouse arasında yapılan işlerde farklılıklar vardır. Kullanım amaçları ve oluşturma yapıları farklıdır. Örneğin join işlemlerini database de yaparken, raporlama işlemlerini data warehouse üzerinden yapmak gerekir. İkisi içinde farklı teknolojileri seçebildiğimiz gibi aynı teknolojiler seçebiliriz. Yani database için Oracle, datawarehouse için Teradata tercih edebiliriz ya da ikisinde de Oracle tercih edebiliriz.

Data warehouse adlandırması farklılık gösterebilir. Bunu bir görselde özetleyecek olursak:

Günümüzde büyük şirket olarak nitelendirebildiğimiz tüm şirketlerde mutlaka data warehouse vardır. Data warehouse da datalar genelde structured data olarak tutulur.

Data Warehouse Tipleri

The Modern Architecture (Cloudera)
  1. Enterprise Data Warehouse: Merkezi bir veri ambarıdır. Birden fazla tablo bir araya getirilerek tablo sayısı azaltılarak tutulur.
  2. Operational Data Store: OLTP ile data warehouse arasında bir mimaridir. Data warehouse gibi raporlamak için kullanılır ama gerçek zamanlı yenilenebilir. Örneğin anlık bir eylem için anlık raporlara göre hareket etmek istiyorsak.
  3. Data Mart: Veri ambarının bir alt kümesidir. Satış, finans gibi belirli bir iş alanı için özel olarak tasarlanmıştır. Genellikle machine learning, advanced analytics, dashboard işleri data martlardan yapalır.
https://www.guru99.com/database-vs-data-warehouse.html

ETL(Extract, Transform and Load)

ETL, verileri farklı kaynak sistemlerinden çıkaran, ardından verileri dönüştüren (hesaplamalar, birleştirme işlemleri gibi) ve son olarak verileri data warehouse sistemine yükleyen bir işlemdir.

ETL işleminiz günlük,haftalık,aylık gibi birçok çeşit olabilir.

1.Extraction

Kaynaklardan verileri fiziksel olarak aldığımız aşamadır.3 farklı veri çıkarma yöntemi vardır:

  • Full Extraction
  • Partial Extraction- without update notification.
  • Partial Extraction- with update notification

Kullanılan yöntemden bağımsız olarak, çıkarma, kaynak sistemlerin performansını ve yanıt süresini etkilememelidir. Bu kaynak sistemler, veritabanlarıdır. Herhangi bir yavaşlama veya kilitlenme, şirketi etkileyebilir.

Exraction sırasında bazı doğrulamalar yapılır.Örneğin, veri türü kontrol edilir, doğru datayı yani istenilenler alınır.

2.Transformation

Kaynak sunucudan çıkarılan veriler hamdır ve orijinal haliyle kullanılamaz. Bu nedenle temizlenmesi ve dönüştürülmesi gerekiyor. Aslında, bu, ETL sürecinin değer kattığı ve verileri anlayışlı BI raporlarının oluşturulabilmesi için değiştirdiği temel adımdır. Bu aşamada ad ve soyadı farklı sütunlarda bunları birleştirme gibi veriler üzerinde özelleştirilmiş işlemler gerçekleştirebilirsiniz. Tarih- saat dönüşümü, yaş iki haneden fazla olamaz gibi doğrulamalar yapılır. Yani datanın temizlenmesi ve doğru bir şekilde çalışması bu aşamada yapılır.

3.Loading

ETL sürecinin son adımıdır. Büyük miktardaki verilerin data warehouse kısa sürede ve doğru bir şekilde yüklenmesi aşamasıdır. Yükleme sırasında, kurtarma mekanizmaları veri bütünlüğü kaybı olmadan hata noktasından yeniden başlayacak şekilde yapılandırılmalıdır.

ELT(Extract,Load and Transform)

Veriler direk kaynaktan hedefe kopyalanır ve daha sonra trasfrom işlemleri yapılır. Big data veya cloud mimarilerinde kullanılır. ETL temel olarak az miktarda veri için kullanılırken ELT büyük miktarlarda veri için kullanılır. ETL’nin uygulanması kolaydır, ELT’nin uygulanması ve sürdürülmesi için niş beceriler gerekir. ELT performans ve maliyet üzerine ETL’a göre avantajlıdır. Yapılandırılmış, yapılandırılmamış veri kaynaklarını destekleyen ölçeklenebilir bulut altyapısında kullanılır.

Data Lake

Data lake, yapılandırılmış veya yapılandırılmamış her türlü veriyi depolayabildiğimiz merkezi bir depodur. İş çevikliği sunar.Verileri yapılandırmanıza gerek kalmadan verilerinizi olduğu gibi depolayabilir hatta görselleştirmelerden büyük veri işlemeye, gerçek zamanlı analitiklere ve makine öğrenimine kadar farklı analiz türleri çalıştırabilirsiniz.

Yazımı okuduğunuz için teşekkür ederim.Sonraki yazılarda da görüşmek üzere…

--

--