Scikit-Learn Spark Deployment

![]()
Makine öğrenimi modelleri, günümüzde birçok alanda veri analizinin ve tahminlerin temelini oluşturuyor. Scikit-learn ise en başından beri Python ile yapılan çalışmalarda, basit arayüzü ve geniş algoritma yelpazesi ile ML çalışmalarında en yaygın kütüphane. Ancak, scikit-learn ile büyük veri kümelerinde çalışmak, performans ve ölçeklenebilirlik açısından bazı zorluklar doğurabiliyor. Bu noktada, büyük veri üzerindeki başarısıyla meşhur Apache Spark […]
Polars ClickHouse Veri Okuma ve Yazma

![]()
Ham verinin düzenli olarak temizlenerek analitik ortamlarda istiflenmesi ve buradan da analiz, görselleştirme ve yapay zeka çalışmalarının yapılması hemen hemen her işletmede standart, temel ve önemli bir ihtiyaç haline geldi. Temiz, düzgün ve güvenilir verinin biriktiği ortamların başında veri ambarları geliyor. Veri işlemek ve analiz etmek için ise bir çok araç mevcut. ClickHouse veri ambarının […]
Docker ile Kolay ve Hızlı Apache Airflow Kurulumu

![]()
Veri mühendisliği, analitik ve makine öğrenmesi projelerinde, iş akışlarını yönetmek ve otomatikleştirmek için güçlü bir araç arıyorsanız, Apache Airflow ilk seçeneklerden birisi olacaktır. Airflow, karmaşık veri işleme görevlerini planlamanıza, yürütmenize ve izlemenize olanak tanıyan popüler bir açık kaynaklı platformdur. Ancak, Airflow’u öğrenmek isteyenlerin Airflow kurmaları gerekiyor. Klasik yöntemlerle (işletim sistemi üzerinde bir servis olarak) kurmak […]
Docker ile Hızlı ve Kolay PySpark ve Jupyter Kurulumu

![]()
Büyük veri analizi, günümüzün veri odaklı dünyasında giderek daha önemli hale geliyor. PySpark ve Jupyter Notebook, bu alanda en popüler araçlardan ikisi. PySpark, büyük veriyi işlemek için son derece hızlı ve ölçeklenebilir bir araçken, Jupyter Notebook ise PySpark ile etkileşimli veri analizi ve görselleştirme çalışmaları için sade ve konforlu bir ortam sunar. Ancak, PySpark ve […]
Apache Spark, Minio, Nessie Catalog, Iceberg ve Docker ile Lakehouse Örneği

![]()
Veri ambarı (data warehouse) ile veri gölünün (data lake) en iyi yönlerini birleştirerek bizlere ilişkisel veri tabanı konforunu büyük veri üzerinde sunan lakehouse çözümleri gün geçtikçe hayatımızdaki yerini alıyor. Bugün burada tamamen açık kaynak kodlu bileşenleri kullanarak docker üzerinde basit bir lakehouse örneği yapacağız. 1. Altyapıyı Oluşturan Bileşenler 1.1. Nessie Nessie veri gölleri için transactional […]
Kafka Connect Nedir?

![]()
Kafka Connect, Apache Kafka’nın tamamlayıcı bir parçasıdır ve diğer sistemleri Kafka ile entegre eder. Örneğin Kafka Connect, değişiklikleri bir veritabanından (source) Kafka’ya aktarmak ve buradan başka bir veri depolama sistemine (sink) yazmak için kullanılabilir, böylelikle diğer uygulamaların/servislerin (örneğin dashboard) gerçek zamanlı veriye erişimini sağlar. Kafka Connect, içinde Kafka’nın da vazgeçilmez bir parçası olduğu sağlam data […]
AWS Glue ile Basit Bir ETL Uygulaması

