Kiel krei vian unuan HIVEan skribon?

Superrigardo:

Apache Hive estas havenda parto de Hadoop eco-sistemo. Hive povas esti difinita kiel datuma staplo kiel softvaro kiu faciligas demandon kaj grandan datuman administradon sur HDFS (Hadoop distribuita dosieran sistemon). Unu devas memori ke Hive ne estas datuma staplo softvaro prefere ĝi provizas iun mekanismon administri datumon sur distribuita medion kaj pridemandi ĝin de uzanta SQL-kiel lingvo vokis HiveQL aŭ HIVEan Demandon Lingvo. Hive skriboj povas esti difinita kiel grupo de Hive komandoj enpakis kune redukti la ekzekutan tempon. En ĉi tiu artikolo mi diskutos pri la Hive skriboj kaj ĝia ekzekuto.

Enkonduko:

HDFS aŭ Hadoop Distribuita Dosieran Sistemon provizas scalable kaj misfaron tolerant ebligis datuman tenadon. HIVE provizas simplan SQL kiel demanda lingvo – HIVEa QL. HIVEa QL permesas la tradician mapon reduktas ellaborantojn ŝtopi-en ilia laŭmenda mappers kaj reducers fari pli da altnivelan analizon.

Limo de HIVE:

Latency por HIVEaj demandoj estas kutime tre alta pro la granda overheads en laborpostena propono kaj enhorariganta. Hive ne proponas verajn tempajn demandojn kaj disputa nivelo ĝisdatigoj. Ĝi estas plej bone uzita por ŝtipa analizo.

HIVEa Datumo Unuoj:

Hive datumo estas organizita en sekvanta kvar kategoriojn:

  • Datumaroj: Tio ĉi konsistas de la namespaces kiu apartigas la tablojn kaj aliajn datumajn unuojn eviti nomajn konfliktojn.
  • Tabloj: Ĉi tiuj estas homogeneous unuoj de datumo havanta oftan schema. Ofte uzita ekzemplon povus esti de paĝa vida tablo kie ĉiu disputo povas havi la sekvantajn kolumnojn :
  • USERID
  • IPADDRESS
  • LASTE ALIRITA
  • PAĜA URL

Ĉi tiu ekzemplo enlistigas la rekordon de la uzado de retejo aŭ apliko por individuaj uzantoj.

  • Septoj: Septoj determinas kiel la datumon estas entenita. Ĉiu tablo povas havi unu aŭ multoblaj septoj. Septoj ankaŭ helpas uzantojn efike identigi la disputojn kiu kontentigas certajn elektajn kriteriojn.
  • siteloj aŭ Grapoloj: Datumo en ĉiu septo povas esti cetere sudividita en siteloj aŭ grapoloj aŭ blokoj. La datumo en la supra ekzemplo povas esti clustered bazita sur la uzanta identigaĵo aŭ sur la ip adreso aŭ sur la paĝo url kolumno.

HIVEa Datumo Tipoj:

Bazita sur la bezono, HIVE subtenas primitivan kaj kompleksan datumon tipoj kiel priskribita sub:

  • Primitivaj tipoj:
    • INTEGRALOJ
      • ETA INT 1 Byte integralo
      • MALGRANDA INT 2 Byte integralo
      • INT 4 Byte integralo
      • BIGINT 8 Byte integralo
    • BOOLEA
      • BOOLEA TRUE aŭ FALSE
    • FLOSIGANTA PUNKTAJN nombrojn
      • FLOSIGI Ununuran precizecon
      • DUOBLA Duobla precizeco
    • ŜNURA tipo
      • ŜNURA Sinsekvo de karakteroj
    • Kompleksaj Tipoj: Kompleksaj tipoj povas esti konstruita uzanta primitivajn datumajn tipojn kaj aliajn sintezajn tipojn kun la helpo de :
      • Structs
      • mapoj aŭ kernaj valoraj paroj
      • Aroj – Indeksita listojn

HIVE Scripting:

Simila al iu ajn alia scripting lingvo, HIVEaj skriboj estas uzita efektivigi aron de HIVE komandas kolektive. HIVE scripting helpas nin redukti la tempon kaj penon investita en skribo kaj efektiviganta la individuajn komandojn mane. HIVE scripting estas subtenita en HIVE 0.10.0 Aŭ pli altaj versioj de HIVE. Skribi kaj efektivigi HIVEan skribon, Ni devas instali Cloudera disdonado por Hadoop CDH4.

Skribanta HIVEajn SKRIBOJN:

