Escritas Aceleradas do Azure HDInsight para o Apache HBase

Este artigo fornece o fundo da funcionalidade Writes Acelerada para Apache HBase em Azure HDInsight, e como pode ser usado eficazmente para melhorar o desempenho da escrita. A Accelerated Writes utiliza discos geridos Azure premium SSD para melhorar o desempenho do Apache HBase Write Ahead Log (WAL). Para saber mais sobre Apache HBase, consulte o que é Apache HBase em HDInsight.

Visão geral da arquitetura HBase

Na Base H, uma linha é constituída por uma ou mais colunas e é identificada por uma chave de linha. Várias filas compõem uma mesa. As colunas contêm células, que são versões com tempo do valor nessa coluna. As colunas são agrupadas em famílias de colunas, e todas as colunas de uma coluna-família são armazenadas juntas em ficheiros de armazenamento chamados HFiles.

As regiões da Base H são utilizadas para equilibrar a carga de processamento de dados. A HBase armazena primeiro as filas de uma mesa numa única região. As linhas estão espalhadas por várias regiões à medida que a quantidade de dados na tabela aumenta. Os Servidores da Região podem lidar com pedidos de várias regiões.

Escreva antecipadamente log para Apache HBase

A HBase escreve primeiro atualizações de dados para um tipo de registo de compromisso chamado Write Ahead Log (WAL). Depois de a atualização ser armazenada no WAL, é escrita para a MemStore in-memory. Quando os dados na memória atingem a sua capacidade máxima, é escrito para o disco como um HFile.

Se um RegiãoServer falhar ou ficar indisponível antes da MemStore ser lavada, o Write Ahead Log pode ser utilizado para reproduzir atualizações. Sem o WAL, se um RegionalServer se despenhar antes de descarregar atualizações para um HFile, todas essas atualizações são perdidas.

Funcionalidade de Escritas Aceleradas em Azure HDInsight para Apache HBase

A funcionalidade Writes Acelerado resolve o problema das latências de escrita mais elevadas causadas pela utilização de Write Ahead Logs que estão no armazenamento em nuvem. A funcionalidade De Escritas Aceleradas para clusters HDInsight Apache HBase, anexa discos geridos por SSD premium a todos os RegionServer (nó de trabalhador). Os Registos antecipados são então escritos para o Sistema de Ficheiros Hadoop (HDFS) montado nestes discos geridos premium em vez de armazenamento em nuvem. Premium os discos geridos utilizam Solid-State Discos (SSDs) e oferecem um excelente desempenho de I/S com tolerância à falha. Ao contrário dos discos não geridos, se uma unidade de armazenamento se desligar, não afetará outras unidades de armazenamento no mesmo conjunto de disponibilidade. Como resultado, os discos geridos proporcionam baixa latência de escrita e melhor resiliência para as suas aplicações. Para saber mais sobre discos geridos pelo Azure, consulte discos geridos introdução ao Azure.

Como ativar writes acelerados para HBase em HDInsight

Para criar um novo cluster HBase com a função Escritas Aceleradas, siga os passos em Configurar clusters em HDInsight. No separador Basics selecione o tipo de cluster como HBase, especifique uma versão componente e, em seguida, clique na caixa de verificação ao lado de Ativar as escritas aceleradas da HBase. Em seguida, continue com os passos restantes para a criação de clusters.

Enable accelerated writes option for HDInsight Apache HBase

Outras considerações

Para preservar a durabilidade dos dados, crie um cluster com um mínimo de três nós operários. Uma vez criado, não se pode reduzir o aglomerado para menos de três nós operários.

Lave ou desaje nas suas tabelas HBase antes de eliminar o cluster, para que não perca os dados do Write Ahead Log.

flush 'mytable'
disable 'mytable'

Siga passos semelhantes ao escalonar o seu cluster: lave as tabelas e desative as tabelas para impedir a entrada de dados. Não pode reduzir o seu aglomerado para menos de três nós.

Seguir estas etapas, garantirá uma escala bem sucedida e evitará a possibilidade de um nome entrar em modo de segurança devido a ficheiros sub-replicados ou temporários.

Se o seu nome entrar em modo de segurança após uma escala baixa, utilize comandos hdfs para re-replicar os blocos sub-replicados e tirar os HDFs do modo de segurança. Esta re-replicação permitir-lhe-á reiniciar o HBase com sucesso.

Passos seguintes