Wat is een bijenkorf?

Voordat we de Hive Data Types eerst begrijpen, zullen we de Hive bestuderen. Hive is een data warehousing-techniek van Hadoop. Hadoop is het segment voor gegevensopslag en -verwerking van Big Data-platform. Hive neemt zijn positie in voor vervolgtechnieken voor gegevensverwerking. Net als andere vervolgomgevingen kan bijenkorf worden bereikt via vervolgvragen. De belangrijkste aanbiedingen van Hive zijn data-analyse, ad-hoc query's en een samenvatting van de opgeslagen gegevens vanuit een latentieperspectief, de vragen gaan een groter bedrag.

Hive-gegevenstypen

Datatypes zijn onderverdeeld in twee soorten:

  • Primitieve gegevenstypen
  • Collectieve gegevenstypen

1. Primitieve gegevenstypen

Primitieve middelen waren oud en oud. alle gegevenstypen die als primitief worden vermeld, zijn oude. de onderstaande belangrijke primitieve datatypes:

Type Grootte (byte) Voorbeeld
tinyint 1 20
smallint 2 20
Int 4 20
bigint 8 20
Boolean Boolean waar / niet waar VALSE
Dubbele 8 10, 2222
Vlotter 4 10, 2222
Draad Volgorde van tekens ABCD
tijdstempel Integer / float / koord 2/3/2012 12: 34: 56: 1234567
Datum Integer / float / koord 2019/02/03

Hive-gegevenstypen worden geïmplementeerd met behulp van JAVA

Vb: Java Int wordt hier gebruikt om het Int-gegevenstype te implementeren.

  • Tekenreeksen worden niet ondersteund in HIVE.
  • Hive vertrouwt op scheidingstekens om zijn velden te scheiden, bijenkorf op coördinatie met Hadoop maakt het mogelijk om de schrijfprestaties en leesprestaties te verbeteren.
  • Het specificeren van de lengte van elke kolom wordt niet verwacht in de componentdatabase.
  • Stringliteralen kunnen worden gearticuleerd binnen dubbele aanhalingstekens (“) enkele aanhalingstekens (').
  • In een nieuwere versie van de component worden Varchar-typen geïntroduceerd en ze vormen een span-specificator van (te midden van 1 en 65535), dus voor een tekenreeks fungeert dit als de grootste lengte van waarde die het aankan. Wanneer een waarde groter dan deze lengte wordt ingevoegd, worden de meest rechtse elementen van die waarden afgekapt. Tekenlengte is resolutie met het cijfer van codepunten dat wordt bestuurd door de tekenreeks.
  • Alle letterlijke getallen (TINYINT, SMALLINT, BIGINT) worden in principe als INT-gegevenstypen beschouwd en alleen de lengte overschrijdt het werkelijke int-niveau dat het wordt omgezet in een BIGINT of een ander respectief type.
  • Decimale letterlijke waarden bieden gedefinieerde waarden en superieure verzameling voor drijvende-kommawaarden in vergelijking met het type DUBBEL. Hier worden numerieke waarden exact in hun vorm opgeslagen, maar in het geval van dubbele waarden worden ze niet exact als numerieke waarden opgeslagen.

Datum Waarde Castingproces

Casting uitgevoerd Resultaat
cast (datum als datum) Dezelfde datumwaarde
cast (tijdstempel als datum) Een lokale tijdzone wordt gebruikt om de jaar / maand / datumwaarden hier te evalueren en afgedrukt in de uitvoer.
cast (string als datum) Als resultaat van deze casting wordt een overeenkomstige datumwaarde gevraagd, maar we moeten ervoor zorgen dat de tekenreeks het formaat 'JJJJ-MM-DD' heeft. Null wordt geretourneerd wanneer de tekenreekswaarde geen geldige overeenkomst oplevert.
cast (datum als tijdstempel) Volgens de huidige lokale tijdzone wordt een tijdstempelwaarde gemaakt voor dit castingproces
cast (datum als tekenreeks) JJJJ-MM-DD wordt gevormd voor de waarde voor jaar / maand / datum en de uitvoer heeft de tekenreeksindeling.

2. Verzameling gegevenstypen

Er zijn vier verzameling gegevenstypen in de component die ze ook als complexe gegevenstypen worden genoemd.

  • ARRAY
  • KAART
  • STRUCT
  • UNIONTYPE

1. ARRAY: een reeks elementen van een gemeenschappelijk type die kan worden geïndexeerd en de indexwaarde begint vanaf nul.

Code:

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

2. MAP: dit zijn elementen die worden gedeclareerd en opgehaald met sleutel / waarde-paren.

Code:

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

3. STRUCT: Net als in C is de struct een gegevenstype dat een set velden verzamelt die zijn gelabeld en van elk ander gegevenstype kunnen zijn.

Code:

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 een van de opgegeven gegevenstypen bevatten.

Code:

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

Output:

Verschillende scheidingstekens die in complexe gegevenstypen worden gebruikt, worden hieronder vermeld,

Delimiter Code Beschrijving
\ n \ n Record of rij scheidingsteken
A (Ctrl + A) \ 001 Veldscheidingsteken
B (Ctrl + B) \ 002 STRUCTEN EN ARRAYS
C (Ctrl + C) \ 003 MAP's

Voorbeeld van complexe gegevenstypen

Hieronder staan ​​de voorbeelden van complexe gegevenstypen:

1. TABELCREATIE

Code:

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. GEGEVENSTABELGEGEVENS

Code:

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. DE GEGEVENS LADEN

Code:

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

4. BEKIJKEN VAN DE GEGEVENS

Code:

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

Conclusie - Hive Data Types

Omdat het een relationele DB is en toch een Sequel verbindt, biedt de HIVE alle belangrijke eigenschappen van gebruikelijke SQL-databases op een zeer geavanceerde manier, waardoor dit een van de efficiëntere gestructureerde gegevensverwerkingseenheden in Hadoop is.

Aanbevolen artikelen

Dit is een gids voor Hive Data Type. Hier bespreken we twee typen in componentgegevens met de juiste voorbeelden. U kunt ook onze andere gerelateerde artikelen doornemen voor meer informatie -

  1. Wat is een bijenkorf?
  2. Bijenkorf alternatieven
  3. Bijenkorf ingebouwde functies
  4. Hive Interview Vragen
  5. PL / SQL-gegevenstypen
  6. Voorbeelden van ingebouwde Python-functies
  7. Verschillende soorten SQL-gegevens met voorbeelden

Categorie: