Pratik Bilgiler ve Komutlar-3

Merhaba “Pratik Bilgiler, Pratik Komutlar” yazı serisinin 3.’süne hoş geldiniz. Bu serinin amacı karşılaştığımız hata ver zorlukları pratik ve hızlı bir şekilde aşmak. Örneğin mysql root şifremi unuttum ya da bilmiyorum ne yapmalıyım? sorusunun cevabı “MySQL root şifresini nasıl sıfırlarız?” sorusunda. Python listesini filtrelemek Apache Spark Dataframe string timestamp tür dönüşümü MySQL root şifresini nasıl […]
Python ile Veri Bilimi Çalışma Ortamı Kurmak (Python Jupyter ve Paket Kurulumu)

Merhaba bu yazımızda veri bilimine yeni başlayanlar için başlangıç çalışma ortamını oluşturacağız. Amacımız python jupyter notebook kullanabilmek ve numpy, pandas, sklearn ve matplotlib gibi temel paketleri yüklemek. 1. Python yüklemek Python şuan 3.7.X sürümünde ancak ben biraz geriden takip etmenizi ve daha kararlı sürüm olan 3.6.X’i kullanmanızı öneriyorum. Kendim 3.6.8 kullanıyorum, bu yazıda da bu […]
IntelliJ IDEA ile Apache Spark Projesini Uzak YARN Cluster Üzerinde Çalıştırmak-1/2

1. Giriş Merhabalar. Uygulama geliştirirken geliştirme(dev), test ve canlı (prod) gibi farklı farklı ortamlar kullanırız. Farklı ortamlarda çalışırken bazı ayarlamalar yapmamız gerekir. Şayet hızlı bir şekilde uygulamayı çıkarayım, geliştirme, canlı vb. uğraşmayayım diyorsanız bu yazı size göre. Bu yazıda Windows bilgisayarımızı driver olarak kullanarak IntelliJ IDEA ile canlı Hadoop Cluster üzerinde kodlarımızı geliştirme esnasında çalıştıracağız. […]
IntelliJ IDEA ile Apache Spark Projesini Uzak YARN Cluster Üzerinde Çalıştırmak-2/2

Merhaba. Yazı serimizin ikincisine devam ediyoruz. Bir önceki ilk yazımızda konuya giriş yapmıştık. Hatırlayalım, amacımız Spark uygulamasını Windows bilgisayarımızda kurulu IntelliJ ile uzak hadoop cluster üzerinde geliştirmekti. IntelliJ ile devam ediyoruz. 4. IntelliJ Spark Uygulaması: Maven Projesi Oluşturmak Şimdi uygulamamızı yazmaya başlayacağız. Bunun için IntelliJ’i başlatalım. Intellij üzerinden yeni proje (Create New Project) diyoruz. Bir […]
SQL Sorgularının Python Pandas Dataframe Karşılıkları-3 (UPDATE, DELETE)

Merhaba serimizin üçüncü yazısında SQL update ve delete operasyonlarını pandas ile nasıl yaparız onu göreceğiz. Veri kaynaklarına ilk yazımızdan ulaşabilirsiniz. 1. UPDATE Verimizde bazı satırlarda meslek bilgisi boştu gelin onu güncelleyerek dolduralım. SQL UPDATE operasyonu tehlikeli bir iştir. Şayet filtreyi iyi ayarlamaz iseniz istenmeyen yerleri istenmeyen bilgilerle değiştirirsiniz. O yüzden ben UPDATE sorgusunda kullanacağım filtreyi […]
SQL Sorgularının Python Pandas Dataframe Karşılıkları-2 (GROUP BY, ORDER BY)

Merhabalar. Yaygın kullanılan SQL sorgularının Python pandas dataframe karşılıklarını bir örnek üzerinden paylaşmaya devam ediyoruz. Serimizin ilki olan bir önceki yazımızda SELECT ve WHERE cümlecikleri ile ilgili örnek yapmıştık. Bu yazıda kullanılacak veri kaynaklarına (sql ve pandas) ulaşmak için lütfen ilk yazıya müracaat ediniz. 1. GROUP BY GROUP BY özellikle veri keşfinde çok sık kullanılan […]
SQL Sorgularının Python Pandas Dataframe Karşılıkları (PANDAS SQL)-1 (SELECT, WHERE)

