Acasă Finanțe personale Fereastră în HiveQL - dummies

Fereastră în HiveQL - dummies

Video: Sistem de filtrare al mirosurilor în băile fără fereastră, modulul DuoFresh Geberit 2024

Video: Sistem de filtrare al mirosurilor în băile fără fereastră, modulul DuoFresh Geberit 2024
Anonim

Conceptul de ferestre, introdus în standardul SQL: 2003 permite programatorului SQL să creeze un cadru din datele pe care agregate și alte funcții ale ferestrei pot funcționa. HiveQL acceptă acum ferestre după standardul SQL. Exemplele sunt destul de utile atunci când explicăm funcțiile de ferestre și agregate. Întârzierile de plecare vin cu teritoriul când zborul este modul dvs. de călătorie ales. Prin urmare, nu este surprinzător faptul că datele de zbor compilate de RITA includ aceste informații. & Ldquo; Care este exact întârzierea zilnică zilnică pe zi & rdquo; ? Interogarea din următoarea listă produce o întârziere medie de plecare pe zi în 2008.

(A)
stup (flightdata)> CREATE VIEW avgdepdelay AS> SELECT DayOfWeek, AVG (DepDelay) FROM FlightInfo2008 GROUP BY DayOfWeek; OK Timp realizat: 0. 121 secunde (B) stup (flightdata)> SELECT * FROM avgdepdelay; … OK 1 10. 269990244459473 2 8. 97689712068735 3 8. 289761053658728 4 9. 772897177836702 5 12. 158036387869656 6 8. 645680904903614 7 11. 568973392595312 Timp realizat: 18. 6 secunde, Preluat: 7 rang (e) TGIF, sau & ldquo; Mulțumesc lui Dumnezeu este vineri, & rdquo; nu se aplică tuturor. Nu trebuie să fie o surpriză faptul că vineri - Ziua 5 sub rezultatele din Etapa (B) - a avut cel mai mare număr de întârzieri.

Atunci când o vizualizare este menționată în HiveQL, Hive execută interogarea și apoi utilizează rezultatele, care ar putea face parte dintr-o interogare mai mare. Acest lucru poate fi foarte util pentru a simplifica interogările complexe și a le distruge în componente logice. În plus, rețineți clauza GROUP BY, care adună toate zilele pe săptămână și permite funcției agregate AVG să furnizeze un răspuns consolidat pe zi.

Aceste informații sunt, bineînțeles, utile, dar ce se întâmplă dacă doriți să vedeți câteva numere individuale pe zi? Consolidați datele cu GROUP BY și aveți răspunsul pe care îl căutați, deși și dvs. ați pierdut informații. Rezolvarea acestei probleme de pierdere a informațiilor este în cazul în care fereastra devine destul de la îndemână.

Iată o altă întrebare despre datele de zbor ale RITA 2008 pe care Apache Hive le poate răspunde: & nbsp; Care este primul zbor între Aeroportul X și Y? ? Să presupunem că, în plus față de aceste informații, doriți să știți despre zborurile ulterioare, doar în cazul în care nu sunteți " persoana matinala.& Rdquo; Ei bine, aceasta este o lucrare pentru ferestre în HiveQL! Următoarea listă vă oferă o interogare care răspunde la aceste întrebări.

(A)

stup (flightdata)> SELECT f08. Lună, f08. DayOfMonth, cr. descriere, f08. Origine, f08. Dest, f08. FlightNum, f08. DepTime, MIN (f08. DepTime) OVER (PĂRȚIRE DE F08, ZIOMOFMONT ORDER BY f08. DepTime) FROM flightinfo2008 f08 JOIN Carriers cr ON f08. Caracteristica unică = cr. cod WHERE f08. Origine = 'JFK' ȘI f08. Dest = 'ORD' ȘI f08. Luna = 1 AND f08. DepTime! = 0; … OK 1 1 JetBlue Airways JFK ORD 903 641 641 1 1 American Airways JFK ORD 1323 833 641 1 1 JetBlue Airways JFK ORD 907 929 641 1 1 Comair Inc. JFK ORD 5083 945 641 1 1 Comair Inc JFK ORD 5634 1215 641 1 1 JetBlue Airways JFK ORD 915 1352 641 1 1 American Airlines Inc. JFK ORD 1323 833 641 1 1 JetBlue Airways JFK ORD 907 929 641 1 1 Comair Inc. JFK ORD 5083 945 641 1 1 Comair Inc. JFK ORD 5634 1215 641 1 1 JetBlue Airways JFK ORD 915 1352 641 1 1 Jair Airways JFK ORD 1815 1610 641 1 1 JetBlue Airways JFK ORD 917 1735 641 1 1 Comair Inc JFK ORD 5469 1749 641 1 1 Comair Inc. JFK ORD 5492 2000 641 1 1 JetBlue Airways JFK ORD 919 2102 641 1 31 JetBlue Airways JFK ORD 919 48 48 1 31 JetBlue Airways JFK ORD 903 635 48 1 31 Comer Inc. JFK ORD 5447 650 48 1 31 American Airlines Inc. JFK ORD 1323 840 48 1 31 JetBlue În etapa (A), clauza GROUP BY a fost înlocuită cu clauza OVER în care specificați PARTIȚIE sau fereastră peste care doriți să funcționeze funcția agregat MIN. De asemenea, este inclusă clauza ORDER BY astfel încât să puteți vedea zborurile ulterioare după prima.


