Casa Finanza personale Unendo tabelle con Hive - dummies

Unendo tabelle con Hive - dummies

Video: Alteryx - Scaricare file Json 2025

Video: Alteryx - Scaricare file Json 2025
Anonim

Probabilmente già sai che gli esperti di modellazione e progettazione di database relazionali di solito passano molto tempo a progettare database normalizzati, o schemi <. Il database normalizzazione è una tecnica che protegge da perdita di dati, ridondanza e altre anomalie man mano che i dati vengono aggiornati e recuperati. Gli esperti seguono un certo numero di regole per arrivare a un database normalizzato, ma la Regola 1 è che devi finire con un

gruppo di tabelle. (Una grande tabella che memorizza tutti i tuoi dati non è normale - giochi di parole.) Ci sono eccezioni, a seconda del caso d'uso, ma la legge di molte tabelle è generalmente seguita da vicino, specialmente per i database che supportano le transazioni o l'elaborazione analitica (business intelligence, per esempio).

Quando inizi a interrogare e analizzare i tuoi dati, le tabelle vengono unite in base alle relazioni definite tra loro usando SQL - il che significa che i dischi sono occupati sul tuo server quando inizi a unirti alle tabelle, e i dischi occupati di solito comportano tempi di risposta utente più lenti. Tuttavia, la buona notizia è che gli RDBMS e gli EDW sono sintonizzati per rendere i join il più rapidi possibile.

Cosa c'entra tutto questo con i join in Hive? Bene, ricorda che il sistema operativo sottostante per Hive è (sorpresa!) Apache Hadoop: MapReduce è il motore per l'unione delle tabelle e Hadoop File System (HDFS) è lo storage sottostante. Sono tutte buone notizie per l'utente che desidera creare, gestire e analizzare tabelle di grandi dimensioni con Hive.

Il potenziale per sbloccare informazioni nascoste in enormi strutture di dati è eccitante. Tuttavia, i join con Hive di solito non si comportano bene come nel mondo RDBMS / EDW, quindi gli utenti principianti sono spesso sorpresi dalla "sfiziosità" della risposta del sistema.

Ricorda che MapReduce e HDFS sono ottimizzati per il throughput con analisi dei big data e che, in questo mondo, latenze - i tempi di risposta degli utenti, in altre parole, sono in genere elevati. Hive è progettato per l'elaborazione analitica in batch, non per l'elaborazione rapida delle transazioni online. Gli utenti che desiderano ottenere le migliori prestazioni possibili con SQL su Apache Hadoop hanno a disposizione soluzioni.

Tieni presente questa dinamica quando inizi a unirti alle tabelle con Hive. Si noti inoltre che gli architetti di Hive di solito denormalizzano i loro database in una certa misura, quindi avere un numero minore di tabelle più grandi è normale. Ecco perché vengono forniti tipi di dati complessi come STRUCT e ARRAY. È possibile utilizzare questi tipi di dati complessi per comprimere molti più dati in un'unica tabella.

Poiché la tabella Hive legge e scrive tramite HDFS di solito coinvolgono blocchi di dati molto grandi, maggiore è il numero di dati che è possibile gestire complessivamente in una tabella, migliori sono le prestazioni generali.

L'accesso al disco e alla rete è molto più lento dell'accesso alla memoria, in modo da ridurre al minimo l'HDFS in lettura e scrittura il più possibile.

Tenendo presenti queste informazioni di base, puoi affrontare la creazione di join con Hive. Fortunatamente, la comunità di sviluppo di Hive era realistica e capiva che gli utenti avrebbero voluto e avrebbero dovuto unirsi alle tabelle con HiveQL. Questa conoscenza diventa particolarmente importante con l'aumento di EDW. Casi d'uso come gli archivi "interrogabili" richiedono spesso join per l'analisi dei dati.

Ecco un esempio di join Hive che utilizza le tabelle di dati di volo. L'elenco mostra come creare e visualizzare una tabella myflightinfo2007 e una tabella myflightinfo2008 dalle tabelle FlightInfo2007 e FlightInfo2008 più grandi. Il piano da sempre era quello di utilizzare il CTAS creato myflightinfo2007 e myflightinfo2008 tabelle per illustrare come è possibile eseguire join in Hive.

La figura mostra il risultato di un join interno con le tabelle myflightinfo2007 e myflightinfo2008 che utilizzano il client SQL di SQuirreL.

Hive supporta

equi-joins, un tipo specifico di join che utilizza solo confronti di uguaglianza nel predicato di join. (Su m8 FlightNum = m7 FlightNum è un esempio di equi-join.) Altri comparatori come Less Than (<) non sono supportati. Questa restrizione è solo a causa di limitazioni sul motore MapReduce sottostante. Inoltre, non è possibile utilizzare OR nella clausola ON. La figura illustra l'esempio precedente del join interno e altri due tipi di join Hive. Si noti che è possibile confermare i risultati di un join interno riesaminando i contenuti delle tabelle myflight2007 e myflight2008.

La seguente figura illustra come funziona un raccordo interno utilizzando un diagramma di Venn, nel caso in cui non si abbia familiarità con la tecnica. L'idea di base è che un'unione interna restituisce i record che corrispondono tra due tabelle. Quindi un inner join è uno strumento di analisi perfetto per determinare quali voli sono gli stessi da JFK (New York) a ORD (Chicago) nel luglio del 2007 e luglio del 2008.

Ottimizzare i join Hive è un argomento caldo nella comunità Hive. Per ulteriori informazioni sulle attuali tecniche di ottimizzazione, vedere la pagina Join Optimization sul wiki Hive.

Unendo tabelle con Hive - dummies

Scelta dell'editore

Come salvare le immagini in un file immagine in R - dummies

Come salvare le immagini in un file immagine in R - dummies

Se vuoi pubblicare le tue risultati, è necessario salvare la trama in un file in R e quindi importare questo file grafico in un altro documento. Tuttavia, per la maggior parte del tempo, potresti semplicemente voler utilizzare la grafica R in modo interattivo per esplorare i tuoi dati. Per salvare un grafico su un'immagine ...

Come cercare più parole in R - dummies

Come cercare più parole in R - dummies

Quando si lavora con il testo in R, potrebbe essere necessario per trovare parole o motivi all'interno del testo. Immagina di avere una lista degli stati negli Stati Uniti e vuoi scoprire quali nomi di stato consistono in due parole. Per trovare sottostringhe, è possibile utilizzare la funzione grep (), che prende due argomenti essenziali: ...

Come cercare le singole parole in R - dummies

Come cercare le singole parole in R - dummies

Quando lavori con il testo, spesso tu può risolvere i problemi se riesci a trovare parole o motivi all'interno del testo. R rende questo facile da fare. Immagina di avere una lista degli stati negli Stati Uniti e vuoi scoprire quale di questi stati contiene la parola Nuovo. Per indagare su questo ...

Scelta dell'editore

Come calcolare le detrazioni e i crediti di imposta sugli investimenti immobiliari per l'esame di licenza immobiliare

Come calcolare le detrazioni e i crediti di imposta sugli investimenti immobiliari per l'esame di licenza immobiliare

Una detrazione fiscale è qualcosa che puoi vedere nell'esame di licenza immobiliare che puoi detrarre dal reddito di un investimento immobiliare per ridurre le tasse. Un credito d'imposta è qualcosa che puoi detrarre dalle tasse dovute. I governi federali e talvolta statali creano programmi che consentono crediti d'imposta o detrazioni per ...

Fattori economici che influenzano il valore per l'esame di licenza immobiliare - dummies

Fattori economici che influenzano il valore per l'esame di licenza immobiliare - dummies

Valore doesn ' semplicemente succede; le persone devono crearlo. La maggior parte di queste azioni personali che saranno trattate durante l'esame di licenza immobiliare, di solito chiamate influenze economiche, non sono altro che normali comportamenti umani. Il test pone due tipi di domande su questi principi o fattori economici. Vedrai domande sulle definizioni e ...

Come calcolare le aliquote fiscali per l'esame di licenza immobiliare - dummy

Come calcolare le aliquote fiscali per l'esame di licenza immobiliare - dummy

Pur calcolando la tassa le tariffe non sono qualcosa che devi sapere esattamente come fare per l'esame di licenza immobiliare, è qualcosa che devi capire in generale per rispondere a domande di non-matematica sul processo. Sapere come calcolare le tasse non è una cosa brutta da sapere, perché probabilmente si pagano le tasse di proprietà e ...

Scelta dell'editore

Suggerimenti per la registrazione Regole di gioco logiche sull'LSAT - manichini

Suggerimenti per la registrazione Regole di gioco logiche sull'LSAT - manichini

La maggior parte dei giochi di logica sull'LSAT hanno tre, quattro o cinque condizioni o regole che limitano il modo in cui giochi con i pezzi. Per ordinare i giochi, le restrizioni forniscono indizi su come i pezzi possono essere posizionati in relazione l'uno con l'altro. I tipi comuni di regole di ordinazione sono obiettivi, distanziatori e arrangiatori. Regole di destinazione I bersagli danno ...

Come gestire il tuo tempo con saggezza sul TASC - dummies

Come gestire il tuo tempo con saggezza sul TASC - dummies

Perché ogni sezione del TASC, oppure Prova l'esame di completamento secondario, ha un limite di tempo, vorrai essere consapevole di quanto tempo è passato mentre stai facendo il test. Un modo per gestire efficacemente il tuo tempo è semplicemente indossando un orologio. I centri di test potrebbero non avere sempre un orologio disponibile e ...

Rendendo più semplice il giorno di prova SSAT o ISEE - manichini

Rendendo più semplice il giorno di prova SSAT o ISEE - manichini

Non è possibile effettuare SSAT o ISEE più facile, ma puoi iniziare la giornata di test correttamente e renderlo più semplice e meno stressante, il che può portare a risultati migliori durante l'esame di ammissione. Ecco alcuni suggerimenti da tenere a mente al giorno del test SSAT o ISEE: riposati molto. La ...