Criar, alterar & Drop Table

Índice:

Anonim

Operações de tabela, como criação, alteração e eliminação de tabelas no Hive, podem ser observadas neste tutorial.

Na captura de tela abaixo, estamos criando uma tabela com colunas e alterando o nome da tabela.

1. Criação da tabela guru_sample com dois nomes de coluna, como "empid" e "empname"

2. Exibindo tabelas presentes no banco de dados guru99

3. Guru_sample exibindo sob as tabelas

4. Alterando a tabela "guru_sample" como "guru_sampleNew"

5. Novamente, quando você executar o comando "show", ele exibirá o novo nome Guru_sampleNew

Dropping table guru_sampleNew:

Tipos de tabela e seu uso:

Chegar às tabelas é como a maneira que criamos nos bancos de dados relacionais tradicionais. As funcionalidades como filtragem, junções podem ser realizadas nas tabelas.

O Hive lida com dois tipos de estruturas de tabela, como tabelas internas e externas , dependendo do carregamento e do design do esquema no Hive.

Tabelas internas

  • A tabela interna é fortemente acoplada por natureza. Neste tipo de tabela, primeiro temos que criar a tabela e carregar os dados.
  • Podemos chamar isso de dados no esquema .
  • Ao descartar esta tabela, os dados e o esquema serão removidos.
  • O local armazenado desta tabela será em / user / hive / warehouse.

Quando escolher a mesa interna:

  • Se os dados de processamento disponíveis no sistema de arquivos local
  • Se quisermos que o Hive gerencie o ciclo de vida completo dos dados, incluindo a exclusão

Amostra de trecho de código para tabela interna

1. Para criar a tabela interna

 Hive>CREATE TABLE guruhive_internaltable (id INT,Name STRING);Row format delimitedFields terminated by '\t';

2. Carregue os dados na tabela interna

 Hive>LOAD DATA INPATH '/user/guru99hive/data.txt' INTO table guruhive_internaltable;

3. Exibir o conteúdo da tabela

 Hive>select * from guruhive_internaltable;

4. Para largar a mesa interna

 Hive>DROP TABLE guruhive_internaltable;

Se você descartou o guruhive_internaltable, incluindo seus metadados e seus dados serão excluídos do Hive.

Na captura de tela a seguir, podemos observar a saída

No código acima e na captura de tela, fazemos as seguintes coisas,

  • Crie a tabela interna
  • Carregue os dados na tabela interna
  • Exibir o conteúdo da tabela
  • Para largar a mesa interna

Tabelas externas

  • A Tabela Externa é fracamente acoplada por natureza. Os dados estarão disponíveis no HDFS. A tabela será criada nos dados do HDFS.
  • De outra forma, podemos dizer como a sua criação de esquema em dados .
  • No momento de eliminar a tabela, ela elimina apenas o esquema, os dados ainda estarão disponíveis no HDFS como antes.
  • As tabelas externas fornecem uma opção para criar vários esquemas para os dados armazenados no HDFS em vez de excluir os dados sempre que o esquema for atualizado

Quando escolher a mesa externa:

  • Se estiver processando dados disponíveis no HDFS
  • Útil quando os arquivos estão sendo usados ​​fora do Hive

Amostra de trecho de código para tabela externa

1. Crie uma tabela externa

Hive>CREATE EXTERNAL TABLE guruhive_external(id INT,Name STRING)Row format delimitedFields terminated by '\t'LOCATION '/user/guru99hive/guruhive_external;

2. Se não estivermos especificando o local no momento da criação da tabela, podemos carregar os dados manualmente

 Hive>LOAD DATA INPATH '/user/guru99hive/data.txt' INTO TABLE guruhive_external;

3. Exibir o conteúdo da tabela

 Hive>select * from guruhive_external;

4. Para largar a mesa interna

 Hive>DROP TABLE guruhive_external;

Na captura de tela a seguir, podemos observar a saída

No código acima, fazemos as seguintes coisas

  • Crie a tabela externa
  • Carregue os dados na tabela externa
  • Exibir o conteúdo da tabela
  • Largando a mesa externa

Diferença entre tabelas internas e externas

Recurso interno Externo
Esquema Dados no esquema Esquema em Dados
Local de armazenamento / usr / hive / warehouse Localização HDFS
Disponibilidade de dados No sistema de arquivos local No HDFS