Veri setinin alfanümerik bir yığın olduğu o ilk anda ne yapılmalıdır? Yapılması gereken ilk şey veri seti üzerinden anlamlı desenler çıkarılması için analiz etmek olacaktır. EDA (Exploratory Data Analysis) yada Data Profiling kavramıda bu noktada hangi analiz adımlarının kullanılabileceğini toparlayan bir üst başlık niteliği taşır. Okumaya devam et
Python
Apache Spark – 2 (Spark SQL w/ Databricks)
Veri özelinde kullanılan pek çok ürün gibi Apache Spark‘ında cloud hizmet sağlayıcıları tarafından sunulan servisleri mevcuttur. Son zamanlarda adı sıkça duyulan Databricks veri tarafında Spark’ında içinde bulunduğu bir dizi hizmeti cloud hizmeti olarak sunmaktadır. Okumaya devam et
Apache Spark – 1 (Spark SQL w/ Jupyter)
Büyük veri setleri üzerinde performanslı analiz ve uygulamalar geliştirme imkanı sunan in-memory hesaplama yeteneğine sahip merkezi bir analitik işleme motorudur. Kendi sayfasındaki açıklaması da şöyledir; “Apache Spark™ is a unified analytics engine for large-scale data processing.” Okumaya devam et
Template Engine (Jinja2 vs Mako)
Jinja2 ve Mako; Python projelerinde kullanımı en yaygın olan template engine modülleridir. Özellikle HTML, YAML gibi scriptlerde tekrarlı yada belirli kurallara göre üretilen scriptin dinamik olarak üretilmesine imkan sunarlar. Ancak bunları kullanmak için template’inizin herhangi bir syntax yapısına sahip bir script olması zorunlu değildir. Modüllerdeki ön tanımlı yapılarla çakışmayan herhangi bir text, template olarak kullanılabilir. Okumaya devam et
Apache Airflow – 3 (Multi Task)
Airflow’u yalnızca sequential (sıralı) bir akış (DAG) yaratmak için kullanmak yüksek hacimli iş akışı içeren bir ortamda verimsiz olacaktır. Bu nedenle; “Paralel süreçlerin de tanımlanabildiği bir yapının kurulması ve işletilmesi nasıl olur?” sorusu oldukça önemlidir. Bu noktada Airflow executor çeşitleri ile farklı alternatifler sunmaktadır. Okumaya devam et
Apache Airflow – 2 (Single Task)
Airflow’da bir akış tanımlamak için Python dilinin tercih edilmiş olması veri özelinde oldukça değerli bir durum. Python projesinin içine apache-airflow modülünü install edip ardından kullanılacak dosyaya import edilmesi DAG tanımlamaya başlamak için yeterli olacaktır. Okumaya devam et
Apache Airflow – 1 (Quickstart)
Airflow’un kendi sayfasında da yaptığı tanım konuyu anlamak adına oldukça yeterli: “Airflow bir data streaming ürünü değildir. Task’lar verileri birinden diğerine taşımaz (ancak meta veri alışverişinde bulunabilir!). Airflow’u; Spark Streaming veya Storm ile değil, Oozie veya Azkaban ile karşılaştırmak daha doğru olacaktır.”. Ne olduğunu bilmek kadar ne olmadığını bilmekte önemlidir. 😉 Okumaya devam et
Rest in Python – 5 (ORM with SQLAlchemy)
Veri tabanı üzerinde çalışan kod parçalarında sql sorguları bulunması bir çok açıdan doğru olmayan bir yaklaşımdır. SQL Injection dahil fazlaca açık kapı bırakmak bir yana nesne tabanlı geliştirme yapmak noktasında da sorunlu bir durum yaratır. Bu sorunsalı aşmak için bir çok dilde veri tabanı işlemlerinde erişim yöntemi olarak ORM (Object Relational Mapping) kullanılır. Python’da da bu mantığı kullanmak için en yaygın kütüphane SQLAlchemy kütüphanesidir. Okumaya devam et
Rest in Python – 4 (Build Rest with Flask)
REST API nasıl kullanılır sorusuna bu serinin ilk yazılarında kullanışlı olabilecek örneklerle değinildi. Peki kullanılan REST servisleri nasıl yazılır? Python bunun için de birden fazla seçenek sunmakla beraber en popüler ve efektif çözüm olan Flask ile ilerlemek en doğrusu olacaktır. Okumaya devam et
Rest in Python – 3 (Rest to Postgre)
REST API‘den çekilen verinin PostgreDB‘ye nasıl aktarılabileceğine dair örnek bir Python uygulaması nasıl yazılır? Bu soru cevaplanırken bir önceki yazıda öğrenilen requests kütüphanesi ve PostgreDB bağlantısı içinde psycopg2 kütüphanesi kullanılacaktır. Okumaya devam et