Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Uyarı
- Spark 2.3 sürümüne kadar GÇ Önbelleği destekleniyordu ve Spark 2.4 (HDInsight 4.0) ve Spark 3.1.2 (HDInsight 5.0) sürümlerinde desteklenmeyecek.
Girdi/Çıktı Önbelleği, Azure HDInsight için veri önbelleğe alma hizmetidir ve Apache Spark işlerinin performansını artırır. G/Ç Önbelleği, Apache Spark kümelerinde çalıştırılabilen Apache TEZ ve Apache Hive iş yükleriyle de uyumlu çalışır. G/Ç Önbelleği, RubiX adlı bir açık kaynak önbellekleme bileşeni kullanır. RubiX, bulut depolama sistemlerinden verilere erişen büyük veri analizi altyapılarıyla kullanılmak üzere yerel bir disk önbelleğidir. RubiX, önbelleğe alma amacıyla işletim belleği ayırmak yerine Solid-State Sürücüleri (SSD) kullandığından önbelleğe alma sistemleri arasında benzersizdir. GÇ Önbelleği hizmeti, kümenin her çalışan düğümünde RubiX Meta Veri Sunucularını başlatır ve yönetir. Ayrıca, RubiX önbelleğinin saydam kullanımı için kümenin tüm hizmetlerini yapılandırır.
Çoğu SSD saniyede 1 GByte'tan fazla bant genişliği sağlar. İşletim sistemi bellek içi dosya önbelleğiyle tamamlanan bu bant genişliği, Apache Spark gibi büyük veri işlem altyapılarını yüklemek için yeterli bant genişliği sağlar. Apache Spark'ın karıştırmalar gibi yoğun belleğe bağımlı görevleri işlemesi için işletim belleği kullanılabilir durumda kalır. İşletim belleğinin özel kullanımına sahip olmak Apache Spark'ın en iyi kaynak kullanımına ulaşmasını sağlar.
Uyarı
GÇ Önbelleği şu anda rubix'i önbelleğe alma bileşeni olarak kullanır, ancak bu durum hizmetin gelecekteki sürümlerinde değişebilir. Lütfen Girdi/Çıktı Önbelleği arabirimlerini kullanın ve doğrudan RubiX uygulamasına bağımlı hale gelmeyin. IO Önbelleği şu anda yalnızca Azure BLOB Depolama ile desteklenir.
Azure HDInsight G/Ç Önbelleğinin Avantajları
G/Ç Önbelleği'nin kullanılması, Azure Blob Depolama'dan veri okuyan işlemler için performans artışı sağlar.
GÇ Önbelleği kullanırken performans artışlarını görmek için Spark işlerinizde herhangi bir değişiklik yapmanız gerekmez. IO Önbelleği devre dışı bırakıldığında, bu Spark kodu Azure Blob Depolama'dan verileri uzaktan okuma işlemi yapar: spark.read.load('wasbs:///myfolder/data.parquet').count(). GÇ Önbelleği etkinleştirildiğinde, aynı kod satırı GÇ Önbelleği aracılığıyla önbelleğe alınmış bir okuma işlemine neden olur. Aşağıdaki okumalarda veriler SSD'den yerel olarak okunur. HDInsight kümesindeki çalışan düğümleri yerel olarak bağlı, ayrılmış SSD sürücülerle donatılmıştır. HDInsight GÇ Önbelleği, önbelleğe alma için bu yerel SSD'leri kullanır ve bu da en düşük gecikme düzeyini sağlar ve bant genişliğini en üst düzeye çıkarır.
İlk Adımlar
Azure HDInsight IO Önbelleği önizlemede varsayılan olarak devre dışı bırakılır. GÇ Önbelleği, Apache Spark 2.3 çalıştıran Azure HDInsight 3.6+ Spark kümelerinde kullanılabilir. HDInsight 4.0'da GÇ Önbelleği'ni etkinleştirmek için aşağıdaki adımları uygulayın:
Bir web tarayıcısından
https://CLUSTERNAME.azurehdinsight.netadresine gidin. BuradaCLUSTERNAME, kümenizin adıdır.Soldaki IO Cache hizmetini seçin.
Eylemler (HDI 3.6'da Hizmet Eylemleri) seçeneğini belirleyin ve Etkinleştir'i seçin.
Kümede etkilenen tüm hizmetlerin yeniden başlatılmasını onaylayın.
Uyarı
İlerleme çubuğu etkin olarak gösterilse de, etkilenen diğer hizmetleri yeniden başlatana kadar GÇ Önbelleği aslında etkinleştirilmez.
Sorun giderme
G/Ç Önbelleğini etkinleştirdikten sonra Spark işlerini çalıştırırken disk alanı hatalarıyla karşılaşabilirsiniz. Spark karıştırma işlemleri sırasında verileri depolamak için yerel disk depolamayı da kullandığından bu hatalar oluşur. IO Önbelleği etkinleştirildiğinde ve Spark'ın depolama alanı küçültüldüğünde, Spark'ın SSD alanı tükenebilir. GÇ Önbelleği tarafından kullanılan alan miktarı varsayılan olarak toplam SSD alanının yarısıdır. GÇ Önbelleği için disk alanı kullanımı Ambari'de yapılandırılabilir. Disk alanı hataları alırsanız GÇ Önbelleği için kullanılan SSD alanı miktarını azaltın ve hizmeti yeniden başlatın. GÇ Önbelleği için alan kümesini değiştirmek için aşağıdaki adımları uygulayın:
Apache Ambari'de soldaki HDFS hizmetini seçin.
Yapılandırmalar ve Gelişmiş sekmelerini seçin.
Aşağı kaydırın ve Özel çekirdek site alanını genişletin.
hadoop.cache.data.fullness.percentage özelliğini bulun.
Kutudaki değeri değiştirin.
Sağ üst köşeden Kaydet'i seçin.
Tüm Etkilenenleri Yeniden Başlat'ı> seçin.
Tümünü Yeniden Başlat'ı seçin.
Bu işe yaramazsa GÇ Önbelleğini devre dışı bırakın.
Sonraki Adımlar
Bu blog gönderisindeki performans karşılaştırmaları da dahil olmak üzere GÇ Önbelleği hakkında daha fazla bilgi edinin: Apache Spark işleri HDInsight GÇ Önbelleği ile 9 kata kadar hız kazanır