Hive Opret tabel: Internt bord, Alter, Drop med eksempler

Bordlampe Operationer som f.eks Oprettelse, รฆndring og droppe tabeller i Hive kan ses i denne รธvelse.

I nedenstรฅende skรฆrmbillede opretter vi en tabel med kolonner og รฆndrer tabelnavnet.

1. Oprettelse af tabel guru_sample med to kolonnenavne sรฅsom "empid" og "empname"

2. Viser tabeller til stede i guru99 database

3. Guru_sample vises under tabeller

4. ร†ndring af tabellen "guru_sample" som "guru_sampleNew"

5. Igen, nรฅr du udfรธrer "show" kommandoen, vil den vise det nye navn Guru_sampleNew

Hive Opret tabel

Dropping table guru_sampleNew:

Hive Opret tabel

Tabeltyper og dens anvendelse

Kommer til tabeller det er ligesom den mรฅde, vi skaber i traditionelle relationelle databaser. Funktionaliteterne sรฅsom filtrering, joins kan udfรธres pรฅ tabellerne.

Hive omhandler to typer tabelstrukturer som f.eks Internt og eksternt tabeller afhรฆngig af indlรฆsning og design af skema i Hive.

Indvendige borde

  • Internt bord er tรฆt koblet i naturen. I denne type tabel skal vi fรธrst oprette tabel og indlรฆse dataene.
  • Vi kan kalde denne som data pรฅ skema.
  • Ved at droppe denne tabel vil bรฅde data og skema blive fjernet.
  • Den gemte placering af denne tabel vil vรฆre pรฅ /user/hive/warehouse.

Hvornรฅr skal man vรฆlge internt bord?

  • Hvis behandlingsdataene er tilgรฆngelige i det lokale filsystem
  • Hvis vi รธnsker, at Hive skal administrere hele livscyklussen af โ€‹โ€‹data, inklusive sletningen

Eksempelkodestykke til internt bord

1. For at oprette den interne tabel

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

2. Indlรฆs dataene i den interne tabel

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

3. Vis indholdet af tabellen

    Hive>select * from guruhive_internaltable;

4. For at slippe den interne tabel

    Hive>DROP TABLE guruhive_internaltable;

Hvis du droppede guruhive_internaltable, vil inklusive dens metadata og dens data blive slettet fra Hive.

Fra fรธlgende skรฆrmbillede kan vi observere outputtet

Interne tabeller

I ovenstรฅende kode og fra skรฆrmbillede gรธr vi fรธlgende ting,

  • Opret den interne tabel
  • Indlรฆs dataene i den interne tabel
  • Vis indholdet af tabellen
  • For at droppe den interne tabel

Eksterne borde

  • Eksternt bord er lรธst koblet i naturen. Data vil vรฆre tilgรฆngelige i HDFS. Tabellen vil blive oprettet pรฅ HDFS-data.
  • Pรฅ anden mรฅde kan vi sige, at det er at skabe skema om data.
  • Pรฅ tidspunktet for sletning af tabellen dropper det kun skemaet, dataene vil stadig vรฆre tilgรฆngelige i HDFS som fรธr.
  • Eksterne tabeller giver mulighed for at oprette flere skemaer for de data, der er gemt i HDFS i stedet for at slette dataene hver gang, nรฅr skemaet opdateres

Hvornรฅr skal man vรฆlge eksternt bord?

  • Hvis der behandles data tilgรฆngelige i HDFS
  • Nyttigt, nรฅr filerne bruges uden for Hive

Eksempelkodestykke til ekstern tabel

1. Opret ekstern tabel

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

2. Hvis vi ikke angiver placeringen pรฅ tidspunktet for oprettelse af tabellen, kan vi indlรฆse dataene manuelt

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

3. Vis indholdet af tabellen

  Hive>select * from guruhive_external;

4. For at slippe den interne tabel

  Hive>DROP TABLE guruhive_external;

Fra fรธlgende skรฆrmbillede kan vi observere outputtet

Eksterne tabeller

I ovenstรฅende kode gรธr vi fรธlgende ting

  • Opret den eksterne tabel
  • Indlรฆs dataene i ekstern tabel
  • Vis indholdet af tabellen
  • Dropper eksternt bord

Forskellen mellem interne vs eksterne tabeller

Feature Intern Ekstern
Planlรฆg Data om skema Skema om data
Opbevaring placering /usr/hive/lager HDFS placering
Data tilgรฆngelighed Inden for det lokale filsystem Inden for HDFS

Opsummer dette indlรฆg med: