

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

# Acesse HBase tabelas com o Hive
<a name="emr-hbase-access-hive"></a>

HBase e [Apache Hive](emr-hive.md) estão totalmente integrados, permitindo a execução massiva de cargas de trabalho de processamento paralelo diretamente nos dados armazenados em. HBase Para usar o Hive com HBase, geralmente você pode iniciá-los no mesmo cluster. No entanto, você pode iniciar o Hive e HBase em clusters separados. Executar HBase o Hive separadamente em clusters diferentes pode melhorar o desempenho, pois isso permite que cada aplicativo use os recursos do cluster com mais eficiência.

Os procedimentos a seguir mostram como se conectar HBase em um cluster usando o Hive. 

**nota**  
Você só pode conectar um cluster do Hive a um único HBase cluster. 

**Para conectar o Hive ao HBase**

1. Crie clusters separados com o Hive e HBase instalado ou crie um único cluster com ambos HBase e o Hive instalados.

1. Se você estiver usando clusters separados, modifique seus grupos de segurança para que HBase as portas do Hive estejam abertas entre esses dois nós primários.

1. Use o SSH para se conectar ao nó central do cluster com o Hive instalado. Para obter mais informações, consulte [Connect to the primary node using SSH](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-ssh.html) no *Guia de gerenciamento do Amazon EMR*.

1. Execute o shell do Hive com o comando a seguir. 

   ```
   hive
   ```

1. (Opcional) Não é necessário fazer isso se HBase o Hive estiver localizado no mesmo cluster. Conecte o HBase cliente em seu cluster Hive ao HBase cluster que contém seus dados. No exemplo a seguir, *public-DNS-name* é substituído pelo nome DNS público do nó primário do HBase cluster, por exemplo:`ec2-50-19-76-67.compute-1.amazonaws.com`. 

   ```
   set hbase.zookeeper.quorum=public-DNS-name;
   ```

1. Continue executando as consultas do Hive em seus HBase dados conforme desejado ou veja o próximo procedimento.

**Para acessar HBase dados do Hive**
+ 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 no nó primário, cria uma tabela externa que faz referência aos dados armazenados em uma HBase tabela chamada`inputTable`. Em seguida, você pode fazer referência `inputTable` nas instruções do Hive para consultar e modificar os dados armazenados no HBase cluster. 

  ```
  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(key) from inputTable ;
  ```

Para um caso de uso mais avançado e um exemplo de combinação com o Hive, consulte a postagem do blog sobre AWS Big Data, [Combine NoSQL HBase e análises paralelas massivas usando o Apache e o HBase Apache Hive](https://aws.amazon.com/blogs/big-data/combine-nosql-and-massively-parallel-analytics-using-apache-hbase-and-apache-hive-on-amazon-emr) no Amazon EMR.