Taru kui Hadoopi ökosüsteemi peal olev ETL ja andmeladustamisvahend pakub selliseid funktsioone nagu andmete modelleerimine, andmetöötlus, andmetöötlus ja andmete päring. Andmete väljavõtmine tarus tähendab tarude tabelite loomist ja struktureeritud ning poolstruktureeritud andmete laadimist, samuti andmete põhjal päringute esitamist nõuete alusel.
Pakettide töötlemiseks kirjutame kohandatud kaardi abil kohandatud määratletud skriptid ja skriptikeele abil vähendame skripte. See pakub SQL-i sarnast keskkonda ja tuge hõlpsaks päringute tegemiseks.
Selles õpetuses saate teada
- Struktureeritud andmetega töötamine taru abil
- Poolstruktureeritud andmetega töötamine taru (XML, JSON) abil
- Taru reaalajas projektides - millal ja kus kasutada
Struktureeritud andmetega töötamine taru abil
Struktureeritud andmed tähendavad, et andmed on ridade ja veergude õiges vormingus. See sarnaneb pigem korralike ridade ja veergudega RDBMS-andmetega.
Siit laadime tarus tekstifailides sisalduvad struktureeritud andmed
Samm 1) Selles etapis loome tabeli "töötajate_guru", millel on andmetüüpidega töötajate veerunimed nagu ID, nimi, vanus, aadress, palk ja osakond.
Ülaltoodud ekraanipildilt võime jälgida järgmist,
- Tabeli "töötajate_guru" loomine
- Andmete laadimine Employees.txt-st tabelisse "töötajate_guru"
Samm 2) Selles etapis kuvame selles tabelis salvestatud sisu, kasutades käsku "Vali". Tabeli sisu saame jälgida järgmises ekraanipildis.
- Koodilõigu näidis
Esitatavad päringud
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;
Poolstruktureeritud andmetega töötamine taru (XML, JSON) abil
Hive teostab ETL-i funktsioone Hadoopi ökosüsteemis, toimides ETL-i tööriistana. Teatud tüüpi rakenduste puhul võib kaartide vähendamine olla keeruline, Hive võib vähendada selle keerukust ja pakkuda parimat lahendust IT-rakendustele andmehoidlate osas.
Poolstruktureeritud andmeid, nagu XML ja JSON, saab Hive'i abil töödelda vähem keerukalt. Kõigepealt näeme, kuidas saame Hive'i kasutada XML-i jaoks.
XML-TABELTABEL
Selles laadime XML-i andmed Hive-tabelitesse ja toome XML-siltidesse salvestatud väärtused.
Samm 1) Tabeli "xmlsample_guru" loomine str-veeruga stringi andmetüübiga.
Ülaltoodud ekraanipildilt võime jälgida järgmist
- Tabeli "xmlsample_guru" loomine
- Andmete laadimine test.xml-st tabelisse "xmlsample_guru"
Samm 2) XPath () meetodi abil saame tuua XML-siltidesse salvestatud andmed.
Ülaltoodud ekraanipildilt võime jälgida järgmist
- Kasutades meetodit XPATH (), toome alla / emp / esal / ja / emp / ename / alla salvestatud väärtused
- XML-siltide sees olevad väärtused. Selles etapis kuvame tabelis "xmlsample_guru" XML-siltide alla salvestatud tegelikud väärtused
Samm 3) Selles etapis toome ja kuvame tabeli "xmlsample_guru" toores XML-i.
Ülaltoodud ekraanipildilt võime jälgida järgmist
- Tegelik XML-andmete kuvamine siltidega
- Kui vaatleme ühte silti, on see vanemasildina "emp", alammärgenditena "ename" ja "esal".
Koodilõik:
Esitatavad päringud
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 (JavaScripti objektide märge)
Twitteri ja veebisaitide andmed salvestatakse JSON-vormingus. Alati, kui proovime andmeid veebiserveritest tuua, tagastab see JSON-failid. Kasutades Hive'i andmepoena, saame skeeme luues laadida JSON-i andmeid Hive-tabelitesse.
JSON TABELAUD
Selles laadime JSON-i andmed Hive-tabelitesse ja toome JSON-skeemi salvestatud väärtused.
Samm 1) Selles etapis loome JSON-i tabeli nime "json_guru". Kui see on loodud, laaditakse ja kuvatakse tegeliku skeemi sisu.
Ülaltoodud ekraanipildilt võime jälgida järgmist
- Tabeli "json_guru" loomine
- Andmete laadimine test.jsonilt tabelisse "json_guru"
- Json_guru tabelitesse salvestatud JSON-faili tegeliku skeemi kuvamine
Samm 2) Meetodi get_json_object () abil saame tuua JSON-i hierarhiasse salvestatud andmete väärtused
Ülaltoodud ekraanipildilt võime jälgida järgmist
- Kasutades get_json_object (str, '$. Ecode), saab see tabelist json_guru tuua ekoodiväärtused. Sarnaselt kasutades get_json_object (str, '$. Ename), get_json_object (str,' $. Sali), saab see tabelilt json_guru ename sal väärtused
- JSON-i hierarhiasse json_gurusse salvestatud väärtused
Koodilõik
Esitatavad päringud
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;
JSONi TARU TABEL kompleks
Selles laadime keerukad JSON-andmed Hive-tabelitesse ja toome JSON-skeemi salvestatud väärtused
1. samm. Kompleksse json_guru loomine ühe veeru väljaga
Ülaltoodud ekraanipildilt võime jälgida järgmist
- Loomine tabelis complexjson_guru koos ühe veeru väljaga stringi andmetüübina
- Andmete laadimine complexjson_guru faili emp.json complex JSON-failist
Samm 2) Kasutades get_json_object, saame kätte tegeliku sisu, mis on salvestatud JSON-failihierarhiasse.
Järgmisel ekraanipildil näeme kompleksjson_guru salvestatud andmete väljundit.
Samm 3) Selles etapis näeme käsu "Vali" abil tegelikult tabelisse "complexjson_guru" salvestatud keerukaid JSON-andmeid
-Koodilõigu näidis,
Esitatavad päringud
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;
Taru reaalajas projektides - millal ja kus kasutada
Millal ja kus taru Hadoopi ökosüsteemis kasutada:
Millal
- Kui töötate Hadoopi ökosüsteemi tugevate ja võimsate statistiliste funktsioonidega
- Struktureeritud ja poolstruktureeritud andmetöötlusega töötamisel
- Hadoopi andmelao tööriistana
- Andmete sisestamine reaalajas HBASE, Hive abil on võimalik
Kus
- ETL-i ja andmeladustamisvahendi kasutamise hõlbustamiseks
- Pakkuda SQL tüüpi keskkonda ja päringuid nagu SQL, kasutades HIVEQL-i
- Kohandatud määratud kaardi ja reduktori skriptide kasutamiseks ja juurutamiseks konkreetsete kliendinõuete jaoks
- Järgmine