View a markdown version of this page

Write-ahead logs (WAL) para o Amazon EMR - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Write-ahead logs (WAL) para o Amazon EMR

Com o Amazon EMR 6.15 e versões posteriores, você pode gravar logs de gravação antecipada (WAL) do Apache HBase no Amazon EMR WAL. Com versões anteriores do Amazon EMR, quando você cria um cluster com a opção HBase no Amazon S3, o WAL é o único componente do Apache HBase armazenado no disco local para clusters, e você pode armazenar outros componentes, como o diretório raiz, armazenar arquivos (HFiles), metadados de tabelas e dados no Amazon S3.

Você pode usar o Amazon EMR WAL para recuperar dados que não foram descarregados no Amazon S3. Para fazer backup completo de clusters do HBase, use o serviço Amazon EMR WAL. Nos bastidores, o RegionServer grava os logs de gravação antecipada (WAL) do HBase no Amazon EMR WAL.

Caso seu cluster ou a AZ não estejam íntegros ou estejam indisponíveis, você pode criar um cluster, direcioná-lo para o mesmo diretório raiz do S3 e Workspace do Amazon EMR WAL e recuperar automaticamente os dados no WAL em alguns minutos. Para obter mais informações, consulte Restauração do Amazon EMR WAL.

Começando com as versões 7.3.0 e superiores do Amazon EMR, o Amazon EMR cria vários EMR WALs para cada servidor e agrupa várias regiões do HBase em um Amazon EMR WAL. Isso otimiza o WAL do Apache HBase, a utilização dos logs e os custos. Para configurar o número de instâncias do Amazon EMR WAL por RegionServer do HBase, use o parâmetro hbase.wal.regiongrouping.numgroups. Por padrão, esse parâmetro é definido como 2. Existem duas tabelas de sistema que não estão incluídas em nenhum grupo de WAL: meta e masterstore. Essas tabelas sempre usam seus próprios WALs individuais.

Se você executa uma versão inferior ao Amazon EMR 7.3.0, recomendamos desabilitar manualmente as tabelas no antigo cluster do HBase para garantir que todos os dados no Amazon EMR WAL sejam descarregados no Amazon S3. Em seguida, exclua o Amazon EMR WAL antigo, encerre o cluster antigo e configure um novo cluster que execute a versão mais recente. Se você tiver problemas e não conseguir desabilitar as tabelas no cluster antigo, poderá encerrar diretamente o cluster antigo e definir emr.wal.multiplex.migrate como true no novo cluster. Se definido como verdadeiro, o HBase tentará reproduzir os dados de instâncias antigas do Amazon EMR WAL durante a inicialização da região do HBase e excluirá os WALs antigos após a repetição. Esse processo de reprodução gera custos adicionais para leituras. Após a migração, recomendamos configurar o cluster e definir emr.wal.multiplex.migrate como false. Como alternativa, você pode remover o parâmetro para acelerar a inicialização da região do HBase.

nota

O Amazon EMR WAL exclui os dados depois que o HBase os descarrega. Se o HBase não descarregar os dados, o Amazon EMR WAL os retém por no máximo 30 dias. Depois de 30 dias, o Amazon EMR WAL exclui automaticamente os dados. O Amazon EMR mantém instâncias do WAL por até 30 dias a partir do encerramento de um cluster do EMR. No entanto, se você iniciar um novo WAL-enabled cluster a partir do mesmo diretório raiz do S3 dentro desses 30 dias, o Amazon EMR não excluirá nenhuma das instâncias do WAL do seu cluster anterior. Para obter mais informações, consulte Restauração do Amazon EMR WAL.

As seções a seguir descrevem como configurar e usar o Amazon EMR WAL com seu cluster HBase-enabled EMR.