Hva er en bikube?

Før vi først forstår Hive-datatypene, vil vi studere bikuben. Hive er en datalagringsteknikk fra Hadoop. Hadoop er datalagrings- og behandlingssegmentet til Big data-plattformen. Hive har sin posisjon for oppfølgende databehandlingsteknikker. Som andre oppfølgingsmiljøer kan man oppnå bikube gjennom oppfølgingsspørsmål. De viktigste tilbudene med hive er dataanalyse, ad-hoc spørring og oppsummere lagrede data fra et latenstidsperspektiv. Spørsmålene blir større.

Datastyper

Datatyper er klassifisert i to typer:

  • Primitive datatyper
  • Kollektive datatyper

1. Primitive datatyper

Primitive midler var gamle og gamle. alle datatyper som er oppført som primitive er eldre. de viktige primitive datatypene områdene listet nedenfor:

Type Størrelse (byte) Eksempel
TinyInt 1 20
SMALLINT 2 20
int 4 20
bigint 8 20
boolean Boolsk sant / usant FALSK
Dobbelt 8 10, 2222
Flyte 4 10, 2222
string Sekvens av tegn ABCD
Tidsstempel Integer / flottør / string 2/3/2012 12: 34: 56: 1234567
Dato Integer / flottør / string 2/3/2019

Hive-datatyper implementeres ved bruk av JAVA

Eks: Java Int brukes til å implementere Int-datatypen her.

  • Tegnarrayer støttes ikke i HIVE.
  • Hive er avhengig av avgrensere for å skille felt, ved at koordinering med Hadoop gjør det mulig å øke skriveprestasjonen og leseytelsen.
  • Å angi lengden på hver kolonne forventes ikke i bikubedatabasen.
  • Strenglitterære kan artikuleres i enten dobbelt sitater (“) enkelt sitater (').
  • I en nyere versjon av bikuben blir Varchar-typer introdusert og de danner en spennspesifisering av (midt mellom 1 og 65535). Så for en karakterstreng fungerer dette som den største verdilengden den kan romme. Når en verdi overstiger denne lengden blir satt inn, blir elementene til høyre i de verdiene avkortet. Karakterlengde er oppløsning med figuren av kodepunkter kontrollert av karakterstrengen.
  • Alle heltallstalere (TINYINT, SMALLINT, BIGINT) blir i utgangspunktet betraktet som INT-datatyper, og bare lengden overstiger det faktiske int-nivået det blir overført til en BIGINT eller annen respektive type.
  • Desimal literals gir definerte verdier og overlegen samling for flytende punktverdier sammenlignet med DOUBLE-typen. Her lagres numeriske verdier på sin eksakte form, men i tilfelle dobbelt, lagres de ikke nøyaktig som numeriske verdier.

Prosess for avstøpning av datoverdi

Casting utført Resultat
rollebesetning (dato som dato) Samme datoverdi
rollebesetning (tidsstempel som dato) En lokal tidssone brukes til å evaluere år / måned / datoverdiene her og skrives ut i utdataene.
rollebesetning (streng som dato) En tilsvarende datoverdi vil bli bedt om som et resultat av denne castingen, men vi må sørge for at strengen er av formatet 'YYYY-MM-DD'. Null blir returnert når strengverdien ikke klarer å lage en gyldig samsvar.
rollebesetning (dato som tidsstempel) I henhold til gjeldende lokal tidssone vil det opprettes en tidsstempelverdi for denne avstøpningsprosessen
rollebesetning (dato som streng) ÅÅÅÅ-MM-DD er dannet for verdien for år / måned / dato og utdataene har strengformat.

2. Datatyper for samling

Det er fire samlingsdatatyper i bikuben, de blir også betegnet som komplekse datatyper.

  • ARRAY
  • KART
  • STRUCT
  • UNIONTYPE

1. ARRAY: En sekvens av elementer av en vanlig type som kan indekseres og indeksverdien starter fra null.

Kode:

array ('anand', 'balaa', 'praveeen');

2. KART: Dette er elementer som deklareres og hentes ved hjelp av nøkkelverdipar.

Kode:

'firstvalue' -> 'balakumaran', 'lastvalue' -> 'pradeesh' is represented as map('firstvalue', 'balakumaran', 'last', 'PG'). Now 'balakumaran ' can be retrived with map('first').

3. STRUKTUR: Som i C, er strukturen en datatype som akkumulerer et sett med felt som er merket og kan være av hvilken som helst annen datatype.

Kode:

For a column D of type STRUCT (Y INT; Z INT) the Y field can be retrieved by the expression DY

4. UNIONTYPE: Union kan inneholde hvilken som helst av de spesifiserte datatypene.

Kode:

CREATE TABLE test(col1 UNIONTYPE ) CREATE TABLE test(col1 UNIONTYPE )

Produksjon:

Ulike avgrensere brukt i komplekse datatyper er listet nedenfor,

delimiter Kode Beskrivelse
\ n \ n Ta opp eller radavgrenser
A (Ctrl + A) \ 001 Feltavgrensning
B (Ctrl + B) \ 002 STRUKTER og REKKER
C (Ctrl + C) \ 003 MAP er

Komplekse datatyper Eksempel

Nedenfor er eksemplene på komplekse datatyper:

1. BORDSKAPING

Kode:

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. PRØVEBORDDATA

Kode:

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. LAST DATA

Kode:

load data local inpath '/home/cloudera/Desktop/Hive_New/complex_type.txt' overwrite into table store_complex_type;

4. SE DATA

Kode:

select emp_id, name, local_address.city, local_address.zipcode, country_address('CHENNAI'), job_history(0) from store_complex_type where emp_id='100';

Konklusjon - Hive datatyper

Å være en relasjonell DB og likevel en Sequel kobler HIVE og tilbyr alle nøkkelegenskapene til vanlige SQL-databaser på en veldig sofistikert måte som gjør denne til en av de mer effektive strukturerte databehandlingsenhetene i Hadoop.

Anbefalte artikler

Dette er en guide til Hive Data Type. Her diskuterer vi to typer hive-datatyper med riktige eksempler. Du kan også gå gjennom andre relaterte artikler for å lære mer -

  1. Hva er en bikube?
  2. Hive-alternativer
  3. Hive innebygde funksjoner
  4. Spørsmål om Hive-intervju
  5. PL / SQL-datatyper
  6. Eksempler på innebygde Python-funksjoner
  7. Ulike typer SQL-data med eksempler

Kategori: