Casa Finanza personale Finestra in HiveQL - dummies

Finestra in HiveQL - dummies

Video: Mywindiy montaggio Fai da te - Come si monta una finestra in pvc 2024

Video: Mywindiy montaggio Fai da te - Come si monta una finestra in pvc 2024
Anonim

Il concetto di windowing, introdotto nello standard SQL: 2003, consente al programmatore SQL di creare un frame dai dati rispetto ai quali funzioni aggregate e altre funzioni della finestra. HiveQL ora supporta le finestre per lo standard SQL. Gli esempi sono molto utili quando si spiegano le funzioni di finestre e aggregati.

I ritardi di partenza arrivano con il territorio quando volare è la modalità di viaggio prescelta. Non sorprende, quindi, che i dati di volo compilati da RITA includano queste informazioni. & Ldquo; Qual è esattamente il ritardo medio del volo per giorno & rdquo; ? La query nella seguente lista produce il ritardo medio di partenza al giorno nel 2008.

(A) hive (flightdata)> CREATE VIEW avgdepdelay AS> SELECT DayOfWeek, AVG (DepDelay) FROM FlightInfo2008 GROUP BY DayOfWeek; OK Tempo impiegato: 0. 121 secondi (B) hive (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 Tempo impiegato: 18. 6 secondi, recuperato: 7 riga (e)

TGIF, o & ldquo; Grazie a Dio è venerdì, & rdquo; non si applica a tutti. Non dovrebbe sorprendere il fatto che venerdì - 5 ° giorno sotto i risultati del passaggio (B) - abbia registrato il maggior numero di ritardi.

Ad ogni modo, riguardo a quella query nel passaggio (A): il linguaggio di definizione dei dati di Hive (DDL) include anche l'istruzione CREATE VIEW, che può essere abbastanza utile. In Hive, le viste consentono di salvare una query ma i dati non vengono archiviati come nell'istruzione Create Table as Select (CTAS).

Quando una vista viene referenziata in HiveQL, Hive esegue la query e quindi utilizza i risultati, che potrebbero far parte di una query più ampia. Questo può essere molto utile per semplificare query complesse e scomporle in componenti logici. Inoltre, prendere nota della clausola GROUP BY, che raccoglie tutti i giorni alla settimana e consente alla funzione di aggregazione di AVG di fornire una risposta consolidata al giorno.

Questa informazione è utile, ovviamente, ma cosa succede se si desidera vedere alcuni numeri individuali al giorno? Consolida i dati con GROUP BY e ottieni la risposta che stai cercando, anche se hai perso le informazioni. Risolvere questo problema di perdita di informazioni è dove la finestra diventa abbastanza utile.

Ecco un'altra domanda sui dati di volo RITA 2008 che Apache Hive può rispondere: & ldquo; Qual è il primo volo tra Airport X e Y & rdquo; ? Supponiamo che, oltre a queste informazioni, desideri conoscere i voli successivi, nel caso in cui tu non sia un & ldquo; persona mattiniera& Rdquo; Bene, questo è un lavoro per il windowing in HiveQL! Il seguente elenco fornisce una query che risponde a queste domande.

(A) hive (flightdata)> SELEZIONA f08. Mese, f08. DayOfMonth, cr. descrizione, f08. Origine, f08. Dest, f08. FlightNum, f08. DepTime, MIN (f08. DepTime) OVER (PARTITION BY f08. DayOfMonth ORDER BY f08. DepTime) FROM flightinfo2008 f08 JOIN Carriers cr ON f08. UniqueCarrier = cr. codice DOVE f08. Origine = 'JFK' AND f08. Dest = 'ORD' E f08. Mese = 1 E f08. DepTime! = 0; … OK 1 1 JetBlue Airways JFK ORD 903 641 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 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 American Airlines Inc. 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 Comair Inc. JFK ORD 5447 650 48 1 31 American Airlines Inc. JFK ORD 1323 840 48 1 31 JetBlue Airways JFK ORD 907 921 48 1 31 JetBlue Airways JFK ORD 917 1859 48

Nel passaggio (A), la clausola GROUP BY è stata sostituita con la clausola OVER in cui si specifica il PARTITION o finestra su cui si desidera utilizzare la funzione di aggregazione MIN. È inclusa anche la clausola ORDER BY in modo che tu possa vedere quei voli successivi dopo il primo.

Come puoi vedere dall'elenco, il 31 gennaio JetBlue ha un buon volo alle 12: 48 a. m. -ottenere per uno dopo, a 6: 35 a. m. A prescindere da problemi precedenti, si noti che le informazioni contenute nell'output della query sono state perse se si fosse scelto di utilizzare nuovamente una clausola GROUP BY.

Questa capacità da sola rende le finestre una potente funzionalità, e c'è di più. Insieme alle finestre nella versione Hive 0. 11, la community ha fornito alcune funzioni di analisi che è possibile utilizzare in combinazione con le finestre. A tua disposizione ci sono anche queste funzioni: RANK, ROW_NUMBER, DENSE_RANK, CUME_DIST, PERCENT_RANK e NTILE.

Infine, non perdere l'uso di JOIN: è un esempio pratico di vita reale di un join interno in cui ti unisci alla tabella FlightInfo2008 con la tabella Carriers per ottenere il nome della compagnia aerea - piuttosto rispetto al codice criptico trovato nella tabella FlightInfo2008.

Finestra in HiveQL - dummies

Scelta dell'editore

Sintassi JavaScript selezionata - dummies

Sintassi JavaScript selezionata - dummies

JavaScript è un linguaggio importante per la programmazione, lo sviluppo di giochi e le applicazioni desktop. Di seguito sono riportati gli elementi di sintassi JavaScript più comunemente utilizzati, inclusi i comandi per manipolare le variabili, controllare il flusso del programma e gestire le funzioni. Avviso funzione Descrizione ("messaggio"); Crea una finestra di dialogo a comparsa contenente un messaggio. var myVar = 0; Crea una variabile con un valore iniziale dato. Type is ...

I nuovi CSS3 Border Techniques - dummies

I nuovi CSS3 Border Techniques - dummies

Hanno fatto parte del CSS fin dall'inizio, ma i CSS3 aggiungono nuove opzioni davvero entusiasmanti. I browser moderni ora supportano i bordi creati da un'immagine così come gli angoli arrotondati e le ombre dei riquadri. Queste tecniche promettono di aggiungere nuove straordinarie funzionalità ai tuoi progetti. Confini dell'immagine CSS3 consente di utilizzare un'immagine ...

Scelta dell'editore

Utilizzando il componente aggiuntivo Analisi dati Excel con tabelle - dummies

Utilizzando il componente aggiuntivo Analisi dati Excel con tabelle - dummies

Il componente aggiuntivo Analisi dati (noto nelle precedenti versioni di Excel come Analysis ToolPak o ATP) ti aiuta a fare analisi statistiche di ogni genere - e la previsione delle vendite è sicuramente una sorta di analisi statistica. Un componente aggiuntivo contiene codice Visual Basic: un programma, spesso scritto in una versione di BASIC, che Excel può eseguire. È ...

Utilizzando riferimenti di celle esterne in Excel - dummies

Utilizzando riferimenti di celle esterne in Excel - dummies

Potresti scoprire di avere dati in una cartella di lavoro di Excel che desideri fare riferimento in una formula all'interno di un'altra cartella di lavoro. In tale situazione, è possibile creare un collegamento tra le cartelle di lavoro utilizzando un riferimento di cella esterna. Un riferimento di cella esterna non è altro che un riferimento di cella che risiede in un esterno ...

Utilizzando Excel per calcolare una media basata su criteri - dummy

Utilizzando Excel per calcolare una media basata su criteri - dummy

È Possibile utilizzare Excel per calcolare una media . Immaginalo: devi calcolare una media da un elenco di numeri, usando solo i numeri nell'elenco che corrispondono a una condizione. In altre parole, calcola la media utilizzando i numeri se corrispondono a un determinato criterio. Excel è pieno di sorprese e, per questo trucco, tu ...

Scelta dell'editore

Come utilizzare le funzioni per trovare valori in Excel - dummies

Come utilizzare le funzioni per trovare valori in Excel - dummies

Excel fornisce funzioni per trovare il più grande o i valori più piccoli in un set di dati Excel. Queste funzioni includono MAX, MAXA, MIN, MINA, LARGE e SMALL. MAX: valore massimo La funzione MAX trova il valore più grande nei dati. La funzione ignora le celle vuote e le celle contenenti testo o valori logici come TRUE e FALSE ...

Come utilizzare le macro per creare cartelle di lavoro Excel - dummies

Come utilizzare le macro per creare cartelle di lavoro Excel - dummies

A volte potresti volere o dover creare un Excel cartella di lavoro in modo automatico. Ad esempio, potrebbe essere necessario copiare i dati da una tabella e incollarli in una cartella di lavoro appena creata. La seguente macro copia un intervallo di celle dal foglio attivo e incolla i dati in una nuova cartella di lavoro. In che modo ...

Come utilizzare l'obiettivo Ricerca in Excel 2016 - manichini

Come utilizzare l'obiettivo Ricerca in Excel 2016 - manichini

A volte quando si fa l'analisi what-if in Excel 2016 , hai in mente un risultato particolare, ad esempio un importo di vendita o una percentuale di crescita target. Quando è necessario eseguire questo tipo di analisi, si utilizza la funzione Goal Seek di Excel per trovare i valori di input necessari per raggiungere l'obiettivo desiderato. Per utilizzare la ricerca obiettivo ...