Hive ETL- ja tietovarastointityökaluna Hadoop-ekosysteemin päällä tarjoaa toimintoja, kuten datamallinnus, tietojen käsittely, tietojen käsittely ja tietojen kysely. Data Extraction in Hive tarkoittaa taulukoiden luomista Hiveen ja strukturoitujen ja osittain jäsenneltyjen tietojen lataamista sekä tietojen kyselyä vaatimusten perusteella.
Eräkäsittelyä varten aiomme kirjoittaa mukautettuja komentosarjoja mukautetun kartan avulla ja vähentää komentosarjoja komentosarjakielellä. Se tarjoaa SQL: n kaltaisen ympäristön ja tuen helppoon kyselyyn.
Tässä opetusohjelmassa opit-
- Strukturoidun datan käsittely Hive-sovelluksella
- Työskentely osittain jäsennellyn datan kanssa Hive (XML, JSON)
- Hive reaaliaikaisissa projekteissa - milloin ja missä käyttää
Strukturoidun datan käsittely Hive-sovelluksella
Jäsennelty data tarkoittaa, että tiedot ovat oikeassa muodossa rivejä ja sarakkeita. Tämä on enemmän kuin RDBMS-tietoja, joissa on oikeat rivit ja sarakkeet.
Tässä aiotaan ladata rakenteellisia tietoja Hive-tekstitiedostoissa
Vaihe 1) Tässä vaiheessa luomme taulukon "työntekijät_guru", jossa on sarakkeiden nimet, kuten henkilötunnus, nimi, ikä, osoite, palkka ja osasto työntekijöille, joilla on tietotyypit.
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa,
- Taulukon "työntekijät_guru" luominen
- Ladataan tietoja Employees.txt-tiedostosta taulukkoon "työntekijät_guru"
Vaihe 2) Tässä vaiheessa näytämme tähän taulukkoon tallennetun sisällön "Select" -komennolla. Voimme tarkkailla taulukon sisältöä seuraavassa kuvakaappauksessa.
- Esimerkkikoodinpätkä
Suoritettavat kyselyt
1) Create table employees_guru(Id INT, Name STRING, Age INT, Address STRING, Salary FLOAT, Department STRING)> Row format delimited> Fields terminated by ',';2) load data local inpath '/home/hduser/Employees.txt' into TABLE employees_guru;3) select * from employees_guru;
Työskentely osittain jäsennellyn datan kanssa Hive (XML, JSON)
Hive suorittaa ETL-toiminnot Hadoop-ekosysteemissä toimimalla ETL-työkaluna. Karttavähennys voi olla vaikeaa tietyntyyppisissä sovelluksissa, Hive voi vähentää monimutkaisuutta ja tarjoaa parhaan ratkaisun IT-sovelluksille tietovarastosektorin kannalta.
Puolirakenteisia tietoja, kuten XML ja JSON, voidaan käsitellä vähemmän monimutkaisella tavalla Hivea käyttämällä. Ensin näemme, kuinka voimme käyttää Hiveä XML: ään.
XML HIVE -TAULUKKOON
Tässä aiomme ladata XML-tietoja Hive-taulukoihin ja haemme XML-tageihin tallennetut arvot.
Vaihe 1) Taulukon "xmlsample_guru" luominen merkkijonotietotyyppisellä sarakkeella.
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa
- Taulukon "xmlsample_guru" luominen
- Ladataan tietoja test.xml-taulukosta "xmlsample_guru"
Vaihe 2) XPath () -menetelmällä voimme hakea XML-tageihin tallennetut tiedot.
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa
- Noutamalla XPATH () -menetelmällä arvot, jotka on tallennettu kansioihin / emp / esal / ja / emp / ename /
- XML-tunnisteiden sisällä olevat arvot. Tässä vaiheessa näytämme XML-tunnisteisiin tallennetut todelliset arvot taulukossa "xmlsample_guru"
Vaihe 3) Tässä vaiheessa haemme ja näytämme taulukon "xmlsample_guru" raakan XML: n.
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa
- Todellinen XML-data näytetään tunnisteilla
- Jos havaitsemme yhden tunnisteen, siinä on emotunniste "emp" ja alatunnisteet "ename" ja "esal".
Koodinpätkä:
Suoritettavat kyselyt
1) create table xmlsample_guru(str string); 2) load data local inpath '/home/hduser/test.xml' overwrite into table xmlsample_guru;3) select xpath(str,'emp/ename/text()'), xpath(str,'emp/esal/text()') from xmlsample_guru;
JSON (JavaScript-objektimerkintä)
Twitter- ja verkkosivustotiedot tallennetaan JSON-muodossa. Aina kun yritämme hakea tietoja online-palvelimilta, se palauttaa JSON-tiedostot. Käyttämällä Hiveä tietovarastona voimme ladata JSON-tietoja Hive-taulukoihin luomalla kaavioita.
JSON HIVE PÖYTÄ
Tässä aiomme ladata JSON-tietoja Hive-taulukoihin ja haemme JSON-skeemaan tallennetut arvot.
Vaihe 1) Tässä vaiheessa aiomme luoda JSON-taulukon nimen "json_guru". Kun se on luotu, ladataan ja näytetään varsinaisen skeeman sisältö.
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa
- Taulukon "json_guru" luominen
- Ladataan tietoja test.jsonista taulukkoon "json_guru"
- Json_guru-taulukoihin tallennetun JSON-tiedoston todellisen skeeman näyttäminen
Vaihe 2) Menetelmän get_json_object () avulla voimme hakea JSON-hierarkiaan tallennetut data-arvot
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa
- Käyttämällä get_json_object (str, '$. Ecode) se voi hakea ecode-arvot taulukosta json_guru. Vastaavasti käyttämällä get_json_object (str, '$. Ename), get_json_object (str,' $. Sali) se hakee ename sal -arvot taulukosta json_guru
- Arvot, jotka on tallennettu JSON-hierarkiaan json_gurussa
Koodinpätkä
Suoritettavat kyselyt
1) create table json_guru(str string);2) load data inpath 'home/hduser/test.json' into table json_guru;3) select * from json1;4) select get_json_object(str,'$.ecode') as ecode, get_json_object(str,'$.ename') as ename ,get_json_object(str,'$.sal') as salary from json_guru;
Monimutkainen JSON HIVE -pöytä
Tässä aiomme ladata monimutkaisia JSON-tietoja Hive-taulukoihin ja haemme JSON-skeemaan tallennetut arvot
Vaihe 1) Luodaan complexjson_guru yhdellä sarakekentällä
Yllä olevasta kuvakaappauksesta voimme havaita seuraavaa
- Luominen taulukossa complexjson_guru, jossa yhden sarakekentän merkkijonotyyppinä
- Ladataan tietoja complexjson_guruun emp.json monimutkaisesta JSON-tiedostosta
Vaihe 2) Käyttämällä get_json_object-palvelua voimme noutaa JSON-tiedostohierarkiaan sisälle tallennetun sisällön.
Seuraavasta kuvakaappauksesta voimme nähdä complexjson_guruun tallennettujen tietojen tuotoksen.
Vaihe 3) Tässä vaiheessa "Select" -komennolla voimme nähdä monimutkaiset JSON-tiedot, jotka on tallennettu taulukkoon "complexjson_guru"
-Näyte koodinpätkä,
Suoritettavat kyselyt
1) create table complexjson_guru(json string);2) load data inpath 'home/hduser/emp.json' into table complexjson_guru;3) select get_json_object(json,'$.ecode') as ecode ,get_json_object(json,'$.b') as code, get_json_object(json,'$.c') from complexjson_guru;4) select * from complexjson_guru;
Hive reaaliaikaisissa projekteissa - milloin ja missä käyttää
Milloin ja missä pesää käytetään Hadoop-ekosysteemissä:
Kun
- Kun työskentelet vahvojen ja tehokkaiden tilastollisten toimintojen kanssa Hadoop-ekosysteemissä
- Kun työskentelet jäsennellyn ja osittain jäsennetyn tietojenkäsittelyn kanssa
- Hadoopin kanssa tietovarastotyökaluna
- Reaaliaikaista tiedonsiirtoa HBASE, Hive -ohjelmalla voidaan käyttää
Missä
- ETL: n ja tietovarastointityökalun käytön helpottamiseksi
- Tarjoaa SQL-tyyppinen ympäristö ja kysellä kuten SQL HIVEQL: n avulla
- Voit käyttää ja ottaa käyttöön räätälöityjä kartta- ja vähennyskomentosarjoja asiakaskohtaisiin vaatimuksiin
- Seuraava