Skip to content

Apache Spark

Bu makalede

Bilgi

Apache Spark, büyük veri işleme için güçlü ve hızlı bir motor olup gerçek zamanlı veri akışı işleme, makine öğrenmesi ve veri tabanları analizi gibi çeşitli görevlerde kullanılabilir. Spark, Scala, Java, Python ve R dahil olmak üzere birçok programlama dilinde esnek bir API sağlar.

Apache Spark'ın Ana Özellikleri

  • Yüksek Performans: Spark, dağıtık veri işleme ve optimize edilmiş algoritmalar kullanarak geleneksel çözümlere kıyasla büyük veri hacimlerinden daha hızlı işlem yapmasını sağlar.
  • Dağıtılabilirlik: Spark, birden fazla düğüm kümesini kullanan sistemlerde çalışabilir, bu da ihtiyaç duyduğunuz kadar veri işleme ölçeğini artırmanızı sağlar.
  • Çeşitli API'lar: Spark, farklı senaryolar ve geliştirme ekipleri için uygun hale getirmek üzere çeşitli programlama dillerinde API'lar sunar.
  • Farklı Veri Türleri Desteği: Spark, yapılandırılmış veri (tablolar), yapısız veri (metin, görüntü) ve yarı yapılandırılmış veri (JSON) dahil olmak üzere farklı veri türlerini ele alabiliyor.
  • Spark GraphX: Büyük grafikler üzerinde işlemleri mümkün kılan bir grafik API'si.

Çalıştırma Özellikleri

ID Uyumlu OS VM BM VGPU GPU Min CPU (Çekirdekler) Min RAM (GB) Min HDD/SSD (GB) Aktif
204 Ubuntu 22.04 + + + + 6 8 160 Evet
  • Kontrol paneline erişim: https://spark{Server_ID_from_Invapi}.hostkey.in
  • Kontrol paneli ve OS'nin kurulum süresi yaklaşık 15 dakika.

Apache Spark İndirme Sonrası Başlangıç

Sipariş ödedikten sonra, sunucu kullanıma hazır olduğunda bir e-posta bildirimi (kayıt sırasında belirtilen e-posta adresine) alacaksınız. Bu bildirim VPS IP adresi ve bağlantı için giriş bilgilerini içerir. Şirket müşterilerimiz ekipmanlarını sunucu kontrol paneli ve API aracılığıyla yönetmektedir - Invapi.

Sunucu kontrol panelinin Info >> Tags sekmesinde veya sunucunuz kullanıma hazır olduğunda gönderilen e-postada bulunan kimlik bilgilerini bulabilirsiniz:

  • Apache Airflow web arayüzüne erişim bağlantısı: webpanel etiketi içinde;
  • Oturum açma ve Şifre: sunucu kullanıma hazır olduğunda gönderilen e-postada verilmektedir.

Apache Spark'ın Ayarlanması

Spark, yerel bir bilgisayarda veya dağıtık bir ortamda başlatılabilir. :fontawesome-solid-tags: *webpanel* bağlantısına tıklamadan önce şunları yapmanız gerekir:

Sunucuya SSH üzerinden bağlanın:

ssh root@<sunucu_ip>

Sonra bileşenleri başlatmak bölümündeki tablodaki komut kullanarak gerekli uygulamayı başlatın.

aksi takdirde, bağlantıya tıklamak 502 (Bad Gateway) hatası gösterecektir.

Bileşenlerin Başlatılması

Spark Uygulaması, Ayrıcalıklı Master, Ayrıcalıklı Çalışan ve Geçmiş Sunucusu gibi çeşitli Spark bileşenlerini bir web arayüzü kullanarak başlatabilirsiniz. Aşağıdaki tablodan komutlar kullanılabilir:

