Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

HBase especificações do aplicativo para versões anteriores da AMI do Amazon EMR

Modo de foco
HBase especificações do aplicativo para versões anteriores da AMI do 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á.

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á.

HBase Versões suportadas

HBase versão AMI version AWS CLI parâmetros de configuração HBase detalhes da versão
0.94.18 3.1.0 e posterior

--ami-version 3.1

--ami-version 3.2

--ami-version 3.3

--applications Name=HBase

  • Correções de bugs e melhorias.

0.94.7 3.0-3.0.4

--ami-version 3.0

--applications Name=HBase

0.92 2.2 e posterior

--ami-version 2.2 or later

--applications Name=HBase

HBase pré-requisitos do cluster

Um cluster criado usando as versões 2.x e 3.x da AMI do Amazon EMR deve atender aos seguintes requisitos para. HBase

  • O AWS CLI (opcional) — Para interagir HBase usando a linha de comando, baixe e instale a versão mais recente do AWS CLI. Para obter mais informações, consulte Instalar a AWS Command Line Interface no Guia do usuário da AWS Command Line Interface .

  • Pelo menos duas instâncias (opcional) — o nó principal do cluster executa o servidor HBase mestre e o Zookeeper, e os nós de tarefas executam os servidores da HBase região. Para obter o melhor desempenho, HBase os clusters devem ser executados em pelo menos duas EC2 instâncias, mas você pode ser HBase executado em um único nó para fins de avaliação.

  • Cluster de longa duração — HBase só é executado em clusters de longa duração. Por padrão, a CLI e o console do Amazon EMR criam clusters de execução prolongada.

  • Um conjunto de pares de EC2 chaves da Amazon (recomendado) — Para usar o protocolo de rede Secure Shell (SSH) para se conectar ao nó principal e executar comandos HBase shell, você deve usar um par de EC2 chaves da Amazon ao criar o cluster.

  • As versões corretas da AMI e do Hadoop — atualmente, os HBase clusters são suportados somente no Hadoop 20.205 ou posterior.

  • Ganglia (opcional) — Para monitorar as métricas de HBase desempenho, instale o Ganglia ao criar o cluster.

  • Um bucket do Amazon S3 para registros (opcional) — Os registros para HBase estão disponíveis no nó principal. Se você quiser que esses logs sejam copiados para o Amazon S3, especifique um bucket do S3 para receber arquivos de log quando criar o cluster.

Criação de um cluster com HBase

A tabela a seguir lista as opções que estão disponíveis ao usar o console para criar um cluster HBase usando uma versão de lançamento da AMI do Amazon EMR.

Campo Ação
Restore from backup (Restauração de backup) Especifique se deseja pré-carregar o HBase cluster com dados armazenados no Amazon S3.
Backup location (Localização do backup) Especifique o URI no qual o backup para restauração reside no Amazon S3.
Backup version (Versão do backup) Opcionalmente, especifique o nome da versão do backup para uso em Backup Location (Localização do backup). Se você deixar esse campo em branco, o Amazon EMR usará o backup mais recente no Local de Backup para preencher o novo cluster. HBase
Schedule Regular Backups (Agendar backups regulares) Especifique se deseja agendar backups incrementais automáticos. O primeiro backup é um backup completo para criar uma linha de base para futuros backups incrementais.
Consistent backup (Backup consistente) Especifica se os backups devem ser consistentes. Um backup consistente é aquele que pausa operações de gravação durante o estágio de backup inicial, a sincronização entre nós. Qualquer operações de gravação assim pausada é colocada em uma fila e retomada quando a sincronização é concluída.
Backup frequency (Frequência de backup) O número de days/hours/minutes backups programados.
Backup location (Localização do backup) O URI do Amazon S3 em que os backups são armazenados. O local de backup de cada HBase cluster deve ser diferente para garantir que os backups diferenciais permaneçam corretos.
Backup start time (Hora de início do backup) Especifique quando o primeiro backup deve ocorrer. Você pode definir isso como now, o que faz com que o primeiro backup comece assim que o cluster estiver em execução, ou inserir uma data e uma hora no formato ISO. Por exemplo, 2012-06-15T20:00Z define a hora de início como 15 de junho de 2012 às 8 p.m. UTC.

O AWS CLI comando de exemplo a seguir inicia um cluster com HBase e outros aplicativos:

nota

Os caracteres de continuação de linha do Linux (\) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados ​​em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).

aws emr create-cluster --name "Test cluster" --ami-version 3.3 \ --applications Name=Hue Name=Hive Name=Pig Name=HBase \ --use-default-roles --ec2-attributes KeyName=myKey \ --instance-type c1.xlarge --instance-count 3 --termination-protected

