Video: HDInsight: Fast Interactive Queries with Hive on LLAP | Azure Friday 2024
Numerosi studi mostrano che la maggior parte dei dati in un data warehouse aziendale viene interrogata raramente. I fornitori di database hanno risposto a tali osservazioni implementando i propri metodi per l'individuazione dei dati da inserire.
Un metodo ordina l'universo dati in design di caldo, caldo o freddo, dove caldo dati (a volte chiamato attivo dati) è usato spesso, caldo i dati sono usati di volta in volta, e i dati a freddo sono usati raramente.La soluzione proposta per molti fornitori è per archiviare i dati a freddo su dischi più lenti all'interno dei contenitori del data warehouse o per creare intelligenti strategie di memorizzazione nella cache per mantenere in memoria i dati più caldi, tra gli altri.
Il problema con questo approccio è che anche se viene utilizzata una memoria più lenta, è ancora costoso archiviare i dati freddi e raramente usati in un magazzino. licenze hardware e software. Allo stesso tempo, i dati a freddo e in sospeso vengono spesso archiviati su nastro.
Questo modello tradizionale di archiviazione dei dati si interrompe quando si desidera interrogare tutti i dati a freddo in modo economico e relativamente efficiente, in altre parole, senza richiedere vecchi nastri.
Se si considerano i costi e le caratteristiche operative di Hadoop, sembra che sia destinato a diventare il nuovo nastro di backup. Hadoop è economico in gran parte perché i sistemi Hadoop sono progettati per utilizzare un hardware di livello inferiore rispetto a quello normalmente utilizzato nei sistemi di data warehouse. Un altro significativo risparmio sui costi è la concessione di licenze software.
Le licenze di distribuzione commerciali Hadoop richiedono una frazione del costo delle licenze di software di data warehouse relazionale, notoriamente costose. Dal punto di vista operativo, Hadoop è progettato per scalare facilmente semplicemente aggiungendo ulteriori nodi slave a un cluster esistente. E man mano che i nodi slave vengono aggiunti e gli insiemi di dati crescono di volume, i framework di elaborazione dei dati di Hadoop consentono alle applicazioni di gestire senza problemi l'aumento del carico di lavoro.
Hadoop rappresenta un modo semplice, flessibile ed economico per spingere l'elaborazione su letteralmente migliaia di server.
Con la sua architettura scalabile ed economica, Hadoop sembra essere una scelta perfetta per l'archiviazione dei dati di magazzino … tranne che per una piccola questione: la maggior parte del mondo IT funziona su SQL e SQL da solo non funziona bene con Hadoop.
Certo, il movimento NoSQL più Hadoop-friendly è vivo e vegeto, ma la maggior parte degli utenti esperti ora usa SQL tramite set di strumenti comuni e pronti all'uso che generano query SQL sotto il cofano - prodotti come Tableau, Microsoft Excel e IBM Cognos BI.
È vero che l'ecosistema Hadoop include Hive, ma Hive supporta solo un sottoinsieme di SQL e, sebbene le prestazioni stiano migliorando (insieme al supporto SQL), non è altrettanto veloce nel rispondere alle query più piccole come lo sono i sistemi relazionali. Recentemente, ci sono stati importanti progressi nell'accesso SQL a Hadoop, che ha spianato la strada a Hadoop per diventare la nuova destinazione per gli archivi di data warehouse online.
A seconda del fornitore Hadoop, le API SQL (o simili a SQL) stanno diventando disponibili in modo che i più comuni strumenti di reporting e analisi off-the-shelf possano emettere senza problemi l'SQL che viene eseguito sui dati archiviati in Hadoop. Ad esempio, IBM ha la sua API Big SQL, Cloudera ha Impala e Hive stesso, tramite l'iniziativa Hortonworks Stinger, sta diventando sempre più conforme a SQL.
Esistono diversi punti di vista (alcuni mirano a migliorare Hive, altri a estendere Hive e altri a fornire un'alternativa), tutte queste soluzioni tentano di affrontare due problemi: MapReduce è una soluzione scadente per l'esecuzione di query più piccole, e l'accesso SQL è - per ora - la chiave per consentire agli operatori IT di utilizzare le loro competenze SQL esistenti per ottenere valore dai dati archiviati in Hadoop.