Instalar o shell do HBase

O shell do HBase é uma ferramenta de linha de comando que executa tarefas administrativas, como criação e exclusão de tabelas. O cliente HBase do Cloud Bigtable para Java é uma biblioteca de cliente que possibilita usar o shell do HBase para se conectar ao Bigtable.

Nesta página, descrevemos como instalar o shell do HBase e o cliente HBase do Cloud Bigtable para Java em uma instância do Compute Engine ou na própria máquina. Não é necessário instalar outra dependência do HBase como o Apache ZooKeeper. O cliente HBase do Cloud Bigtable para Java não requer dependências complementares.

Também é possível executar o shell do HBase no Cloud Shell. Para instruções, consulte Guia de início rápido de como usar o shell do HBase.

Antes de começar

Antes de começar, você precisará concluir as seguintes tarefas:

Instalar o Java

Para usar o shell do HBase com o cliente HBase do Cloud Bigtable para Java, instale um ambiente de tempo de execução Java 8. Outras versões do Java não são compatíveis.

No Debian GNU/Linux ou Ubuntu, você pode instalar o Java 8 JDK executando os seguintes comandos:

sudo apt-get update
sudo apt-get install openjdk-8-jdk-headless

Para outros sistemas operacionais, faça o download e instale o Java JDK.

Instalar o Maven

Para executar o shell do HBase, você precisa instalar o Apache Maven. O shell do HBase usa o Maven para fazer o download das dependências obrigatórias.

No Debian GNU/Linux ou Ubuntu, você pode instalar o Maven executando os seguintes comandos:

sudo apt-get update
sudo apt-get install maven

No macOS, você pode instalar o Maven usando o Homebrew:

brew install maven

Para outros sistemas operacionais, consulte as instruções no site do Maven.

Conseguir credenciais

Ao instalar o shell do HBase na sua própria máquina, você precisará receber as credenciais de acesso do usuário para os recursos do Google Cloud.

Para receber as credenciais, execute o seguinte comando:

gcloud auth application-default login

O comando será aberto no navegador da Web. Escolha a conta do Google (se solicitado) e clique em Permitir para autorizar o acesso à conta.

Configurar o shell do HBase

Faça o download dos arquivos necessários

Na linha de comando, clone o repositório do GitHub que contém o início rápido do shell do HBase:

git clone https://github.com/GoogleCloudPlatform/cloud-bigtable-examples.git

O repositório é clonado no diretório cloud-bigtable-examples.

Definir a variável de ambiente JAVA_HOME

A variável de ambiente JAVA_HOME do shell deve ser definida como o local onde fica o ambiente de tempo de execução Java.

Para encontrar o valor atual de JAVA_HOME:

echo ${JAVA_HOME}

Se este comando não exibir um resultado, significa que a variável não está definida.

Para definir o valor no Debian GNU/Linux ou Ubuntu:

export JAVA_HOME=$(update-alternatives --list java | tail -1 | sed -E 's/\/bin\/java//')

Um valor típico no Debian GNU/Linux ou Ubuntu é /usr/lib/jvm/java-8-openjdk-amd64/jre.

Como definir o valor no macOS (requer ferramentas de linha de comando do Xcode):

export JAVA_HOME=$(/usr/libexec/java_home)

Um valor típico no macOS é /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home.

Uma vez definido o valor de JAVA_HOME, execute o comando a seguir para garantir que ele se refere à versão correta do Java:

${JAVA_HOME}/bin/java -version

Conectar a uma instância do Bigtable

É possível usar o shell do HBase para se conectar à instância do Bigtable, receber informações sobre as tabelas existentes e criar novas tabelas.

Para iniciar o shell do HBase, execute os seguintes comandos no diretório em que você clonou o repositório cloud-bigtable-examples do GitHub:

cd quickstart
./quickstart.sh

Caso o projeto tenha apenas uma instância do Bigtable, o shell do HBase se conectará automaticamente a ela. Se o projeto tiver várias instâncias do Bigtable, o shell do HBase exibirá uma lista de IDs de instância. Digite o número ao lado do ID da instância e pressione Enter.

Depois que o shell do HBase se conecta à instância, ele exibe uma série de mensagens de registro, o que é normal. Em seguida, o prompt do shell aparece:

hbase(main):001:0>

Agora que você iniciou o shell do HBase, tente executar os seguintes comandos:

  • Para listar suas tabelas, digite list e pressione Enter. Se você ainda não tiver criado nenhuma tabela, o shell do HBase exibirá uma mensagem semelhante a esta:

    TABLE
    0 row(s) in 1.3580 seconds
    
    => []
    
  • Para criar uma tabela, use o comando create. Por exemplo, para criar uma tabela chamada my-table, com um grupo de colunas chamado cf1:

    create 'my-table', 'cf1'
    

    O shell exibirá uma mensagem semelhante a esta:

    0 row(s) in 1.5210 seconds
    
    => Hbase::Table - my-table
    
  • Para adicionar dados a uma tabela, use o comando put. Por exemplo, para colocar o valor test-value na linha r1, usando o grupo de colunas cf1 e o qualificador de coluna c1:

    put 'my-table', 'r1', 'cf1:c1', 'test-value'
    

    Use o comando scan para verificar a tabela e ler os dados adicionados:

    scan 'my-table'
    

    O shell exibirá uma resposta semelhante a esta:

    ROW      COLUMN+CELL
     r1      column=cf1:c1, timestamp=1430687836046, value=test-value
    1 row(s) in 0.6260 seconds
    
  • Para descartar uma tabela, use o comando disable para desativá-la, seguido pelo comando drop. Por exemplo, para descartar a tabela my-table:

    disable 'my-table'
    drop 'my-table'
    
  • Para sair do shell do HBase, digite exit e pressione Enter,

Enquanto o shell do HBase estiver em execução, digite help para receber instruções de uso. Para mais informações, veja a documentação do HBase.