![]()
AWS Glue, birden çok kaynaktan veri keşfetmeyi, hazırlamayı, taşımayı ve entegre etmeyi kolaylaştıran sunucusuz bir veri entegrasyon hizmetidir. AWS üzerinde ETL ihtiyaçları genellikle Glue ile karşılanır. Bu yazımızda S3 üzerindeki csv dosyalarını parquet formatına çeviren basit bir AWS Glue ETL Job oluşturacağız. Parquet dosyaları analitik sorgular için CSV’ye göre daha performanslıdır ve daha az yer […]
Apache Spark’ı Hangi Ortamlarda Kullanabiliriz?

![]()
Apache Spark büyük veri ve analitik dünyada çok popüler bir araç. Spark’ı bir çok farklı amaçla kullanabileceğimiz gibi bir çok farklı ortamda çalıştırabiliriz. Bu yazımızda Spark’ı hangi ortamlarda çalıştırıp kullanabiliriz onlardan bahsedeceğiz. Lokal Java yüklü herhangi bir bilgisayar veya sunucuda Spark binary dosyalarını indirip lokal modda Spark’ı kullanabilirsiniz. Geliştirme yapmak ve öğrenmek için ideal bir […]
FastAPI, Docker ve Terraform ile ML Model Deployment

![]()
Yapay öğrenme, veri bilimi ve makine öğrenmesi son yılların en popüler kavramlarından. Model deployment öncesinde bir çok insan bu alanda, özellikle model geliştirme sürecinde bilgi sahibi olmak ve yetenek kazanmak için çabalıyor. Bu kadar ilgi olmasına rağmen ne yazık ki model geliştirmek ve iyi bir başarı skoru elde etmekle sürecin sona erdiği gibi bir eksik […]
ML Modelini Object Storage’a Depolama

![]()
Merhaba. Bu yazımızda ml modellerinin object sotrage’a nasıl kaydedileceğini ve gerektiğinde buradan okunarak nasıl kullanılacağını MinIO örneği üzerinden öğreneceğiz. Model scikit-learn kütüphanesiyle geliştirilmiş bir pipeline model olacaktır. Niçin modelleri object storage’a kaydetmek iyidir? Geliştirilen modeli lokal diske kaydettiğimizde ona sadece biz erişebiliriz. Aslında geliştirilen her model bir gün canlı ortamda çalışma hayaline sahiptir, ancak bir […]
Apache Flink ile Kafka’dan Mesaj Okuma (Scala)

![]()
Herkese merhaba. Apache Flink gerçek zamanlı veri işleme konusunda oldukça başarılı ve popüler bir araç. Böyle olmasına rağmen ilginç bir şekilde Flink öğrenmek için yeterli kaynak ve güncel örnekler bulmak zor. Mesela benzer bir araç olan Apache Spark ile tonlarca kitap, kurs, makale ve örnek varken Flink’te bunun onda biri bile yok. Daha önce Apache […]
AWS Lambda Function Custom Layer: Pandas Örneği

![]()
Selamlar. Bu yazımızda AWS Lambda function içinde nasıl pandas kullanabiliriz onu öğreneceğiz. (Ekim 2025 güncelleme) Aslında pandas da dahil olan AWS’nin kendi layer’ı var. Siz bu yazıyı kendi özgün katmanınızı nasıl oluşturabilirsiniz ona örnek olarak düşünün. Python pandas veri manipülasyonunda en yaygın kullanılan paketlerden birisi. Kendi bilgisayarımızda, notebook sunucusunda, Google Colab’da ve başka bir çok […]
Zookeeper-less Kafka Cluster Kurulumu

![]()
Güncelleme: Ekim 2025. Bu yazının daha güncel hali için buraya tıklayınız. Bu yazımızda Zookeeper olmadan Docker ile Kafka cluster kurulumu yapacağız ve böylelikle 3-node Zookeeper-less Kafka’yı deneme şansı bulacağız. Bildiğimiz gibi Kafka yakın zamanda Zookeeper bağımlılığına tamamen son verdi (KIP-500 Kafka 2.8.0). Her ne kadar mevcut Kafka Cluster’lar Zookeeper kullanıyor olsa da yavaş yavaş bu […]
Spark SQL Window Functions

