Aracılığıyla paylaş


Azure HDInsight’ta Apache Ambari ile Apache HBase'i iyileştirme

Apache Ambari, HDInsight kümelerini yönetmek ve izlemek için bir web arabirimidir. Ambari Web kullanıcı arabirimine giriş için bkz . Apache Ambari Web kullanıcı arabirimini kullanarak HDInsight kümelerini yönetme.

Apache HBase yapılandırması HBase Yapılandırmaları sekmesinden değiştirilir. Aşağıdaki bölümlerde HBase performansını etkileyen bazı önemli yapılandırma ayarları açıklanmaktadır.

HBASE_HEAPSIZE ayarlama

Not

Bu makalede, Microsoft'un artık kullanmadığını belirten ana terime başvurular yer alır. Terim yazılımdan kaldırıldığında, bu makaleden kaldıracağız.

HBase yığın boyutu, bölge ve ana sunuculara göre megabayt cinsinden kullanılacak maksimum yığın miktarını belirtir. Varsayılan değer 1.000 MB'tır. Bu değer küme iş yükü için ayarlanmalıdır.

  1. Değiştirmek için HBase Yapılandırmaları sekmesinde gelişmiş HBase-env bölmesine gidin ve ardından ayarı bulunHBASE_HEAPSIZE.

  2. Varsayılan değeri 5.000 MB olarak değiştirin.

    `Apache Ambari HBase memory heapsize`.

Yoğun okunan iş yüklerini iyileştirme

Okuma ağırlıklı iş yüklerinin performansını geliştirmek için aşağıdaki yapılandırmalar önemlidir.

Önbellek boyutunu engelle

Blok önbelleği okuma önbelleğidir. hfile.block.cache.size parametresi blok önbelleği boyutunu denetler. Varsayılan değer, toplam bölge sunucusu belleğinin yüzde 40'ı olan 0,4'tür. Blok önbelleği boyutu daha büyükse, rastgele okumalar daha hızlı olur.

  1. Bu parametreyi değiştirmek için HBase Yapılandırmaları sekmesindeki Ayarlar sekmesine gidin ve ardından Okuma Arabelleklerine Ayrılan RegionServer %'sini bulun.

    Apache HBase memory block cache size.

  2. Değeri değiştirmek için Düzenle simgesini seçin.

Memstore boyutu

Tüm düzenlemeler, Memstore adı verilen bellek arabelleğinde depolanır. Bu arabellek, tek bir işlemde diske yazılabilir toplam veri miktarını artırır. Ayrıca son düzenlemelere erişimi hızlandırır. Memstore boyutu aşağıdaki iki parametreyi tanımlar:

  • hbase.regionserver.global.memstore.UpperLimit: Memstore'nun bir araya getirebileceği bölge sunucusunun en yüksek yüzdesini tanımlar.

  • hbase.regionserver.global.memstore.LowerLimit: Memstore'nun bir araya getirebileceği bölge sunucusunun en düşük yüzdesini tanımlar.

Rastgele okumaları iyileştirmek için Memstore üst ve alt sınırlarını azaltabilirsiniz.

Diskten tarama yaparken getirilen satır sayısı

ayarı, hbase.client.scanner.caching yöntem tarayıcıda çağrıldığında next diskten okunan satır sayısını tanımlar. Varsayılan değer 100 şeklindedir. Sayı ne kadar yüksek olursa, istemciden bölge sunucusuna yapılan uzak çağrı sayısı o kadar az olur ve taramalar o kadar hızlı olur. Ancak, bu ayar istemci üzerindeki bellek baskısını artırır.

Apache HBase number of rows fetched.

Önemli

Bir tarayıcıda sonraki yöntemin çağrılması arasındaki süre tarayıcı zaman aşımından büyük olacak şekilde değeri ayarlamayın. Tarayıcı zaman aşımı süresi özelliği tarafından hbase.regionserver.lease.period tanımlanır.

Yoğun yazma iş yüklerini iyileştirme

Aşağıdaki yapılandırmalar, yoğun yazma içeren iş yüklerinin performansını geliştirmek için önemlidir.

Bölge dosya boyutu üst sınırı

HBase verileri adlı HFilebir iç dosya biçiminde depolar. özelliği hbase.hregion.max.filesize , bir bölge için tek HFile bir boyutu tanımlar. Bir bölgedeki tümünün HFiles toplamı bu ayardan büyükse, bölge iki bölgeye ayrılır.

`Apache HBase HRegion max filesize`.

Bölge dosya boyutu ne kadar büyükse bölme sayısı da o kadar az olur. En yüksek yazma performansına neden olan bir değeri belirlemek için dosya boyutunu artırabilirsiniz.

Güncelleştirme engellemeyi önleme

  • özelliği hbase.hregion.memstore.flush.size , Memstore'nun diske boşaltıldığı boyutu tanımlar. Varsayılan boyut 128 MB'tır.

  • HBase hbase.hregion.memstore.block.multiplier bölge bloğu çarpanını tanımlar. Varsayılan değer 4 şeklindedir. İzin verilen maksimum değer 8'dir.

  • HBase, Memstore (hbase.hregion.memstore.flush.size * hbase.hregion.memstore.block.multiplier) bayt olduğunda güncelleştirmeleri engeller.

    Varsayılan boşaltma boyutu ve blok çarpanı değerleriyle, Memstore boyutu 128 * 4 = 512 MB olduğunda güncelleştirmeler engellenir. Güncelleştirme engelleme sayısını azaltmak için değerini hbase.hregion.memstore.block.multiplierartırın.

Apache HBase Region Block Multiplier.

Memstore boyutunu tanımlama

hbase.regionserver.global.memstore.upperLimit ve hbase.regionserver.global.memstore.lowerLimit parametreleri Memstore boyutunu tanımlar. Bu değerlerin birbirine eşit ayarlanması, yazma sırasındaki duraklamaları azaltır (ayrıca daha sık boşaltmaya neden olur) ve yazma performansının artmasına neden olur.

Memstore yerel ayırma arabelleği ayarlama

özelliği hbase.hregion.memstore.mslab.enabled Memstore yerel ayırma arabellek kullanımını tanımlar. Etkinleştirildiğinde (true), bu ayar ağır yazma işlemi sırasında yığın parçalanmasını önler. Varsayılan değer doğru'dur.

hbase.hregion.memstore.mslab.enabled.

Sonraki adımlar