Zrychlené zápisy služby Azure HDInsight pro Apache HBase

Tento článek obsahuje základní informace o funkci akcelerovaných zápisů pro Apache HBase ve službě Azure HDInsight a o tom, jak se dá efektivně použít ke zlepšení výkonu zápisu. Akcelerované zápisy využívají spravované disky AZURE SSD úrovně Premium ke zlepšení výkonu protokolu WAL (Apache HBase Write Ahead Log). Další informace o Apache HBase najdete v tématu Co je Apache HBase ve službě HDInsight.

Přehled architektury HBase

V HBase se řádek skládá z jednoho nebo více sloupců a je identifikován klíčem řádku. Více řádků tvoří tabulku. Sloupce obsahují buňky, které jsou časového razítka verze hodnoty v daném sloupci. Sloupce jsou seskupené do rodin sloupců a všechny sloupce v rodině sloupců jsou uloženy společně v souborech úložiště, které se nazývají HFiles.

Oblasti v HBase se používají k vyrovnávání zatížení zpracování dat. HBase nejprve ukládá řádky tabulky v jedné oblasti. Řádky jsou rozloženy do více oblastí s rostoucím množstvím dat v tabulce. Servery oblastí můžou zpracovávat požadavky pro více oblastí.

Zápis hlavičkového protokolu pro Apache HBase

HBase nejprve zapisuje aktualizace dat do typu protokolu potvrzení s názvem Wal (Write Ahead Log). Po uložení aktualizace do WAL se zapíše do úložiště MemStore v paměti. Když data v paměti dosáhnou maximální kapacity, zapisuje se na disk jako .HFile

Pokud se server oblasti chybově ukončí nebo se stane nedostupným před vyprázdněním serveru MemStore, můžete k přehrání aktualizací použít protokol zápisu dopředu. Bez WAL dojde k chybovému ukončení serveru RegionServer před vyprázdněním aktualizací HFile, všechny tyto aktualizace budou ztraceny.

Funkce akcelerovaných zápisů ve službě Azure HDInsight pro Apache HBase

Funkce Zrychlené zápisy řeší problém s vyšší latencí zápisu způsobených využitím protokolůhead zápisu, které jsou v cloudovém úložišti. Funkce zrychleného zápisu pro clustery HDInsight Apache HBase připojí disky spravované ssd úrovně Premium ke všem oblastovým serverům (pracovnímu uzlu). Protokoly před zápisem se pak zapisují do systému souborů Hadoop (HDFS) připojeného k těmto diskům spravovaným úrovně Premium místo do cloudového úložiště. Spravované disky Úrovně Premium používají disky SSD (Solid-State Disks) a nabízejí vynikající výkon vstupně-výstupních operací s odolností proti chybám. Na rozdíl od nespravovaných disků, pokud jedna jednotka úložiště přestane fungovat, nebude mít vliv na jiné jednotky úložiště ve stejné skupině dostupnosti. Díky tomu spravované disky poskytují nízkou latenci zápisu a lepší odolnost vašich aplikací. Další informace o discích spravovaných v Azure najdete v tématu Úvod ke spravovaným diskům Azure.

Povolení akcelerovaných zápisů pro HBase v HDInsight

Pokud chcete vytvořit nový cluster HBase s funkcí Zrychlené zápisy, postupujte podle kroků v tématu Nastavení clusterů v HDInsight. Na kartě Základy vyberte typ clusteru jako HBase, zadejte verzi komponenty a potom klikněte na zaškrtávací políčko vedle povolit akcelerované zápisy HBase. Pak pokračujte zbývajícími kroky pro vytvoření clusteru.

Enable accelerated writes option for HDInsight Apache HBase.

Ověření povolené funkce akcelerovaných zápisů

Pomocí webu Azure Portal můžete ověřit, jestli je v clusteru HBASE povolená funkce Akcelerované zápisy.

  1. Vyhledejte cluster HBASE na webu Azure Portal.
  2. Vyberte okno Velikost clusteru.
  3. Zobrazí se disky Premium na pracovní uzel .

Škálování clusterů HBASE

Pokud chcete zachovat odolnost dat, vytvořte cluster s minimálně třemi pracovními uzly. Po vytvoření nemůžete vertikálně snížit kapacitu clusteru na méně než tři pracovní uzly.

Před odstraněním clusteru vyprázdněte nebo zakažte tabulky HBase, abyste nepřišli o zápis dat do fronty protokolu.

flush 'mytable'
disable 'mytable'

Při vertikálním snížení kapacity clusteru postupujte podobně: vyprázdnění tabulek a zakázání tabulek zastavte příchozí data. Kapacitu clusteru nemůžete vertikálně snížit na méně než tři uzly.

Podle těchto kroků zajistíte úspěšné vertikální snížení kapacity a vyhnete se možnosti přechodu uzlu namenode do nouzového režimu kvůli nedostatečně replikovaným nebo dočasným souborům.

Pokud váš uzel namenode po vertikálním snížení kapacity přejde do nouzového režimu, použijte příkazy hdfs k opětovné replikaci podreplikovaných bloků a získání hdfs z nouzového režimu. Tato opětovná replikace vám umožní úspěšně restartovat HBase.

Další kroky