O cliente Hive CLI

O primeiro cliente Hive é a interface de linha de comando Hive (CLI). Para dominar os pontos mais delicados do cliente Hive CLI, pode ajudar a avaliar a arquitetura (um pouco ocupado para o futuro) Hive.

image0.jpg

Na segunda figura, a arquitetura é simplificado para focar apenas os componentes que são necessários durante a execução do CLI.

image1.jpg

Estes são os componentes da colmeia que são necessários ao executar o CLI em um cluster Hadoop. Aqui, você corre Hive em modo local, que utiliza o armazenamento local, ao invés do HDFS, para seus dados.

Para executar o Hive CLI, você executar o colméia de comando e especificar o CLI como o serviço que deseja executar. Na lista a seguir, você pode ver o comando que é necessário, bem como algumas das nossas primeiras demonstrações HiveQL. (A passos anotação usando o modelo A-B-C está incluído na listagem de direcionar sua atenção para os comandos de teclas.)

(UMA) $ $ HIVE_HOME / bin colmeia --service cli(B) colmeia> set hive.cli.print.current.db = verdade-(C) colmeia (padrão)> CREATE DATABASE ourfirstdatabase-OKTime tomadas: 3.756 segundos(D) colmeia (padrão)> USE ourfirstdatabase-OKTime tomadas: 0,039 segundos(E) colmeia (ourfirstdatabase)> CREATE TABLE our_first_table (> FirstName STRING,> LastNameSTRING,> EmployeeId INT) -OKTime tomadas: 0,043 secondshive (ourfirstdatabase)> quit-(F) $ Ls /home/biadmin/Hive/warehouse/ourfirstdatabase.dbour_first_table

O primeiro comando (consulte a etapa A) inicia o Hive CLI usando o $ HIVE_HOME variável de ambiente. o -cli serviço opção de linha de comando direciona o sistema Hive para iniciar a interface de linha de comando, mas você poderia ter escolhido outros servidores.

Em seguida, no Passo B, você diz ao Hive CLI para imprimir seu banco de dados de trabalho atual para que você saiba onde você está no espaço de nomes. (Esta declaração vai fazer sentido depois de explicar como usar o comando seguinte, assim que segurar firme.)

No Passo C você usar a linguagem de definição de dados de HiveQL (DDL) para criar seu primeiro banco de dados. (Lembre-se que os bancos de dados em Hive são simplesmente namespaces onde as tabelas particulares reside- porque um conjunto de tabelas pode ser pensado como um banco de dados ou esquema, você poderia ter usado o termo ESQUEMA no lugar de BANCO DE DADOS para alcançar o mesmo resultado.).

Mais especificamente, você está usando DDL para dizer ao sistema para criar um banco de dados chamado ourfirstdatabase e depois de fazer este banco de dados padrão para posterior HiveQL DDL comandos usando o USAR comando da Etapa D. No Passo E, você cria a sua primeira mesa e dar-lhe o (bastante apropriado) nome our_first_table.

(Até agora, você pode ter acreditado que ele se parece muito com SQL, talvez com algumas pequenas diferenças na sintaxe dependendo do RDBMS que você está acostumado a -. E você teria sido à direita) O último comando, no Passo F, realiza uma listagem do seu diretório Hive armazém escolhido de modo que você pode ver que our_first_table tem de facto sido armazenado no disco.

Você define o hive.metastore.warehouse.dir variável para apontar para o diretório local / Home / BiAdmin / colmeia / armazém em sua máquina virtual Linux, em vez de usar o HDFS como faria em um cluster Hadoop adequada.

Depois de criar uma tabela, é interessante para ver metadados da tabela. Em ambientes de produção, você pode ter dezenas de mesas ou mais, por isso é útil para ser capaz de avaliar a estrutura da tabela de tempos em tempos. Você ca usar um comando HiveQL de fazer isso usando o Hive CLI, mas o servidor Hive Web Interface (HWI) fornece uma interface útil para este tipo de operação.

Usando o HWI Server em vez da CLI, que também pode ser mais seguro. a consideração cuidadosa deve ser feita ao usar o CLI em ambientes de produção porque a máquina que executa o CLI deve ter acesso a todo o cluster Hadoop.

Portanto, os administradores de sistema normalmente criar instrumentos como o secure shell (ssh), A fim de fornecer acesso controlado e seguro a máquina que executa o CLI, bem como para fornecer criptografia de rede. No entanto, quando o servidor HWI é empregado, o usuário só pode acessar os dados Hive permitido pelo servidor HWI via o seu navegador web.

menu