Čo je Úľ?
Predtým, ako najprv pochopíme typy údajov o úli, budeme študovať úľ. Úľ je technikou skladovania údajov spoločnosti Hadoop. Hadoop je segment ukladania a spracovania dát veľkej dátovej platformy. Úľ si drží pozíciu v oblasti techník spracovania údajov o pokračovaní. Podobne ako iné pokračovacie prostredia, aj na úľ sa dá dostať prostredníctvom dopytov na pokračovanie. Hlavnými ponukami úľa sú analýza údajov, ad-hoc dotazovanie a sumarizácia uložených údajov z hľadiska latencie, dotazy idú viac.
Typy úľa
Typy údajov sú rozdelené do dvoch typov:
- Primitívne typy údajov
- Typy kolektívnych údajov
1. Primitívne typy údajov
Primitívne prostriedky boli staré a staré. všetky typy údajov uvedené ako primitívne sú staré. nižšie uvedené dôležité primitívne oblasti údajov:
typ | Veľkosť (bajt) | príklad |
tINYINT | 1 | 20 |
SMALLINT | 2 | 20 |
Int | 4 | 20 |
bigint | 8 | 20 |
boolean | Booleovská pravda / nepravda | FALSE |
dvojitý | 8 | 10, 2222 |
Plavák | 4 | 10, 2222 |
povrázok | Postupnosť znakov | A B C D |
Časová značka | Integer / float / string | 2/3/2012 12: 34: 56: 1234567 |
Dátum | Integer / float / string | 02.3.2019 |
Dátové typy úľa sa implementujú pomocou JAVA
Príklad: Java Int sa tu používa na implementáciu typu údajov Int.
- Znakové polia nie sú v HIVE podporované.
- Úľ sa spolieha na oddeľovače, aby oddelil svoje polia. Úľ na koordinácii s Hadoop umožňuje zvýšiť výkon zápisu a čítania.
- V databáze úľov sa neočakáva zadanie dĺžky každého stĺpca.
- Literálové reťazce môžu byť vyjadrené v jednoduchých úvodzovkách („)“.
- V novšej verzii úľa sa zavádzajú typy Varchar, ktoré tvoria špecifikátor rozpätia (uprostred 1 a 65535). Takže pre reťazec znakov to predstavuje najväčšiu dĺžku hodnoty, ktorú dokáže prispôsobiť. Ak je vložená hodnota presahujúca túto dĺžku, orezajú sa najzadnejšie prvky týchto hodnôt. Dĺžka znaku je rozlíšenie s počtom kódových bodov riadených znakovým reťazcom.
- Všetky celočíselné literály (TINYINT, SMALLINT, BIGINT) sa v zásade považujú za dátové typy INT a iba dĺžka presahuje skutočnú úroveň int, ktorá sa premení na BIGINT alebo akýkoľvek iný príslušný typ.
- Desatinné literály umožňujú v porovnaní s typom DOUBLE definované hodnoty a vynikajúci zber hodnôt s pohyblivou rádovou čiarkou. Číselné hodnoty sa tu ukladajú v ich presnej podobe, ale v prípade dvojnásobku sa neukladajú presne ako číselné hodnoty.
Proces odovzdávania hodnoty dátumu
Odlievanie bolo vykonané | výsledok |
obsadenie (dátum ako dátum) | Rovnaká hodnota dátumu |
obsadenie (časová pečiatka ako dátum) | Miestne časové pásmo sa tu používa na vyhodnotenie hodnôt roku / mesiaca / dátumu a tlačí sa na výstupe. |
obsadenie (reťazec ako dátum) | Výsledkom tohto odovzdania bude výzva na zodpovedajúcu hodnotu dátumu, ale musíme sa ubezpečiť, že reťazec má formát „RRRR-MM-DD“. Null sa vráti, keď sa hodnote reťazca nepodarí dosiahnuť platnú zhodu. |
obsadenie (dátum ako časová pečiatka) | Podľa aktuálneho miestneho časového pásma sa pre tento proces odovzdávania vytvorí hodnota časovej pečiatky |
obsadenie (dátum ako reťazec) | RRRR-MM-DD je zostavený pre hodnotu rok / mesiac / dátum a výstup bude mať reťazcový formát. |
2. Typy údajov o zbere
V úli sú štyri dátové typy kolekcie, ktoré sa tiež nazývajú komplexnými dátovými typmi.
- POLE
- MAP
- struct
- UNIONTYPE
1. ARRAY: Sekvencia prvkov bežného typu, ktoré je možné indexovať a hodnota indexu začína od nuly.
kód:
array ('anand', 'balaa', 'praveeen');
2. MAP: Sú to prvky, ktoré sú deklarované a získané pomocou párov kľúč - hodnota.
kód:
'firstvalue' -> 'balakumaran', 'lastvalue' -> 'pradeesh' is represented as map('firstvalue', 'balakumaran', 'last', 'PG'). Now 'balakumaran ' can be retrived with map('first').
3. STRUCT: Rovnako ako v C, struct je dátový typ, ktorý akumuluje množinu polí, ktoré sú označené a môžu mať akýkoľvek iný typ údajov.
kód:
For a column D of type STRUCT (Y INT; Z INT) the Y field can be retrieved by the expression DY
4. UNIONTYPE: Únia môže uchovávať ktorýkoľvek zo špecifikovaných typov údajov.
kód:
CREATE TABLE test(col1 UNIONTYPE )
CREATE TABLE test(col1 UNIONTYPE )
Výkon:
Nižšie sú uvedené rôzne oddeľovače používané v zložitých typoch údajov,
oddeľovač | kód | popis |
\ n | \ n | Oddeľovač záznamu alebo riadku |
A (Ctrl + A) | \ 001 | Oddeľovač poľa |
B (Ctrl + B) | \ 002 | STRUCTS A ARRAYS |
C (Ctrl + C) | \ 003 | MAP je |
Príklad zložitých dátových typov
Nižšie sú uvedené príklady zložitých typov údajov:
1. TABUĽKA VYTVÁRANIA
kód:
create table store_complex_type (
emp_id int,
name string,
local_address STRUCT,
country_address MAP,
job_history array)
row format delimited fields terminated by ', '
collection items terminated by ':'
map keys terminated by '_';
2. ÚDAJE O VZOROVÝCH TABUĽKÁCH
kód:
100, Shan, 4th : CHN : IND : 600101, CHENNAI_INDIA, SI : CSC
101, Jai, 1th : THA : IND : 600096, THANJAVUR_INDIA, HCL : TM
102, Karthik, 5th : AP : IND : 600089, RENIKUNDA_INDIA, CTS : HCL
3. NAKLADANIE ÚDAJOV
kód:
load data local inpath '/home/cloudera/Desktop/Hive_New/complex_type.txt' overwrite into table store_complex_type;
4. ZOBRAZENIE ÚDAJOV
kód:
select emp_id, name, local_address.city, local_address.zipcode, country_address('CHENNAI'), job_history(0) from store_complex_type where emp_id='100';
Záver - typy údajov Úľa
Keďže HIVE je na relačnej databáze a napriek tomu sa pripája k Sequel, HIVEop ponúka všetky kľúčové vlastnosti obvyklých databáz SQL veľmi sofistikovaným spôsobom, čo ho robí jednou z najúčinnejších štruktúrovaných jednotiek na spracovanie údajov v Hadoop.
Odporúčané články
Toto je príručka k typu údajov Úľa. Tu diskutujeme dva typy údajov o úľoch s príslušnými príkladmi. Viac informácií nájdete aj v ďalších súvisiacich článkoch -
- Čo je Úľ?
- Alternatívy úľa
- Vstavané funkcie Úľa
- Rozhovor Otázky na Hive
- Údajové typy PL / SQL
- Príklady zabudovaných funkcií Pythonu
- Rôzne typy údajov SQL s príkladmi