Giriş
Veri gölleri, büyük veri analizi ve yönetimi için önemli bir bileşendir. Farklı kaynaklardan gelen yapılandırılmış ve yapılandırılmamış verilerin saklanmasına olanak tanır. Rocky Linux 9, stabil ve güvenilir bir işletim sistemi olarak veri gölü altyapısının kurulmasında kullanılabilir. Hadoop ve Spark ise veri işleme ve analizi için popüler araçlardır. Bu yazıda, Rocky Linux 9 üzerinde Hadoop ve Spark kullanarak bir veri gölü kurulumu adımları detaylandırılacaktır.
Rocky Linux 9 Kurulum Aşaması
Rocky Linux 9, öncelikle uygun bir ortamda kurulmalıdır. Kurulum için sunucunun önyükleme yapabileceği bir Rocky Linux 9 ISO dosyası temin edilmelidir. Kurulum adımlarında, dil ve zaman dilimi ayarlarının yapılması, disk partition işlemleri ve ağ ayarları tamamlanmalıdır. Kurulumdan sonra, sistem güncellemeleri için terminal üzerinden aşağıdaki komut kullanılabilir:
“`
sudo dnf update
“`
Java JDK Kurulumu
Hadoop ve Spark, Java ile çalıştırıldığından dolayı Java Development Kit (JDK) kurulumuna ihtiyaç vardır. JDK’nin kurulumu için aşağıdaki komutlar kullanılmalıdır:
“`
sudo dnf install java-11-openjdk-devel
“`
Kurulumdan sonra Java sürümünü kontrol etmek için:
“`
java -version
“`
Hadoop Kurulumu
Hadoop’un kurulumu, öncelikle gerekli yazılımların ve kütüphanelerin indirilmesi ile başlar. Hadoop, Apache’nin resmi web sitesinden indirilebilir. Aşağıdaki komut ile Hadoop’un son sürümü indirilip kurulu dizine çıkarılmalıdır:
“`
wget https://downloads.apache.org/hadoop/common/hadoop-3.x.x/hadoop-3.x.x.tar.gz
tar -xzvf hadoop-3.x.x.tar.gz
sudo mv hadoop-3.x.x /usr/local/hadoop
“`
Hadoop Ortam Değişkenleri
Hadoop’un düzgün çalışabilmesi için bazı ortam değişkenlerinin ayarlanması gerekmektedir. Bu ayarlar genellikle `~/.bashrc` dosyasına eklenir. Aşağıdaki satırlar eklenmelidir:
“`
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
“`
Değişikliklerin etkili olması için:
“`
source ~/.bashrc
“`
Hadoop Konfigürasyonu
Hadoop’un yapılandırma dosyaları `etc/hadoop` dizininde bulunmaktadır. `core-site.xml`, `hdfs-site.xml`, ve `mapred-site.xml` dosyaları uygulanacak konfigürasyon ayarlarını içermektedir. Aşağıdaki örnek, temel bir HDFS yapısı için gerekli ayarları göstermektedir:
– `core-site.xml` ayarları:
“`xml
“`
– `hdfs-site.xml` ayarları:
“`xml
“`
HDFS Başlatma
Hadoop’un HDFS (Hadoop Distributed File System) bileşeni, aşağıdaki komutlar ile başlatılmalıdır:
“`
hdfs namenode -format
start-dfs.sh
“`
HDFS’nin çalıştığını kontrol etmek için tarayıcı aracılığıyla `http://localhost:9870` adresi ziyaret edilebilir.
Spark Kurulumu
Spark kurulumu için öncelikle Spark’ın resmi web sitesinden indirilmesi gerekmektedir. Aşağıdaki adımlar ile gerekli dosya indirilebilir ve çıkarılabilir:
“`
wget https://download.apache.org/spark/spark-3.x.x/spark-3.x.x-bin-hadoop3.x.tgz
tar -xzvf spark-3.x.x-bin-hadoop3.x.tgz
sudo mv spark-3.x.x-bin-hadoop3.x /usr/local/spark
“`
Spark Ortam Değişkenleri
Spark’ın da çalışabilmesi için ortam değişkenlerinin ayarlanması gerekmektedir. `~/.bashrc` dosyasına aşağıdaki satırlar eklenmelidir:
“`
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin
“`
Değişikliklerin etkili olması için:
“`
source ~/.bashrc
“`
Spark Konfigürasyonu
Spark, `conf` dizini altında bir `spark-defaults.conf` dosyası ile yapılandırılabilir. Örnek bir ayar şu şekilde olabilir:
“`
spark.master local[]
spark.app.name MySparkApp
“`
Spark’ın Çalıştırılması
Spark uygulamaları, `spark-submit` komutu ile çalıştırılabilir. Test amaçlı bir uygulama çalıştırmak için aşağıdaki komut kullanılabilir:
“`
spark-submit –class org.apache.spark.examples.SparkPi $SPARK_HOME/examples/jars/spark-examples_2.12-3.x.x.jar 100
“`
Veri Gölü Yönetimi
Hadoop ve Spark kurulumunun tamamlanmasının ardından, veri gölünde kullanılacak verilerin yönetimi sağlanmalıdır. HDFS üzerinde veri yüklemek için `hdfs dfs -put localfile.txt /path/in/hdfs` komutu kullanılabilir. Spark ile verileri işlemek için, RDD (Resilient Distributed Dataset) veya DataFrame API kullanılabilir.
Sonuç
Rocky Linux 9 üzerinde Hadoop ve Spark kullanarak bir veri gölü kurmak, büyük veri analizi için uygun bir temel sağlamaktadır. Gerekli adımlar izlendiğinde, veri gölünün işlevselliği artırılabilir ve veri analiz süreçleri daha verimli hale getirilebilir. Bu süreç, veri bilimi alanında daha derin analizler yapma imkanı sunar.