Ad Yerel Adres ve Port Dış Adres Başlatma Komutu
Uygulama localhost:4040 https://spark{Server_ID_from_Invapi}.hostkey.in /root/spark-3.5.3-bin-hadoop3/bin/./spark-shell
Ayrıcalıklı Master localhost:8080 https://spark{Server_ID_from_Invapi}.hostkey.in/master /root/spark-3.5.3-bin-hadoop3/sbin/./start-master.sh
Ayrıcalıklı Çalışan localhost:8081 https://spark{Server_ID_from_Invapi}.hostkey.in/worker /root/spark-3.5.3-bin-hadoop3/sbin/./start-master.sh spark://hostname:port
Geçmiş Sunucusu localhost:18080 https://spark{Server_ID_from_Invapi}.hostkey.in/history mkdir /tmp/spark-events
/root/spark-3.5.3-bin-hadoop3/sbin/./start-history-server.sh

Spark bileşenlerini başlatmak için kullanılan komutların, kullanılan sürümden farklı olabileceğini unutmayın. Yukarıdaki örnekler Spark sürümü 3.5.3 kullanıyor. Spark güncellemesi yapıldığında, komutlardaki yollara göre ayarlamalar yapmanız gerekecektir. En doğru bilgi için lütfen her zaman Spark belgelerine bakın. Bileşeni kontrol etmek için sunucuya SSH ile bağlanın ve aşağıdaki komutu girin:

ls /root
/root dizinindeki içeriği listeleyen bu komutun çıktısı, spark adlı dizinin de dahil olmak üzere /root klasöründe bulunan Spark sürümünü gösterecektir.

Spark bileşenleri başlatıldıktan sonra, web arayüzlerine dış adreslerden erişim sağlayabilirsiniz. Örneğin Spark Uygulama arayüzü örneği:

Bu örnekte, https://spark{Server_ID_from_Invapi}.hostkey.in adresinde erişilebilen Spark Uygulama arayüzü gösterilmektedir. Bu arayüz, yürütülen görevler, işlem aşamaları, bellek kullanımı ve diğer önemli metrikler hakkında bilgi sağlar.

Başka bir makineye bağlandığınızda, bu arayüzdeki diğer Spark bileşenlerine (örneğin Ayrıcalıklı Master veya Çalışan) bağlantılar işe yaramayabilir. Bu durum, güvenlik ayarlarından kaynaklanmaktadır: bileşenlerin yerel çalışması için yapılandırıldığı ve web adıma erişilebilen yalnızca internet tarayıcısı aracılığıyla sunulan arayüz vardır.

Bu yapılandırmaların değiştirilmesi ve tüm bileşenlere dış erişim sağlamak için aşağıdaki adımlar izlenmelidir:

  1. /root/nginx dizinindeki komutla mevcut Docker konteynerini durdurun ve kaldırın (docker compose up down).
  2. /etc/environment dosyasındaki SPARK_LOCAL_IP="127.0.0.1" satırını silin.

Bu değişiklikler yapıldıktan sonra, Spark web arayüzü SSL sertifikası olmadan beyaz IP adresinden erişilebilir hale gelir. Bu yapılandırmalar ayrıca işlev sırasında bileşenler arasında ortaya çıkabilecek bağlantı sorunlarını da çözebilir.

Not

Spark kümesini yapılandırdığınızda güvenlik seviyesi azalır. Bu sadece gerekli olduğunda ve güvenli bir ağ ortamında kullanılmalıdır. Bu yapılandırmayı kullanırsanız, Spark içinde SSL bağlantılarını yapılandırmak veya kümeyi korumak için diğer güvenlik önlemleri almak gibi ek adımlar atmanızı öneririz.

Yolların Özelleştirilmesi

  1. /root/nginx dizinindeki komutla Docker konteynerini durdurun (docker compose up down).
  2. Nginx yapılandırma dosyasını düzenleyin: /data/nginx/user_conf.d/spark{Server_ID_from_Invapi}.hostkey.in.conf.
  3. /root/nginx dizinindeki komut kullanarak Docker konteynerini yeniden başlatın (docker compose up -d).

Not

Apache Spark temel ayarları hakkında detaylı bilgi için geliştirici belgelerine bakabilirsiniz.

Apache Spark'ı API Kullanarak Sunucu Sipariş Etme

Bu yazılımı API kullanarak yüklemek için bu talimatları izleyin.