![]()
Window functions SQL dünyasında yaygın olarak bilinen fonksiyonlar. SQL’de kullandığımız bir çok fonksiyonu Spark ile de kullanabiliyoruz. Bu yazımızda Spark Scala ve SQL söz dizimleriyle window functions örnekleri yapacağız. Window functions nedir, ne işe yarar? Window fonksiyonlar, window olarak adlandırılan bir satır grubu üzerinde çalışır ve satır grubuna dayalı olarak her satır için bir dönüş […]
Nasıl Data Engineer Olunur?

![]()
Data Engineer, veriyi talep edilen yer ve zamanda istenen format ve doğrulukta hazır bulunduran ve bunun için gerekli sistem ve otomasyonu inşa eden ve bunun idamesini sağlayan bilişim çalışanıdır. Bu yazımızda data engineer kimdir? Data engineer olmak istiyorsam ne yapmalıyım? İşveren olarak benim bir data engineer ihtiyacım var mı? Varsa kimi almalıyım? Data engineer çalışanlarımın […]
MLOps Nedir? Yeni Başlayanlar için Bir Rehber

![]()
Merhabalar. Bu yazımızda MLOps nedir? sorusunun cevabını arayacağız. MLOps’un açılımı Machine Learning Operations‘dır, odak noktası ise yapay öğrenme modellerinin canlı ortamlarda çalıştırılması sürecidir. MLOps, yazılımların canlı ortamlarda dağıtılması süreçlerine odaklanan abisi DevOps’a benzerlik gösterir ancak kendine özgü farklılıklara sahiptir. Bu farklılıklara ilerleyen kısımlarda değineceğiz. Neden MLOps gibi birşeye ihtiyaç var? Yapay öğrenme, veri bilimi ve […]
Pandas: Veri Türleri Üzerindeki Perdeyi Kaldırın

![]()
Merhabalar bu yazımızda: “Pandas dataframe veri türlerini nasıl görebiliriz?” sorusunun cevabını iki farklı yöntemi mukayese ederek öğreneceğiz. Aslında bir nevi pandas dataframe şeması üzerinde keşif yapacağız. “Okudum veriyi oldu bitti” deyip dümdüz, tam gaz ilerlemeyin. İleride başınıza neler gelebilir dikkat edin. Aslında dataframe nesnesinin dtypes özelliği var oradan çok kolay veri türlerini öğrenebiliriz niçin böyle […]
DBeaver Community Edition Cassandra JDBC Driver Ekleme

![]()
Merhabalar. Hepimiz SQL kullanmak için farklı editörler kullanıyoruz. Eğer Cassandra CQL için ücretsiz editör sıkıntısı yaşıyorsanız doğru adrestesiniz. Benim editör tercihim DBeaver Community Sürümü (Edition). Bu sürümde MySQL, PostgreSQL, Hive, Spark Thrift, SQLlite, Oracle ve başka bir çok veri tabanı bağlantısı hazır geliyor. Ancak Canssandra ve CQL kullanmak istiyorsanız maalesef bu hazırda yok. Sadece Cassandra […]
Pandas Dataframe’i Veri Tabanına Yazmanın En Kötü Yolu

![]()
Pandas dataframe veri bilimci ve mühendisleri tarafından çok yaygın kullanılan bir araç. Veriyi şekilden şekile sokmak için birebir. Veriyi istediğimiz hale getirdikten sonra çoğu zaman bir yere yazıp saklamak isteriz. Eğer saklanacak yer bir veri tabanı olacak ise bunun bir kaç farklı yöntemi var. Bunlardan birisi de pandas dataframe to_sql metodu. to_csv’ye çok alışığız, bu […]
MySQL Upsert İçin Alternatif Bir Yaklaşım

![]()
İş ihtiyacını karşılayacak şekilde temiz, doğru, güvenilir, istenen formatta, gıcır gıcır veri tabanında bekleyen bir veriyi kim sevmez ki 🙂 Mesela Mysql’de. Elbette herkes sever ancak bunu sağlayacak olan sağlam işleyen veri akış hatlarıdır (data pipelines). Veri akış hatları bilgi sistemi kullanan küçük veya büyük her örgüt için olmazsa olmaz bir zorunluluk haline geldi. Artık […]