Apache Spark, büyük veriler için bu açık kaynaklı analitik motorudur. Bu, büyük veri iş yükleriyle başa çıkan organizasyonlar için oyunu değiştirdi. Spark hızlı. Gerçekten hızlı. Bellek içi işleme kullanarak, geleneksel çerçevelerin çok önüne geçiyor - bellek işlemleri için MapReduce'dan 100 kat daha hızlı. Disk tabanlı işlemler mi? Hala 10 kat daha hızlı.
Spark'ın Öne Çıkan Özellikleri
Spark size sana bu bütün ekosistemi sunuyor:
Hız: Bellek içi motor, veri işleme sürecinde adeta uçar.
Çeşitlilik: Her türlü şeyi yapar—SQL, makine öğrenimi, gerçek zamanlı şeyler, grafikler
Birleştirilmiş Platform: Farklı veri kaynaklarıyla uyumlu çalışır
Dağıtık İşleme: Büyük veri kümeleri için işleri kümeler arasında dağıtır
Zengin Kütüphaneler: Makine öğrenimi için MLlib var. Spark Streaming de var. Ve grafik analitiği için GraphX.
Spark Mimarisinin İçinde
Apache Spark'ın temel bileşenleri şunlardır:
Spark Driver: Kodunuzu işler haline getiren tüm bu planlayıcılara ve yöneticilere sahiptir.
Yürütücüler: Bunlar gerçek hesaplamaları yapar.
Küme Yöneticileri: Bağımsız, YARN veya başka bir şey olabilir. İşçi düğümlerini alırlar.
Worker Nodes: Ağır yükü taşıyan sunucular
PySpark UDF'leri: Spark'ı Kendinize Göre Yapma
Spark, Kullanıcı Tanımlı Fonksiyonlar ile genişletmenizi sağlar. Oldukça hoş bir şey. Bu UDF'ler PySpark'ta, yerleşik fonksiyonların yetersiz kaldığı durumlarda özel mantık oluşturmanıza olanak tanır.
Buna benzer bir UDF oluşturun:
python
pyspark.sql.functions modülünden udf içe aktar
pyspark.sql.types'dan StringType içe aktar
Bir Python fonksiyonu tanımla
def convert_case(text):
return text.upper() if text else None
UDF'ler mükemmel değildir. Serileştirme nedeniyle yerleşik olanlardan daha yavaştırlar. Hız önemliyse vektörleştirilmiş UDF'leri deneyin. Onları dikkatli kullanın.
Spark'ı spark-defaults.conf ile Ayarlamak
Spark'ı bu spark-defaults.conf dosyası aracılığıyla kontrol edebilirsiniz. Bu sadece özellik-değer çiftleridir:
İyi ayarlamanın bellekle ilgili şeyleri içerdiği görünüyor. Bölüm ayarları da. Çöp toplama çok önemli olabilir. Serileştirme seçenekleri performansı artırabilir.
Spark sürekli evrim geçiriyor. Veri dünyasında büyük bir yere sahip. Mükemmel değil, ama oldukça önemli.
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
Apache Spark Nedir?
Apache Spark, büyük veriler için bu açık kaynaklı analitik motorudur. Bu, büyük veri iş yükleriyle başa çıkan organizasyonlar için oyunu değiştirdi. Spark hızlı. Gerçekten hızlı. Bellek içi işleme kullanarak, geleneksel çerçevelerin çok önüne geçiyor - bellek işlemleri için MapReduce'dan 100 kat daha hızlı. Disk tabanlı işlemler mi? Hala 10 kat daha hızlı.
Spark'ın Öne Çıkan Özellikleri
Spark size sana bu bütün ekosistemi sunuyor:
Spark Mimarisinin İçinde
Apache Spark'ın temel bileşenleri şunlardır:
PySpark UDF'leri: Spark'ı Kendinize Göre Yapma
Spark, Kullanıcı Tanımlı Fonksiyonlar ile genişletmenizi sağlar. Oldukça hoş bir şey. Bu UDF'ler PySpark'ta, yerleşik fonksiyonların yetersiz kaldığı durumlarda özel mantık oluşturmanıza olanak tanır.
Buna benzer bir UDF oluşturun:
python pyspark.sql.functions modülünden udf içe aktar pyspark.sql.types'dan StringType içe aktar
Bir Python fonksiyonu tanımla
def convert_case(text): return text.upper() if text else None
UDF Olarak Kayıt Ol
upper_case_udf = udf(convert_case, StringType())
DataFrame'e Uygula
df = df.withColumn("upper_text", upper_case_udf(df.text_column))
UDF'ler mükemmel değildir. Serileştirme nedeniyle yerleşik olanlardan daha yavaştırlar. Hız önemliyse vektörleştirilmiş UDF'leri deneyin. Onları dikkatli kullanın.
Spark'ı spark-defaults.conf ile Ayarlamak
Spark'ı bu spark-defaults.conf dosyası aracılığıyla kontrol edebilirsiniz. Bu sadece özellik-değer çiftleridir:
spark.master=yarn spark.executor.memory=4g spark.driver.memory=2g spark.executor.cores=2 spark.sql.shuffle.partitions=200
İyi ayarlamanın bellekle ilgili şeyleri içerdiği görünüyor. Bölüm ayarları da. Çöp toplama çok önemli olabilir. Serileştirme seçenekleri performansı artırabilir.
Spark sürekli evrim geçiriyor. Veri dünyasında büyük bir yere sahip. Mükemmel değil, ama oldukça önemli.