Azure HDInsight’ta Apache Spark nedir?

Apache Spark, büyük veri analizi uygulamalarının performansını artırmak üzere bellek içi işlemeyi destekleyen paralel bir işleme çerçevesidir. Azure HDInsight 'ta Apache Spark, Microsoft 'un bulutta Apache Spark Microsoft uygulamasıdır ve Azure 'daki çeşitli Spark tekliflerinden biridir.

  • Azure HDInsight 'ta Apache Spark Spark kümeleri oluşturmayı ve yapılandırmayı kolaylaştırarak Azure 'da tam Spark ortamını özelleştirmenize ve kullanmanıza olanak tanır.

  • Azure SYNAPSE Analytics 'Teki Spark havuzları , Azure 'daki analitik Öngörüler için verilerin yüklenmesine, modellenmesine, işlenmesine ve dağıtılmasına olanak tanımak üzere yönetilen Spark havuzlarını kullanır.

  • Apache Spark Azure Databricks , kullanıcılarınızın birden çok veri kaynağından veri okuyup daha sonra öngörülere erişmesini sağlayan etkileşimli bir çalışma alanı sağlamak için Spark kümelerini kullanır.

  • Azure Data Factory Spark etkinlikleri , isteğe bağlı veya önceden var olan Spark kümelerini kullanarak veri işlem hattınızda Spark Analytics kullanmanıza olanak sağlar.

Azure HDInsight 'ta Apache Spark, verilerinizi Azure 'da depolayıp işleyebilirsiniz. hdınsight 'ta spark kümeleri, Azure Blob depolama, Azure Data Lake Storage 1.veya Azure Data Lake Storage 2.ile uyumludur ve mevcut veri depolarınız üzerinde Spark işleme uygulamanıza olanak tanır.

Spark: birleşik çerçeve

Azure HDInsight 'ta Apache Spark kullanmaya başlamak için, HDInsight Spark kümeleri oluşturmak üzere Öğreticimiziizleyin.

Apache Spark ve Azure ile nasıl etkileşim kurduğu hakkında bilgi için aşağıdaki makaleyi okumaya devam edin.

Bileşenler ve sürüm bilgileri için bkz. Azure HDInsight 'ta bileşenler ve sürümler Apache Hadoop.

Apache Spark nedir?

Spark, bellek içi küme hesaplama için temel bileşenleri sunar. Bir Spark işi, verileri belleğe yükleyip önbelleğe alarak tekrar tekrar sorgulayabilir. Bellek içi bilgi işlem, Hadoop gibi disk tabanlı uygulamalardan daha hızlıdır, bu da Hadoop Dağıtılmış dosya sistemi (II) aracılığıyla verileri paylaşır. Spark ayrıca Scala programlama diliyle tümleştirilerek yerel koleksiyonlar gibi dağıtılmış veri kümelerini işlemenizi sağlar. Her şeyi harita olarak yapılandırmaya gerek olmadığı için işlem sayısı azalmış olur.

geleneksel MapReduce vs. Spark

HDInsight’ta Spark kümeleri, tam olarak yönetilen bir Spark hizmeti sunar. HDInsight'ta bir Spark kümesi oluşturmanın avantajları burada listelenmiştir.