Merhabalar. Bu yazımızda yaygın kullanılan SQL sorgularının Python pandas dataframe karşılıklarını (Pandas SQL) bir örnek üzerinden paylaşmaya çalışacağım. Veri biliminin en zor ve meşakkatli aşaması veri hazırlığıdır. Hem SQL hem de pandas kendi alanlarında veri hazırlığında çok önemli rol oynarlar. Eğer bu ikisinden birini çok iyi bilmiyorsanız (Pythonistler için söylüyorum, sql yanındaki python değil R, […]
Pratik Bilgiler ve Komutlar-2

Scala’da boşluklardan kelimeleri ayırma Scala ile dosya nasıl okunur? Scala dosya okuma Scala ile dosyaya yazma işlemi Scala uygulamasına komut satırından argüman gönderme Bir dizinde kaç dosya var Python ile nasıl öğrenilir? Elasticsearch Curl Query Örneği Ubuntu üzerine sbt kurmak Ubuntu server üzerinde root kullanıcısına geçiş yapmak Jupyter notebook geri plan – jupyter arkaplan – jupyter […]
Pratik Bilgiler ve Komutlar-1

Merhaba pratik bilgiler ve pratik komutlar yazı dizisindeki amacımız herkese her an lazım olabilecek pratik bilgiler paylaşmaktır. Bu yazı dizisi oluşurken yine kendi ihtiyaçlarımdan yola çıktım. Çok sık veya seyrek ihtiyaç duyduğum bilgileri not aldım ve sizlere de faydalı olabileceğini düşündüm. Baştan sona bir bütün olarak belki okumazsınız ama muhtemelen arama motorları ile bu yazı […]
Python Pandas Dataframe’i Elasticsearch’e Yazmak

Merhabalar bu yazımızda Python Pandas Dataframe verisini Python kullanarak Elasticsearch’e yazacağız. Şükür ki Python çok gelişmiş ve zengin bir dil. Birileri biz kullanalım diye kütüphane yazmış, biz de bunu kullanarak dataframe’i Elasticsearch’e yazacağız. Bu yazıyı takip etmek için bazı ön koşullarımız olacak. Elasticsearch 7.9.0 kurulu ve 9200 portundan erişilebilir durumdadır. Örneğin, benim elasticsearch sunucum aşağıdaki […]
Sık Kullanılan Hadoop HDFS Komutları

Giriş Merhabalar bu yazımızda en sık kullanılan Hadoop hdfs komutlarına örnekler vereceğiz. Öncelikle belirtmem gerekir ki nasılki linux dünyasının süper kullanıcısı root ise hdfs dünyasının da süper kullanıcısı hdfs kullanıcıdır. Komutlar içinde sık sık hdfs kullanacağız. Bu hdfs’lerin bazısı kullanıcı bazısı da komuttur. Lütfen karıştırmayalım. Erişim yetkisi hatası almamak adına komutların başında bazen sudo -u hdfs […]
Python Pandas ile Aynı Anda Birden Fazla CSV Dosyasını Okumak

Bazen bir dizin içindeki tüm csv uzantılı dosyaları okuyup tek bir dataframe yapmak isteyebiliriz. Apache Spark bunu rahatlıkla yapabilirken pandas read_csv bunu tek başına yapamıyor maalesef. Basit okumada mutlaka csv uzantılı dosya ismini belirtmemiz gerekiyor. Aşağıda dosya ismini belirtmeden bir dizindeki csv dosyalarını okuyup tek bir pandas dataframe yapma ile ilgili bir örnek paylaşacağım. Ancak […]
Docker Sık Kullanılan Komutlar-2

Merhabalar serinin 2. yazısında sık kullandığım docker komutlarını eklemeye devam ediyorum. İlk yazıya buradan erişebilirsiniz. Docker Network Kavramı Docker Container IP Adresini Öğrenmek Docker Network (Sanal Ağ) Oluşturmak Docker Network Listeleme Docker Network Bilgilerini İnceleme Çalışan Bir Docker Container’ı Bir Network’e Bağlamak Docker Container Adını Değiştirmek Askıda Kalan Imajları Silmek Docker’ı sudo ile çalıştırmaktan kurtulmak […]
CentOS7’de yum ile yüklenen java home işlemleri

Java nereye yüklü JAVA_HOME neresi zaman zaman siz de karıştırıyor olabilirsiniz. Bu yazıda CentOS7 üzerine yum ile yüklenen java’nın home diznini öğrenecek ve kalıcı olarak JAVA_HOME’u set edeceğiz. java home dizini: Kalıcı olarak set etme: en alt satıra Ctrl+O -> Enter -> Ctrl+X Ayarların geçerli olması için: Ayarlamanın kontrolü: 0
Docker Sık Kullanılan Komutlar-1

Merhaba bu yazımda sık sık kullandığım docker komutlarını derleyeceğim. NGINX Örneği ile Docker Container Yaratma ve Çalıştırma Docker Container Listelemek Çalışan Docker Container Özelliklerini Yazdırmak Docker Container Durdurmak Docker Container Kaldırmak (rm) Docker Images Listeleme Ana Makineden Docker Container’a Dosya Kopyalamak Docker Container’dan Ana Makineye Dosya Kopyalamak Çalışmayanlar dahil Docker Container’ları Listelemek Docker Container Komut […]
HDP-Sandbox içinde YARN’a Daha Fazla Kaynak Tahsis Etmek

Merhabalar. Bu yazımızda Hortonworks’ün Hadoop sürümü olan HDP 2.6.4 Sandbox üzerinde YARN’a daha fazla kaynağı nasıl tahsis edeceğimizi göreceğiz. Bu yazımızın amacı Sandbox ile uygulama yaparken en fazla bir YARN uygulaması çalıştırabilecek kadar kısıtlı kaynağa (özellikle de RAM) sahip omasıdır. Örneğin Sandbox’ın varsayılan ayarlarında YARN belleği 3000 MB ayrılmış. Biz bu kısıtlı kaynak ile hemSpark […]
Apache Spark ile Parquet Formatında Veri Okuma (Python)

Merhaba bu yazımızda parquet uzantılı bir dosyanın pyspark ile nasıl okunacağını göreceğiz. Bu yazıyı yazmamızın sebebi pyspark ile parquet dosyası okumanın, standart dataframe API’si ile csv gibi yaygın formatları okumaktan farklılık göstermesidir. Bu çalışma esnasında kullandığım ortamlar: İşletim sistemi: Windows 10 64 bit Pro IDE: Jupyter Notebook (Anaconda ile kuruldu) Spark 2.3.1 Dil: Python 3 […]
Apache Spark ile Parquet Formatında Veri Yazma ve Okuma (Scala)

Merhaba. Bu yazımızda Apache Spark ile csv uzantılı bir veri dosyasını okuyup parquet uzantılı olarak diske kaydedeceğiz ve kaydettiğimiz parquet dosyasını tekrar Spark ile okuyacağız. Spark, birçok formatta veriyi okuyup yazabiliyor. Parquet, csv dosyalarına göre daha az yer kapladığı gibi okuma performansı da daha yüksek. Ayrıca okuma yaparken inferSchema veya header gibi ilave seçenekler kullanmıyoruz. Bu bilgiyi parquet formatından […]
Python Pandas float_format

Merhaba. Pandas dataframe çıktılarını incelemek için çoğu zaman df.head() metodunu kullanırız. Ancak bazen ondlıklı sayıların gösteriminde noktadan sonra çok fazla rakam olur ve bu çıktının okunup anlaşılmasını güçleştirir. Daha basit ve sade bir çıktı için ondalıklı sayıları formatlayabiliriz. Bu yazımızla bununla ilgili basit bir örnek yapacağız. Basit bir pandas dataframe oluşturalım: Yukarıdaki dataframe içinde noktadan […]
Python Pandas ile Aynı Anda Birden Fazla Excel Dosyasını Okumak

Dosya veri kaynakları arasında csv uzantılı dosyalar kadar excel dosyaları da bulunmaktadır. Pandas kütüphanesi her ne kadar bize bir .xls veya .xlsx uzantılı excel dosyalarını okumamıza imkan tanısa da bir dizin içinde birden fazla excel dosyasını okumak gerektiğinde iş bu kadar basit olmuyor. Birden çok excel dosyasını aşağıdaki gibi okuyabiliriz. yukarıda all_data ile her for […]