Video: Qual è il database e SQL? 2025
Un certo numero di aziende stanno investendo molto per guidare progetti open source e soluzioni proprietarie per l'accesso SQL ai dati Hadoop. Quando senti il termine Accesso SQL, dovresti sapere che stai facendo affidamento su alcune ipotesi di base:
-
Standard di lingua: Lo standard più importante, ovviamente, implica la lingua stessa. Esistono molte soluzioni "simili a SQL", anche se di solito non si misurano in alcuni modi fondamentali - modi che potrebbero impedire il funzionamento delle tipiche istruzioni SQL.
L'American National Standards Institute (ANSI) ha stabilito SQL come standard tecnico ufficiale e il settore IT accetta lo standard ANSI SQL-92 che rappresenta il punto di riferimento per la conformità SQL di base. ANSI ha rilasciato una serie di versioni progressivamente più avanzate nel corso degli anni man mano che le tecnologie di database si sono evolute.
-
Driver: Un altro componente chiave in una soluzione di accesso SQL è il driver - l'interfaccia per le applicazioni per la connessione e lo scambio di dati con l'archivio dati. Senza un driver, non esiste un'interfaccia SQL per le applicazioni o gli strumenti client a cui connettersi per l'invio di query SQL.
Pertanto, qualsiasi soluzione SQL su Hadoop deve avere almeno i driver JDBC e ODBC, poiché sono le tecnologie di interfaccia di database più utilizzate.
-
Accesso in tempo reale: Fino a Hadoop 2, l'esecuzione basata su MapReduce era l'unica opzione disponibile per l'analisi rispetto ai dati memorizzati in Hadoop. Per query relativamente semplici che implicano una scansione completa dei dati in una tabella, Hadoop era piuttosto veloce rispetto a un database relazionale tradizionale.
Tenere presente che si tratta di un caso di utilizzo dell'analisi batch, dove veloce può significare ore, a seconda della quantità di dati coinvolti. Ma quando si trattava di query più complesse, che coinvolgono sottoinsiemi di dati, Hadoop non ha funzionato bene. MapReduce è un framework di elaborazione batch, quindi ottenere alte prestazioni per query in tempo reale prima che Hadoop 2 fosse architettonicamente impossibile.
Uno dei primi motivatori di YARN, il nuovo sistema di gestione delle risorse e di pianificazione sul blocco, era questa necessità di supportare altri framework di elaborazione per abilitare i carichi di lavoro in tempo reale, come le query SQL interattive. In effetti, una soluzione SQL appropriata non dovrebbe lasciare la gente in attesa di query ragionevoli.
-
Dati mutevoli: Una domanda comune in molte discussioni sul supporto SQL su Hadoop è "Possiamo usare, e le istruzioni, come saremmo in grado di fare in un tipico database relazionale? "Per ora, la risposta è no, che riflette la natura di HDFS - è focalizzata su file grandi e immutabili.Tecnologie come Hive offrono accesso in sola lettura a questi file. Indipendentemente da ciò, il lavoro è in corso nel progetto Hive Apache.