După cum puteți vedea din listă, pe 31 ianuarie, JetBlue are un zbor frumos, timpuriu la 12: 48 a. m. - opt pentru una ulterioară, la 6:35 a. m. Întrebările de la începători, luați aminte că ați păstrat informațiile din ieșirea interogării care s-ar fi pierdut dacă ați fi ales din nou să utilizați o clauză GROUP BY.

Numai această capacitate face ferestrele o caracteristică puternică, și mai sunt multe. Odată cu lansarea în versiunea Hive 0. 11, comunitatea a furnizat câteva funcții de analiză pe care le puteți utiliza împreună cu ferestrele. De asemenea, aveți la dispoziție următoarele funcții: RANK, ROW_NUMBER, DENSE_RANK, CUME_DIST, PERCENT_RANK și NTILE.

În cele din urmă, nu ratați folosirea JOIN: este un exemplu realist și practic de îmbinare interioară în care vă alăturați tabelului FlightInfo2008 cu tabelul Carriers pentru a obține numele companiei - mai degrabă decât codul criptic găsit în tabelul FlightInfo2008.

Fereastră în HiveQL - dummies

Alegerea editorilor

Administrator de rețea: Zone de căutare inversă - dummies

Administrator de rețea: Zone de căutare inversă - dummies

Interogări DNS obișnuite sunt interogări de căutare înainte corespunde unui nume de domeniu complet calificat. O căutare inversă este opusul unei căutări forward: returnează numele de domeniu complet calificat al unei gazde pe baza adresei sale IP. Căutările inverse sunt posibile din cauza unui domeniu special numit ...

Rețea Elemente de bază: Clienți și servere - manechine

Rețea Elemente de bază: Clienți și servere - manechine

Computerul de rețea care conține hard disk-urile, imprimantele și alte resurse care sunt partajate cu alte calculatoare de rețea se numește un server. Acest termen vine în repetate rânduri, deci trebuie să-l amintiți. Scrie-o pe spatele mâinii tale stângi. Orice computer care nu este un server este numit client. Aveți ...

Retea Bazele: Poduri - dummies

Retea Bazele: Poduri - dummies

O punte este un dispozitiv care conecteaza doua retele astfel incat sa actioneze ca si cum ar fi o rețea. Podurile sunt utilizate pentru a împărți o rețea mare în două rețele mai mici din motive de performanță. Vă puteți gândi la un pod ca pe un repetor inteligent. Repetoarele ascultă semnale care coboară pe un cablu de rețea, amplifică ...

Alegerea editorilor

ÎMprumuta și tweak idei de la alte comunități online - dummies

ÎMprumuta și tweak idei de la alte comunități online - dummies

, Mai degrabă decât să ia ideile altcuiva complet pentru dvs. comunitate online, încercați să riffați pe aceeași idee, dar nu atât de mult încât este evident că nu sunteți creierul din spatele brainstorming-ului. Idei sunt acolo pentru a lua, dar nu ar fi mai degrabă văzute ca cineva inovatoare, nu cineva care scours pe web ...

Branding Blogul tău

Branding Blogul tău

Branding blog-ul tău merge mult spre a face dacă este ușor de recunoscut pentru cititorii tăi. Când vedeți un punct roșu în interiorul unui cerc roșu, ce magazin vine în minte? Ce zici de acele arcuri de aur? Un nume de marcă apare în minte atunci când vedeți simbolul swoosh? La fel ca magazinele populare, restaurantele și încălțămintea ...

Construiți un Blog Mama care este Sellable - dummies

Construiți un Blog Mama care este Sellable - dummies

Dacă obiectivul pe termen lung este de a vinde blogul dvs. ar trebui să o construiască cu acest scop în minte. Evitați asocierea prea intensă a blogului cu marca dvs. personală. Un blog care poate fi valoros cu orice scriitor la cârma trebuie să îndeplinească majoritatea, dacă nu toate, următoarele criterii: Blogul este concentrat ...

Alegerea editorilor

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

LinkedIn oferă servicii de publicitate pentru afacerea dvs. Dacă vă decideți să utilizați LinkedIn ca instrument de marketing, va trebui doar să obțineți o nouă campanie de anunțuri în lucrări. Când sunteți gata să începeți o nouă campanie, urmați acești pași:

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Ce opțiuni de filtrare aveți pentru anunțul dvs. LinkedIn? Alte rețele de publicitate vă permit să filtrați publicul vizat de câteva atribute cunoscute ale persoanei care vă va vedea anunțul, sexul și locația membrilor din public. LinkedIn vă permite să faceți un pas mai departe permițându-vă ...

Oferind și primind viziuni pe LinkedIn - manechine

Oferind și primind viziuni pe LinkedIn - manechine

Deși mulți oameni cred că "Nu este ceea ce știi, știi, "care este unul dintre principalele motive pentru care LinkedIn este atât de valoros, mulți oameni (recrutorii, angajații, directorii executivi, investitorii și altele) sunt foarte interesați de ceea ce știi. În mod logic, oamenii care vă cunosc cel mai bine sunt oamenii din rețeaua dvs., care ...