Šioje pamokoje galima stebėti lentelių operacijas, pvz., „Avilio“ lentelių kūrimas, pakeitimas ir numetimas .
Žemiau esančioje ekrano kopijoje kuriame lentelę su stulpeliais ir keičiame lentelės pavadinimą.
1. Sukurkite lentelę „guru_sample“ su dviem stulpelių pavadinimais, tokiais kaip „empid“ ir „empname“.
2. Lentelių, esančių „guru99“ duomenų bazėje, rodymas
3. Guru_pavyzdys, rodomas po lentelėmis
4. Lentelės „guru_sample“ pakeitimas kaip „guru_sampleNew“
5. Vėlgi, kai vykdote komandą „show“, ji parodys naują pavadinimą „Guru_sampleNew“
Dropping table guru_sampleNew:
Stalų tipai ir jų naudojimas:
Eiti į lenteles yra lygiai taip pat, kaip mes kuriame tradicinėse santykių duomenų bazėse. Lentelėse galima atlikti tokias funkcijas kaip filtravimas, sujungimai.
„Hive“ nagrinėja dviejų tipų lentelių struktūras, pvz., Vidines ir išorines lenteles, atsižvelgiant į „Hive“ schemos įkėlimą ir dizainą.
Vidinės lentelės
- Vidinė lentelė yra glaudžiai susijusi. Šio tipo lentelėje pirmiausia turime sukurti lentelę ir įkelti duomenis.
- Mes galime tai pavadinti schemos duomenimis .
- Nuleidę šią lentelę, duomenys ir schema bus pašalinti.
- Saugoma šios lentelės vieta bus / user / avilys / sandėlis.
Kada pasirinkti vidinę lentelę:
- Jei tvarkymo duomenys prieinami vietinėje failų sistemoje
- Jei norime, kad „Hive“ tvarkytų visą duomenų gyvavimo ciklą, įskaitant ištrynimą
Vidinės lentelės kodo fragmento pavyzdys
1. Norėdami sukurti vidinę lentelę
Hive>CREATE TABLE guruhive_internaltable (id INT,Name STRING);Row format delimitedFields terminated by '\t';
2. Įdėkite duomenis į vidinę lentelę
Hive>LOAD DATA INPATH '/user/guru99hive/data.txt' INTO table guruhive_internaltable;
3. Parodykite lentelės turinį
Hive>select * from guruhive_internaltable;
4. Numesti vidinę lentelę
Hive>DROP TABLE guruhive_internaltable;
Jei numetėte „guruhive_internaltable“, įskaitant jo metaduomenis ir duomenis, jie bus ištrinti iš avilio.
Iš šios ekrano kopijos galime stebėti išvestį
Aukščiau pateiktame kode ir ekrano kopijoje mes atliekame tokius dalykus,
- Sukurkite vidinę lentelę
- Įkelkite duomenis į vidinę lentelę
- Rodyti lentelės turinį
- Numesti vidinę lentelę
Išorinės lentelės
- Išorinis stalas yra laisvai sujungtas. Duomenys bus prieinami HDFS. Lentelė bus kuriama naudojant HDFS duomenis.
- Kitu būdu galime pasakyti, kaip duomenų sukūrimo schema .
- Metant lentelę ji numeta tik schemą, duomenys vis tiek bus prieinami HDFS, kaip ir anksčiau.
- Išorinės lentelės suteikia galimybę sukurti kelias HDFS saugomų duomenų schemas, užuot ištrynus duomenis kiekvieną kartą, kai schema atnaujinama
Kada pasirinkti išorinę lentelę:
- Jei apdorojami HDFS turimi duomenys
- Naudinga, kai failai naudojami ne avilyje
Išorinės lentelės kodo fragmento pavyzdys
1. Sukurkite išorinę lentelę
Hive>CREATE EXTERNAL TABLE guruhive_external(id INT,Name STRING)Row format delimitedFields terminated by '\t'LOCATION '/user/guru99hive/guruhive_external;
2. Jei lentelės kūrimo metu nenurodome vietos, duomenis galime įkelti rankiniu būdu
Hive>LOAD DATA INPATH '/user/guru99hive/data.txt' INTO TABLE guruhive_external;
3. Parodykite lentelės turinį
Hive>select * from guruhive_external;
4. Numesti vidinę lentelę
Hive>DROP TABLE guruhive_external;
Iš šio ekrano kadro galime stebėti išvestį
Ankstesniame kode mes atliekame šiuos dalykus
- Sukurkite išorinę lentelę
- Įkelkite duomenis į išorinę lentelę
- Rodyti lentelės turinį
- Nuleidžiamas išorinis stalas
Skirtumas tarp vidinių Vs išorinių lentelių
Funkcija | Vidinis | Išorinis |
---|---|---|
Schema | Duomenys apie schemą | Duomenų schema |
Saugyklos vieta | / usr / avilys / sandėlis | HDFS vieta |
Duomenų prieinamumas | Vietos bylų sistemoje | HDFS |