Depois que a conexão entre o Hive e os HBase clusters for estabelecida (conforme mostrado no procedimento anterior), você poderá acessar os dados armazenados no HBase cluster criando uma tabela externa no Hive.

O exemplo a seguir, quando executado a partir do prompt do Hive, cria uma tabela externa que faz referência aos dados armazenados em uma HBase tabela chamadainputTable. Em seguida, você pode fazer referência inputTable nas instruções do Hive para consultar e modificar os dados armazenados no HBase cluster.

nota

O exemplo a seguir usa protobuf-java-2.4.0a.jar na AMI 2.3.3, mas você deve modificar o exemplo para corresponder à sua versão. Para verificar qual é a sua versão do Protocol Buffers JAR, execute o comando no prompt de comando do Hive: ! ls /home/hadoop/lib;.

add jar lib/emr-metrics-1.0.jar ; add jar lib/protobuf-java-2.4.0a.jar ; set hbase.zookeeper.quorum=ec2-107-21-163-157.compute-1.amazonaws.com ; create external table inputTable (key string, value string) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with serdeproperties ("hbase.columns.mapping" = ":key,f1:col1") tblproperties ("hbase.table.name" = "t1"); select count(*) from inputTable ;

Personalizando a configuração HBase

Embora as configurações padrão devam funcionar para a maioria dos aplicativos, você tem a flexibilidade de modificá-las. HBase Para fazer isso, execute um dos dois scripts de ação de bootstrap:

  • configure-hbase-daemons— Configura as propriedades dos daemons master, regionserver e zookeeper. Essas propriedades incluem o tamanho da pilha e as opções a serem passadas para a Java Virtual Machine (JVM) quando o HBase daemon é iniciado. Você pode definir essas propriedades como argumentos na ação de bootstrap. Essa ação de bootstrap modifica o arquivo de configuração/home/hadoop/conf/hbase-user-env.sh no HBase cluster.

  • configure-hbase — Define configurações HBase específicas do site, como a porta à qual o HBase mestre deve se vincular e o número máximo de vezes que o cliente CLI do cliente deve repetir uma ação. Você pode defini-los one-by-one como argumentos na ação bootstrap ou especificar a localização de um arquivo de configuração XML no Amazon S3. Essa ação de bootstrap modifica o arquivo de configuração the /home/hadoop/conf/hbase -site.xml no HBase cluster.

nota

Esses scripts, como outras ações de bootstrap, só podem ser executados quando o cluster é criado; você não pode usá-los para alterar a configuração de um HBase cluster em execução no momento.

Quando você executa as ações configure-hbase ou configure-hbase-daemonsbootstrap, os valores especificados substituem os valores padrão. Todos os valores não explicitamente definidos recebem os valores padrão.

Configurar HBase com essas ações de bootstrap é análogo ao uso de ações de bootstrap no Amazon EMR para definir as configurações do Hadoop e as propriedades do daemon do Hadoop. A diferença é que HBase não tem opções de memória por processo. Em vez disso, as opções de memória são definidas usando o --daemon-opts argumento, onde daemon é substituído pelo nome do daemon a ser configurado.

Configurar HBase daemons

O Amazon EMR fornece uma ação de bootstrap,s3://region.elasticmapreduce/bootstrap-actions/configure-hbase-daemons, que você pode usar para alterar a configuração dos HBase daemons, onde region é a região na qual você está lançando seu cluster. HBase

Para configurar HBase daemons usando o AWS CLI, adicione a ação configure-hbase-daemons bootstrap ao iniciar o cluster para configurar um ou mais daemons. HBase É possível definir as seguintes propriedades.

Propriedade Descrição
hbase-master-opts Opções que controlam como a JVM executa o daemon principal. Se definidas, estas substituirão as variáveis HBASE_MASTER_OPTS padrão.
regionserver-opts Opções que controlam como a JVM executa o daemon do servidor de regiões. Se definidas, estas substituirão as variáveis HBASE_REGIONSERVER_OPTS padrão.
zookeeper-opts Opções que controlam como a JVM executa o daemon zookeeper. Se definidas, estas substituirão as variáveis HBASE_ZOOKEEPER_OPTS padrão.

Para obter mais informações sobre essas opções, consulte hbase-env.sh na HBase documentação.

O exemplo a seguir mostra uma ação de bootstrap para configurar valores para zookeeper-opts e hbase-master-opts.

nota

Os caracteres de continuação de linha do Linux (\) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados ​​em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).

