Pregrade košnice & Kante s Primjerom

Sadržaj:

Anonim

Tablice, particije i segmenti dijelovi su modeliranja podataka o košnicama.

Što su particije?

Particije košnica način je za organiziranje tablica u particije dijeljenjem tablica u različite dijelove na temelju particijskih ključeva.

Particija je korisna kada tablica ima jedan ili više particijskih ključeva. Particijski ključevi osnovni su elementi za određivanje načina pohrane podataka u tablici.

Na primjer : -

"Klijent ima neke podatke e-trgovine koji pripadaju indijskim operacijama u kojima se svaka država (38 država) spominje u cjelini. Ako uzmemo stupac stanja kao particijski ključ i izvedemo particije na tim indijskim podacima u cjelini, možemo dobiti broj particija (38 particija) koji je jednak broju država (38) prisutnih u Indiji, tako da se podaci svake države mogu zasebno pregledavati u tablicama particija.

Uzorak isječka koda za particije

  1. Stvaranje tablice svih država
create table all states(state string, District string,Enrolments string)row format delimitedfields terminated by ',';
  1. Učitavanje podataka u kreiranu tablicu svih stanja
Load data local inpath '/home/hduser/Desktop/AllStates.csv' into table allstates;
  1. Izrada particijske tablice
create table state_part(District string,Enrolments string) PARTITIONED BY(state string);
  1. Za particiju moramo postaviti ovo svojstvo

    set hive.exec.dynamic.partition.mode=nonstrict
  2. Učitavanje podataka u particijsku tablicu
INSERT OVERWRITE TABLE state_part PARTITION(state)SELECT district,enrolments,state from allstates;
  1. Stvarna obrada i formiranje particijskih tablica na temelju stanja kao particijskog ključa
  2. U HDFS pohrani bit će 38 izlaza na particiji s imenom datoteke kao imenom države. To ćemo provjeriti u ovom koraku

Sljedeće snimke zaslona prikazat će izvršenje gore spomenutog koda

Iz gornjeg koda radimo sljedeće stvari

  1. Stvaranje tablice sa svim državama s 3 stupca, poput države, okruga i upisa
  2. Učitavanje podataka u tablicu svih stanja
  3. Izrada particijske tablice sa stanjem kao particijskim ključem
  4. U ovom koraku Postavljanje načina particije kao nestrogog (Ovaj će način aktivirati način dinamičke particije)
  5. Učitavanje podataka u particijsku tablicu state_part
  6. Stvarna obrada i formiranje particijskih tablica na temelju stanja kao particijskog ključa
  7. U HDFS pohrani bit će 38 izlaza na particiji s imenom datoteke kao nazivom države. To ćemo provjeriti u ovom koraku. U ovom koraku vidimo 38 izlaza particija u HDFS-u

Što su kante?

Kašike u košnici koriste se za razdvajanje podataka tablice košnice u više datoteka ili direktorija. koristi se za učinkovito postavljanje upita.

  • Podaci tj. Prisutni na tim particijama mogu se dalje podijeliti u segmente
  • Podjela se vrši na temelju Hash-a pojedinih stupaca koje smo odabrali u tablici.
  • Segmenti koriste neki oblik algoritma hashiranja na stražnjem kraju kako bi pročitali svaki zapis i smjestili ga u segmente
  • U Hiveu moramo omogućiti segmente pomoću set.hive.enforce.bucketing = true;

Korak 1) Stvaranje kante kao što je prikazano dolje.

Iz gornjeg snimka zaslona

  • Stvaramo sample_bucket s imenima stupaca kao što su first_name, job_id, odjel, plaća i država
  • Stvaramo 4 kante ovdje.
  • Nakon što se podaci automatski učitaju, smjestite ih u 4 segmenta

Korak 2) Učitavanje podataka u skupinu uzoraka tablice

Pod pretpostavkom da je "tablica zaposlenika" već stvorena u sustavu košnica. U ovom ćemo koraku vidjeti učitavanje podataka iz tablice zaposlenika u skupinu uzoraka tablice.

Prije nego što započnemo s premještanjem podataka o zaposlenicima u segmente, pobrinite se da se sastoje od imena stupaca kao što su ime_na_ime, posao_id, odjel, plaća i država.

Ovdje učitavamo podatke u skup uzoraka iz tablice zaposlenika.

Korak 3) Prikazivanje 4 segmenta kreiranih u koraku 1

Iz gornjeg snimka zaslona možemo vidjeti da se podaci iz tablice zaposlenika prenose u 4 segmenta kreirana u koraku 1.