Özellik Açıklama
Kolay oluşturma Azure portalı, Azure PowerShell veya HDInsight .NET SDK kullanarak dakikalar içinde HDInsight’ta yeni bir Spark kümesi oluşturabilirsiniz. Bkz. HDInsight 'ta Apache Spark kümesiyle çalışmaya başlama.
Kullanım kolaylığı HDInsight 'ta Spark kümesi, Jupyter not defterlerini ve Apache Zeppelin not defterlerini içerir. Etkileşimli veri işleme ve görselleştirme için bu not defterlerini kullanabilirsiniz. Bkz. Apache Spark Ile Apache Zeppelin not defterlerini kullanma ve verileri yükleme ve sorguları bir Apache Spark kümesinde çalıştırma.
REST API'leri HDInsight 'ta Spark kümeleri, işleri uzaktan göndermek ve izlemek için REST API tabanlı bir Spark iş sunucusu olan Apache Livy' i içerir. Bkz. bir HDInsight Spark kümesine uzak işleri göndermek için Apache Spark REST API kullanma.
Azure Depolama için destek hdınsight 'ta Spark kümeleri, birincil depolama alanı veya ek depolama alanı olarak Azure Data Lake Storage 1./Gen2 kullanabilir. Data Lake Storage 1. hakkında daha fazla bilgi için bkz. Azure Data Lake Storage 1.. Data Lake Storage 2. hakkında daha fazla bilgi için bkz. Azure Data Lake Storage 2..
Azure hizmetleriyle tümleştirme HDInsight’ta Spark kümesi, Azure Event Hubs için bir bağlayıcı ile birlikte sunulur. Event Hubs kullanarak akış uygulamaları oluşturabilirsiniz. Spark 'ın bir parçası olarak zaten bulunan Apache Kafka dahil.
Üçüncü taraf IDE’lerle tümleştirme HDInsight, bir HDInsight Spark kümesinde uygulama oluşturup göndermek için faydalı olacak birkaç IDE eklentisi sağlar. Daha fazla bilgi için bkz. Azure TOOLKIT for INTELLIJ fikir kullanımı, vscode Için Spark & Hive araçları kullanmave Azure Toolkit for Eclipse kullanma.
Eş zamanlı sorgular HDInsight’ta Spark kümeleri, eş zamanlı sorguları destekler. Bu özellik, bir kullanıcıdan veya çeşitli kullanıcılar ve uygulamalardan gelen birden çok sorgunun aynı küme kaynaklarında paylaşılmasını sağlar.
SSD’de önbelleğe alma Bellekte veya küme düğümlerine ekli SSD’lerde verileri önbelleğe almayı için seçebilirsiniz. Bellekte önbelleğe almak en iyi sorgu performansını sağlar ancak pahalı olabilir. SSD’lerde önbelleğe alma, veri kümesinin tamamının belleğe sığması için gerekli olan boyutta bir küme oluşturmak zorunda kalmadan sorgu performansını artırmak için harika bir seçenek sağlar. Bkz. Azure HDıNSIGHT GÇ önbelleğini kullanarak Apache Spark iş yüklerinin performansını geliştirme.
BI araçları ile tümleştirme HDInsight’ta Spark kümeleri, veri analizlerine yönelik olarak BI araçları için Power BI gibi bağlayıcılar sağlar.
Önceden yüklenmiş Anaconda kitaplıkları HDInsight’ta Spark kümeleri önceden yüklenmiş Anaconda kitaplıkları ile gelir. Anaconda makine öğrenimi, veri analizi, görselleştirme vb. için 200 'e yakın bir kitaplık sağlar.
Uyumluluk HDInsight, otomatik ölçeklendirme özelliğiyle küme düğümü sayısını dinamik olarak değiştirmenize olanak sağlar. Bkz. Azure HDInsight kümelerini otomatik olarak ölçeklendirme. ayrıca, tüm veriler Azure Blob depolama, Azure Data Lake Storage 1.veya Azure Data Lake Storage 2.depolandığından, Spark kümeleri veri kaybı olmadan bırakılabilir.
SLA HDInsight’ta Spark kümeleri, 7 gün 24 saat destek ve % 99,9 çalışma süreli SLA ile birlikte sunulur.

HDInsight 'ta Apache Spark kümeleri varsayılan olarak kümelerde kullanılabilen aşağıdaki bileşenleri içerir.

HDInsight Spark kümeleri, Microsoft Power BI gibi bı araçlarından bağlantı için bir ODBC sürücüsü .

Spark kümesi mimarisi

HDInsight Spark mimarisi

Spark 'ın HDInsight kümelerinde nasıl çalıştığını anlayarak Spark bileşenlerini anlamak kolaydır.

Spark uygulamaları, bir kümede bağımsız işlem kümesi olarak çalışır. Ana programınızdaki (sürücü programı olarak adlandırılır) parlak bağlam nesnesi tarafından koordine edilir.

Mini bağlam, uygulamalar arasında kaynak veren çeşitli Küme Yöneticisi türlerine bağlanabilir. Bu küme yöneticileri Apache Mesos, Apache Hadoop YARN veya Spark kümesi Yöneticisi 'ni içerir. Spark, HDInsight'ta YARN küme yöneticisini kullanarak çalışır. Bağlantı kurulduktan sonra Spark, kümedeki çalışan düğümleri üzerinde yürütücüler devralır. Bunlar, uygulamalarınız için hesaplamalar yapan ve verileri depolayan işlemlerdir. Ardından, uygulama kodunuzu (SparkContext’e geçirilen JAR veya Python dosyaları ile tanımlanır) yürütücülerinize gönderir. Son olarak SparkContext, yürütücülere çalıştırılacak görevleri gönderir.

SparkContext, kullanıcının ana işlevini çalıştırır ve çalışan düğümlerinde çeşitli paralel işlemleri yürütür. Daha sonra SparkContext, işlemlerin sonuçlarını toplar. Çalışan düğümleri Hadoop Dağıtılmış dosya sistemine ve öğesinden verileri okur ve yazar. Çalışan düğümleri aynı zamanda dönüştürülmüş verileri Dayanıklı Dağıtılmış Veri Kümesi (RDD) olarak bellek içinde önbelleğe alır.

Mini bağlam, Spark yöneticisine bağlanır ve bir uygulamayı tek tek görevlerin yönlendirilmiş grafiğine (DAG) dönüştürmekten sorumludur. Çalışan düğümlerinde bir yürütücü işlemi içinde yürütülen görevler. Her uygulama kendi yürütücü süreçlerini alır. Bu, tüm uygulama sırasında kalır ve birden çok iş parçacığında görevleri çalıştırır.

HDInsight'ta Spark kullanım örnekleri

HDInsight'ta Spark kümeleri, aşağıdaki temel senaryolara olanak tanır:

Etkileşimli veri analizi ve BI

hdınsight 'ta Apache Spark, verileri Azure Blob Depolama, Azure Data Lake Gen1 veya Azure Data Lake Storage 2. depolar. İş uzmanları ve temel karar mekanizmaları, bu veriler üzerinde rapor çözümleyebilir ve raporlar oluşturabilir. ve analiz edilen verilerden etkileşimli raporlar oluşturmak için Microsoft Power BI kullanın. Analistler küme depolama alanındaki yapılandırılmamış/yarı yapılandırılmış verilerden başlayabilir, not defterlerini kullanarak veriler için bir şema tanımlayabilir ve ardından Microsoft Power BI kullanarak veri modelleri oluşturabilir. HDInsight 'ta Spark kümeleri de birçok üçüncü taraf BI aracını destekler. Tableau gibi, veri analistleri, iş uzmanları ve temel karar mekanizmalarının daha kolay olmasını sağlar.

Spark Machine Learning

Apache Spark Mllibile birlikte gelir. MLlib, HDInsight 'ta bir Spark kümesinden kullanabileceğiniz bir Spark üzerinde oluşturulmuş bir makine öğrenme kitaplığıdır. HDInsight 'ta Spark kümesi, Machine Learning için farklı türlerde paketlere sahip bir Python dağıtımı olan Anaconda 'yı da içerir. Ve Jupyter ve Zeppelin Not defterleri için yerleşik destek sayesinde, makine öğrenimi uygulamaları oluşturmak için bir ortamınız vardır.

Spark akış ve gerçek zamanlı veri çözümleme

HDInsight’ta Spark kümeleri, gerçek zamanlı analiz çözümleri oluşturmak için zengin destek sunar. Spark 'ta Kafka, flome, Twitter, ZeroMQ veya TCP yuvaları gibi birçok kaynaktan veri almak için bağlayıcılar zaten var. HDInsight 'ta Spark, Azure Event Hubs verileri almak için birinci sınıf destek ekler. Event Hubs Azure'da en yaygın şekilde kullanılan sıraya alma hizmetidir. Event Hubs için tam desteğe sahip olmak, HDInsight 'ta Spark kümelerinin gerçek zamanlı analiz işlem hattı oluşturmak için ideal bir platform olmasını sağlar.

Sonraki Adımlar

Bu genel bakışta, Azure HDInsight 'ta Apache Spark temel bir anlamış olursunuz. HDInsight 'ta Apache Spark hakkında daha fazla bilgi edinmek için aşağıdaki makaleleri kullanabilir ve bir HDInsight Spark kümesi oluşturup, örnek Spark sorgularını daha fazla çalıştırabilirsiniz: