Hive Crea, modifica e Drop Table

Sommario:

Anonim

In questo tutorial è possibile osservare operazioni sulle tabelle come la creazione, la modifica e l'eliminazione di tabelle in Hive.

Nello screenshot qui sotto, stiamo creando una tabella con colonne e modificando il nome della tabella.

1. Creazione di una tabella guru_sample con due nomi di colonna come "empid" e "empname"

2. Visualizzazione delle tabelle presenti nel database guru99

3. Guru_sample visualizzato sotto le tabelle

4. Modifica della tabella "guru_sample" in "guru_sampleNew"

5. Anche in questo caso, quando si esegue il comando "show", verrà visualizzato il nuovo nome Guru_sampleNew

Dropping table guru_sampleNew:

Tipi di tabella e relativo utilizzo:

Venire alle tabelle è proprio come il modo in cui creiamo nei database relazionali tradizionali. Le funzionalità come il filtraggio, i join possono essere eseguite sulle tabelle.

Hive si occupa di due tipi di strutture di tabelle come tabelle interne ed esterne a seconda del caricamento e della progettazione dello schema in Hive.

Tavoli interni

  • La tabella interna è strettamente accoppiata in natura.In questo tipo di tabella, prima dobbiamo creare la tabella e caricare i dati.
  • Possiamo chiamarlo come dati sullo schema .
  • Eliminando questa tabella, verranno rimossi sia i dati che lo schema.
  • La posizione archiviata di questa tabella sarà in / user / hive / warehouse.

Quando scegliere la tabella interna:

  • Se i dati di elaborazione sono disponibili nel file system locale
  • Se vogliamo che Hive gestisca l'intero ciclo di vita dei dati, inclusa la cancellazione

Esempio di frammento di codice per la tabella interna

1. Per creare la tabella interna

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

2. Caricare i dati nella tabella interna

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

3. Visualizzare il contenuto della tabella

 Hive>select * from guruhive_internaltable;

4. Per eliminare la tabella interna

 Hive>DROP TABLE guruhive_internaltable;

Se lasci cadere guruhive_internaltable, inclusi i suoi metadati e i suoi dati verranno eliminati da Hive.

Dallo screenshot seguente, possiamo osservare l'output

Nel codice sopra e dallo screenshot facciamo le seguenti cose,

  • Crea la tabella interna
  • Carica i dati nella tabella interna
  • Visualizza il contenuto della tabella
  • Per eliminare la tabella interna

Tavoli esterni

  • Il tavolo esterno è di natura liberamente accoppiata. I dati saranno disponibili in HDFS. La tabella verrà creata sui dati HDFS.
  • In altro modo, possiamo dire come la creazione di uno schema sui dati .
  • Al momento di rilasciare la tabella, viene eliminato solo lo schema, i dati saranno ancora disponibili in HDFS come prima.
  • Le tabelle esterne forniscono un'opzione per creare più schemi per i dati archiviati in HDFS invece di eliminare i dati ogni volta che lo schema si aggiorna

Quando scegliere un tavolo esterno:

  • Se l'elaborazione dei dati è disponibile in HDFS
  • Utile quando i file vengono utilizzati al di fuori di Hive

Esempio di frammento di codice per tabella esterna

1. Crea tabella esterna

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

2. Se non stiamo specificando la posizione al momento della creazione della tabella, possiamo caricare i dati manualmente

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

3. Visualizzare il contenuto della tabella

 Hive>select * from guruhive_external;

4. Per eliminare la tabella interna

 Hive>DROP TABLE guruhive_external;

Dalla seguente schermata, possiamo osservare l'output

Nel codice sopra, facciamo le seguenti cose

  • Crea la tabella esterna
  • Carica i dati nella tabella esterna
  • Visualizza il contenuto della tabella
  • Tavolo esterno cadente

Differenza tra tabelle interne ed esterne

Caratteristica Interno Esterno
Schema Dati sullo schema Schema sui dati
Posizione di archiviazione / usr / hive / warehouse Posizione HDFS
Disponibilità dei dati All'interno del file system locale All'interno di HDFS