Hive Create, Alter & Släpp bord

Innehållsförteckning:

Anonim

Tabellfunktioner som skapande, förändring och släppning av tabeller i Hive kan observeras i den här självstudien.

I skärmbilden nedan skapar vi en tabell med kolumner och ändrar tabellnamnet.

1. Skapa tabell guru_sample med två kolumnnamn som "empid" och "empname"

2. Visar tabeller i guru99-databasen

3. Guru_exempel visas under tabeller

4. Ändra tabell "guru_sample" som "guru_sampleNew"

5. Återigen när du kör "visa" -kommandot, kommer det att visa det nya namnet Guru_sampleNew

Dropping table guru_sampleNew:

Tabelltyper och dess användning:

Att komma till tabeller är det precis som vi skapar i traditionella relationsdatabaser. Funktionerna som filtrering, sammanfogning kan utföras på tabellerna.

Hive behandlar två typer av tabellstrukturer som interna och externa tabeller beroende på laddning och utformning av schema i Hive.

Interna bord

  • Intern tabell är tätt kopplad till sin natur. I denna typ av tabell måste vi först skapa tabell och ladda in data.
  • Vi kan kalla den här som data om schemat .
  • Genom att släppa denna tabell tas både data och schemat bort.
  • Den lagrade platsen för denna tabell kommer att vara på / user / hive / warehouse.

När ska man välja interntabell:

  • Om bearbetningsdata som finns tillgängliga i det lokala filsystemet
  • Om vi ​​vill att Hive ska hantera hela livscykeln för data inklusive radering

Exempelkodavsnitt för intern tabell

1. Skapa den interna tabellen

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

2. Ladda data i den interna tabellen

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

3. Visa innehållet i tabellen

 Hive>select * from guruhive_internaltable;

4. Att tappa den interna tabellen

 Hive>DROP TABLE guruhive_internaltable;

Om du tappade guruhive_internaltable, inklusive dess metadata och dess data kommer att tas bort från Hive.

Från följande skärmdump kan vi observera utdata

I ovanstående kod och från skärmdumpar gör vi följande saker,

  • Skapa den interna tabellen
  • Ladda data i den interna tabellen
  • Visa innehållet i tabellen
  • Att tappa det interna bordet

Externa tabeller

  • Externt bord är löst kopplat till sin natur. Data kommer att finnas tillgängliga i HDFS. Tabellen kommer att skapas på HDFS-data.
  • På annat sätt kan vi säga som att det skapar schema på data .
  • Vid tidpunkten för att tappa tabellen tappar det bara schema, data kommer fortfarande att finnas tillgängliga i HDFS som tidigare.
  • Externa tabeller ger möjlighet att skapa flera scheman för data som lagras i HDFS istället för att ta bort data varje gång schemauppdateringar

När ska man välja extern tabell:

  • Om bearbetning av data är tillgängliga i HDFS
  • Användbart när filerna används utanför Hive

Exempelkodavsnitt för extern tabell

1. Skapa extern tabell

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

2. Om vi ​​inte anger platsen när tabellen skapas kan vi ladda in data manuellt

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

3. Visa innehållet i tabellen

 Hive>select * from guruhive_external;

4. Att tappa den interna tabellen

 Hive>DROP TABLE guruhive_external;

Från följande skärmdump kan vi observera utdata

I ovanstående kod gör vi följande saker

  • Skapa den externa tabellen
  • Ladda data i den externa tabellen
  • Visa innehållet i tabellen
  • Släppande externt bord

Skillnad mellan interna och externa tabeller

Funktion Inre Extern
Schema Uppgifter om schemat Schema för data
Lagringsplats / usr / bikupa / lager HDFS-plats
Datatillgänglighet Inom det lokala filsystemet Inom HDFS