O cliente colmeia cli
O primeiro cliente Hive é a interface de linha de comando Hive (CLI). Para dominar os pontos mais finos do cliente Hive CLI, pode ajudar a avaliar a arquitetura (um pouco ocupado para o futuro) Hive.
Na segunda figura, a arquitetura é simplificado para focar apenas os componentes que são necessários ao executar o CLI.
Estes são os componentes de 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 você deseja executar. Na seguinte lista, 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) hivegt; definido hive.cli.print.current.db = true-(C) colmeia (padrão) gt; CREATE DATABASE ourfirstdatabase-OKTime tomadas: 3.756 segundos(D) colmeia (padrão) gt; USO ourfirstdatabase-OKTime tomadas: 0,039 segundos(E) colmeia (ourfirstdatabase) gt; CRIAR our_first_table TABELA (gt; NomePróprio STRING gt; LastNameSTRING, gt; EmployeeId INT) -OKTime feita: 0,043 secondshive (ourfirstdatabase) gt; Sair-(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 -serviço cli 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 BASE 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 no Passo 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, com talvez 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 de diretório do seu diretório Hive armazém escolhido de modo que você pode ver que our_first_table tem de facto sido armazenados 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 rever 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 do CLI 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 executando o CLI deve ter acesso a todo o cluster Hadoop.
Portanto, os administradores de sistema normalmente criar instrumentos como o shell seguro (ssh), A fim de proporcionar o acesso controlado e seguro para a máquina que executa o CLI, bem como para proporcionar a encriptação da rede. No entanto, quando o servidor HWI é empregado, um usuário só pode acessar dados Hive permitido pelo servidor HWI via o seu navegador web.