Unue, Malfermi terminalon en via Cloudera CDH4 disdonado Kaj doni la malsupre komandan krei Hive Skribo.

Komando: Gedit ekzemplo.Sql

Simila al iu ajn alia demanda lingvo, La Hive skriba dosiero Devus esti savita kun .Sql Etendaĵo. Tio ĉi ebligos la ekzekuton de la komandoj. Nun malfermi la dosieron en Redakti manieron kaj skribi via Hive komandoj kiu estos efektivigita uzanta ĉi tiun skribon. En ĉi tiu ekzempla skribo, Ni faros la sekvantajn taskojn sequentially (Krei, Priskribi kaj tiam ŝarĝi la datumon en la tablo. Kaj tiam repreni la datumon de tablo).

· Krei tablan ‘produkton' en Hive:

Komando: Krei tablan produkton_dtl ( Produkta_identigaĵo: Int, Produkto-nomo: Ŝnuro, Produkta_prezo: Flosigi, Produkta_kategorio: Ŝnuro) Disputa formato delimited kaptas finita de ‘,' ;

Ĉi tie { Produkta_identigaĵo, Produkto-nomo, Produkta_prezo, Produkta_kategorio} Estas nomoj de la kolumnoj en la ‘produkto_dtl' tablo. “Kampoj Finita de ‘,' ” Indikas ke la Kolumnoj En la eniga dosiero estas apartigita de la ‘,' Delimiter. Vi ankaŭ povas uzi alia delimiters kiel por via postulo. Ekzemple, Ni povas konsideri la rekordojn en eniga dosiero apartigita de Nova linio (‘N') Karaktero.

· Priskribi la Tablon:

Komando: Priskribi produkton_dtl;

· Ŝarĝi la datumon en la Tablo:

Nun, Lasita-a kontrolo la datumo ŝarĝanta parton. Krei enigan dosieron kiu enhavas la rekordojn kiu devas esti insertita en la tablo.

Komando: Sudo gedit enigo.Txt

Nun lasita-a krei malabundajn rekordojn en la Eniga teksto Registri kiel montrita en la cifero sub –

Input File

Cifero 1: Eniga dosiero.

Tiel, Nia eniga dosiero similos –

1, Tekkomputilo, 45000, Komputiloj

2, Krajonoj, 2, Stationery

3, Rizo, 64.45, Nutraĵvendejo

4, Meblo, 65000, Internoj
Ŝarĝi la datumon de ĉi tiu dosiero ni devas efektivigi la sekvantaron –

Komando: Ŝarĝa datumo loka inpath ‘/hejme/cloudera/enigo.Txt' en tabla produkto_dtl;

Reprenanta la Datumon:

Repreni la datumon ni uzas la simplan elektitan komunikaĵon kiel nesufiĉe –

Komando: Elektita * De produkto_dtl;

La supra komando efektivigos kaj venigi ĉiuj la rekordoj de la tablo ‘Produkto'.

La skribo similos la sekvantan bildon:

SQL File

Cifero 2: La ekzempla SQLa dosiero

Savi ĉi tiun ekzemplon.Sql dosiero kaj kuri la sekvantan komandon

Komando: Hive –f /hejme/cloudera/ekzemplo.Sql

Dum efektiviganta la skribon, Mencii la Tuta vojo De la Skriba loko. Ĉi tie la ekzempla skribo estas donaco en la Nuna adresaro; Mi ne provizis la kompletan vojon de la skribo.

La sekvanta bildo montras ke ĉiuj la komandoj estis efektivigita sukcese.

La sekvanta produktado montras ke la tablo estas kreita kaj la datumo de nia ekzempla eniga dosiero estas entenita en la datumaro.

?

1 Tekkomputilo 45000 Komputiloj

2 Krajonoj 2 Stationery

3 Rizo 64.45 Nutraĵvendejoj

4 Meblo 65000 Internoj

Resuma:

Antaŭ ol konkludanta nian diskuton, Ni devas teni noton de la sekvantaj punktoj

  • Apache HIVE estas havenda parto de HDFS
  • HIVE estas SQL kiel demanda lingvo
  • HIVEa skribo estas facile kompreni kaj efektivigi
  • Hive subtenas ambaŭ primitivajn datumajn tipojn kaj kompleksajn datumajn tipojn.
Etikedita sur:
============================================= ============================================== Buy best TechAlpine Books on Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Enjoy this blog? Please spread the word :)

Follow by Email
LinkedIn
LinkedIn
Share