aws emr create-cluster --name "Test cluster" --ami-version 3.3 \ --applications Name=Hue Name=Hive Name=Pig Name=HBase \ --use-default-roles --ec2-attributes KeyName=myKey \ --instance-type c1.xlarge --instance-count 3 --termination-protected \ --bootstrap-actions Path=s3://elasticmapreduce/bootstrap-actions/configure-hbase-daemons,\ Args=["--hbase-zookeeper-opts=-Xmx1024m -XX:GCTimeRatio=19","--hbase-master-opts=-Xmx2048m","--hbase-regionserver-opts=-Xmx4096m"]

Definir as configurações do HBase site

O Amazon EMR fornece uma ação de bootstrap,s3://elasticmapreduce/bootstrap-actions/configure-hbase, que você pode usar para alterar a configuração do. HBase Você pode definir valores de configuração one-by-one, como argumentos na ação bootstrap, ou você pode especificar a localização de um arquivo de configuração XML no Amazon S3. Definir valores de configuração one-by-one é útil se você precisar definir apenas algumas configurações. Defini-los usando um arquivo XML é útil quando há muitas mudanças por fazer, ou se você deseja salvar as definições de configuração para reutilização.

nota

Você pode prefixar o nome do bucket do Amazon S3 com um prefixo de região, s3://region.elasticmapreduce/bootstrap-actions/configure-hbase como, region onde está a região na qual você está lançando seu cluster. HBase

Essa ação de bootstrap modifica o arquivo /home/hadoop/conf/hbase-site.xml de configuração no HBase cluster. A ação bootstrap só pode ser executada quando o HBase cluster é iniciado.

Para obter mais informações sobre as configurações do HBase site que você pode definir, consulte Configuração padrão na HBase documentação.

Defina a ação de configure-hbase bootstrap ao iniciar o HBase cluster e especifique os valores a hbase-site.xml serem alterados.

Para especificar configurações individuais HBase do site usando o AWS CLI
  • Para alterar a hbase.hregion.max.filesize configuração, digite o seguinte comando e myKey substitua pelo nome do seu par de EC2 chaves da Amazon.

    nota

    Os caracteres de continuação de linha do Linux (\) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados ​​em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).

    aws emr create-cluster --name "Test cluster" --ami-version 3.3 \ --applications Name=Hue Name=Hive Name=Pig Name=HBase \ --use-default-roles --ec2-attributes KeyName=myKey \ --instance-type c1.xlarge --instance-count 3 --termination-protected \ --bootstrap-actions Path=s3://elasticmapreduce/bootstrap-actions/configure-hbase,Args=["-s","hbase.hregion.max.filesize=52428800"]
Para especificar as configurações do HBase site com um arquivo XML usando o AWS CLI
  1. Crie uma versão personalizada de hbase-site.xml. Seu arquivo personalizado deve ser um XML válido. Para reduzir a chance de introduzir erros, comece com a cópia padrão dohbase-site.xml, localizada no nó HBase principal do Amazon EMR em/home/hadoop/conf/hbase-site.xml, e edite uma cópia desse arquivo em vez de criar um arquivo do zero. Você pode dar um novo nome para o seu novo arquivo ou manter hbase-site.xml.

  2. Carregue seu arquivo hbase-site.xml personalizado em um bucket do Amazon S3. Ele deve ter permissões definidas para que a AWS conta que executa o cluster possa acessar o arquivo. Se a AWS conta que está lançando o cluster também possuir o bucket do Amazon S3, ela terá acesso.

  3. Defina a ação de bootstrap configure-hbase ao iniciar o HBase cluster e inclua a localização do seu arquivo personalizado. hbase-site.xml O exemplo a seguir define os valores de configuração do HBase site para aqueles especificados no arquivos3://amzn-s3-demo-bucket/my-hbase-site.xml. Digite o comando a seguir, myKey substitua pelo nome do seu EC2 key pair e amzn-s3-demo-bucket substitua pelo nome do seu bucket do Amazon S3.

    nota

    Os caracteres de continuação de linha do Linux (\) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados ​​em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).

    aws emr create-cluster --name "Test cluster" --ami-version 3.3 \ --applications Name=Hue Name=Hive Name=Pig Name=HBase \ --use-default-roles --ec2-attributes KeyName=myKey \ --instance-type c1.xlarge --instance-count 3 --termination-protected \ --bootstrap-actions Path=s3://elasticmapreduce/bootstrap-actions/configure-hbase,Args=["--site-config-file","s3://amzn-s3-demo-bucket/config.xml"]

    Se você especificar mais de uma opção para personalizar a HBase operação, deverá prefixar cada par de valores-chave com uma -s opção, conforme mostrado no exemplo a seguir:

    --bootstrap-actions s3://elasticmapreduce/bootstrap-actions/configure-hbase,Args=["-s","zookeeper.session.timeout=60000"]

Com o proxy definido e a conexão SSH aberta, você pode visualizar a HBase interface do usuário abrindo uma janela do navegador com http: //:60010/master-statusmaster-public-dns-name, onde está master-public-dns-name o endereço DNS público do nó principal no cluster. HBase

Você pode visualizar os HBase registros atuais usando SSH para se conectar ao nó principal e navegar até o mnt/var/log/hbase diretório. Esses logs não estão disponíveis depois que o cluster é encerrado, a menos que você habilite o registro em log no Amazon S3 quando o cluster for iniciado.

Backup e restauração HBase

O Amazon EMR fornece a capacidade de fazer backup de seus HBase dados no Amazon S3, manualmente ou em uma programação automatizada. Você pode executar backups completos e incrementais. Depois de ter uma versão de backup dos HBase dados, você pode restaurar essa versão em um HBase cluster. Você pode restaurar em um HBase cluster que esteja em execução no momento ou iniciar um novo cluster pré-preenchido com dados de backup.

Durante o processo de backup, HBase continua executando comandos de gravação. Embora isso garanta que o cluster permanecerá disponível durante o backup, existe o risco de inconsistência entre os dados que estão sendo copiados para backup e quaisquer operações de gravação que estejam sendo executadas em paralelo. Para entender as inconsistências que podem surgir, é preciso considerar que HBase distribui as operações de gravação entre os nós em seu cluster. Se uma operação de gravação acontecer depois que um nó específico for sondado, esses dados não serão incluídos no arquivamento de backup. Você pode até descobrir que gravações anteriores no HBase cluster (enviadas para um nó que já foi pesquisado) podem não estar no arquivo de backup, enquanto gravações posteriores (enviadas para um nó antes de ser pesquisado) estão incluídas.

Se for necessário um backup consistente, você deverá pausar as gravações HBase durante a parte inicial do processo de backup, a sincronização entre os nós. Isso pode ser feito especificando o parâmetro --consistent ao solicitar um backup. Com esse parâmetro, as gravações durante esse período são enfileiradas e executadas logo após a conclusão da sincronização. Você também pode agendar backups recorrentes, que resolvem quaisquer inconsistências com o passar do tempo, conforme os dados perdidos em uma passagem são copiados para backup na passagem seguinte.

Ao fazer backup HBase dos dados, você deve especificar um diretório de backup diferente para cada cluster. Uma maneira fácil de fazer isso é usar o identificador de cluster como parte do caminho especificado para o diretório de backup. Por exemplo, s3://amzn-s3-demo-bucket/backups/j-3AEXXXXXX16F2. Isso garante que qualquer backup incremental futuro faça referência ao HBase cluster correto.

Quando você estiver pronto para excluir arquivos de backup antigos que não são mais necessários, recomendamos que você primeiro faça um backup completo dos seus HBase dados. Isso garante que todos os dados sejam preservados e fornece uma base para futuros backups incrementais. Terminado o backup completo, você pode navegar até o local do backup e excluir manualmente os arquivos de backup antigos.

O processo HBase de backup usa o S3 DistCp para a operação de cópia, que tem certas limitações em relação ao espaço de armazenamento temporário de arquivos.

Faça backup e restaure HBase usando o console

O console oferece a capacidade de iniciar um novo cluster e preenchê-lo com dados de um HBase backup anterior. Ele também oferece a capacidade de programar backups incrementais periódicos dos HBase dados. Funcionalidades adicionais de backup e restauração, como a capacidade de restaurar dados para um cluster já em execução, fazer backups manuais e agendar backups completos automatizados, estão disponíveis usando a CLI.

Para preencher um novo cluster com HBase dados arquivados usando o console
  1. Navegue até o novo console do Amazon EMR e selecione Alternar para o console antigo na navegação lateral. Para obter mais informações sobre o que esperar ao alternar para o console antigo, consulte Usar o console antigo.

  2. Selecione Criar cluster.

  3. Na seção Configuração de software, para Aplicativos adicionais, escolha Configurar HBasee adicionar.

  4. Na caixa de diálogo Add Application (Adicionar aplicativo), marque Restore From Backup (Restaurar a partir do backup).

  5. Em Local do Backup, especifique o local do backup a ser carregado no novo HBase cluster. Este deve ser um URL do Amazon S3; no formato s3://amzn-s3-demo-bucket/backups/.

  6. Para Backup Version (Versão de backup), você tem a opção de especificar o nome de uma versão de backup a ser carregada, definindo um valor. Se você não definir um valor para Versão de backup, o Amazon EMR carregará o backup mais recente no local especificado.

  7. Escolha Add (Adicionar) e continue para criar o cluster com outras opções, conforme desejado.

Para agendar backups automatizados de HBase dados usando o console
  1. Na seção Configuração de software, para Aplicativos adicionais, escolha Configurar HBasee adicionar.

  2. Escolha Schedule Regular Backups (Programar backups regulares).

  3. Especifica se os backups devem ser consistentes. Um backup consistente é aquele que pausa operações de gravação durante o estágio de backup inicial, a sincronização entre nós. Qualquer operação de gravação pausada é colocada em uma fila e retomada quando a sincronização é concluída.

  4. Defina com que frequência os backups devem ocorrer, inserindo um número para Backup Frequency (Frequência de backup) e escolhendo Days (Dias), Hours (Horas) ou Minutes (Minutos). O primeiro backup automatizado que é executado é um backup completo. Depois disso, o Amazon EMR salva backups incrementais, com base no horário que você especificar.

  5. Especifique o local no Amazon S3 em que os backups devem ser armazenados. O backup de cada HBase cluster deve ser feito em um local separado no Amazon S3 para garantir que os backups incrementais sejam calculados corretamente.

  6. Especifique quando o primeiro backup deve ocorrer, definindo um valor para Backup Start Time (Hora de início do backup). Você pode definir isso como now, o que faz com que o primeiro backup comece assim que o cluster estiver em execução, ou inserir uma data e uma hora no formato ISO. Por exemplo, 2013-09-26T20:00Z, define a hora de início como 26 de setembro de 2013 às 8 p.m. UTC.

  7. Escolha Adicionar.

  8. Continue com a criação do cluster, com outras opções conforme desejado.

Monitor HBase com CloudWatch

O Amazon EMR relata três métricas CloudWatch que você pode usar para monitorar seus HBase backups. Essas métricas são enviadas CloudWatch em intervalos de cinco minutos e são fornecidas gratuitamente.

Métrica Descrição
HBaseBackupFailed

Se o último backup falhou. É definido como 0 por padrão e atualizado para 1 se a tentativa de backup anterior falhou. Essa métrica é relatada somente para HBase clusters.

Caso de uso: monitorar HBase backups

Unidades: Contagem

HBaseMostRecentBackupDuration

O tempo que o backup anterior levou para ser concluído. Essa métrica é definida independentemente de o último backup ter sido bem-sucedido ou ter falhado. Enquanto o backup está sendo processado, essa métrica retorna o número de minutos desde o início do backup. Essa métrica é relatada somente para HBase clusters.

Caso de uso: Monitorar HBase backups

Unidade: minutos

HBaseTimeSinceLastSuccessfulBackup

O número de minutos decorridos após o início do último HBase backup bem-sucedido em seu cluster. Essa métrica é relatada somente para HBase clusters.

Caso de uso: monitorar HBase backups

Unidade: minutos

Configurar o Ganglia para HBase

Você configura o Ganglia para HBase usar a ação configure-hbase-for-gangliabootstrap. Essa ação de bootstrap é configurada HBase para publicar métricas no Ganglia.

Você deve configurar o HBase Ganglia ao iniciar o cluster; os relatórios do Ganglia não podem ser adicionados a um cluster em execução.

O Ganglia também armazena arquivos de log no servidor em /mnt/var/log/ganglia/rrds. Se você tiver configurado o cluster para manter a persistência dos arquivos de log em um bucket do Amazon S3, os arquivos de log do Ganglia serão mantidos lá também.

Para iniciar um cluster com o Ganglia for HBase, use a ação configure-hbase-for-gangliabootstrap conforme mostrado no exemplo a seguir.

nota

Os caracteres de continuação de linha do Linux (\) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados ​​em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).

aws emr create-cluster --name "Test cluster" --ami-version 3.3 \ --applications Name=Hue Name=Hive Name=Pig Name=HBase Name=Ganglia \ --use-default-roles --ec2-attributes KeyName=myKey \ --instance-type c1.xlarge --instance-count 3 --termination-protected \ --bootstrap-actions Path=s3://elasticmapreduce/bootstrap-actions/configure-hbase-for-ganglia

Depois que o cluster é executado com o Ganglia configurado, você pode acessar os gráficos e relatórios do Ganglia usando a interface gráfica em execução no nó principal.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.