Video: Access: Designing a Simple Query 2024
O serie de companii investesc foarte mult în a lansa proiecte open source și soluții brevetate pentru accesul SQL la datele Hadoop. Când auziți termenul acces SQL, trebuie să știți că vă bazați pe câteva presupuneri de bază:
-
Standarde lingvistice: Cel mai important standard, desigur, implică limba în sine. Există multe soluții asemănătoare SQL, deși, de obicei, acestea nu măsoară în anumite moduri fundamentale - metode care ar împiedica funcționarea chiar a unor instrucțiuni SQL tipice.
Institutul Național pentru Standarde (ANSI) a stabilit SQL ca standard tehnic oficial, iar industria IT acceptă standardul ANSI SQL-92 ca reprezentând standardul de conformitate SQL. ANSI a lansat o serie de versiuni progresiv mai avansate de-a lungul anilor, pe măsură ce tehnologiile de bază au evoluat.
-
Drivere: O altă componentă cheie într-o soluție de acces SQL este driverul - interfața pentru aplicațiile de conectare și schimb de date cu memoria de stocare. Fără driver, nu există nicio interfață SQL pentru niciunul dintre aplicațiile sau instrumentele client la care să se conecteze pentru trimiterea interogărilor SQL.
Ca atare, orice soluție SQL pe Hadoop trebuie să aibă, cel puțin, drivere JDBC și ODBC, deoarece acestea sunt cele mai frecvent utilizate tehnologii de interfață de bază de date.
-
Accesul în timp real: Până la Hadoop 2, execuția bazată pe MapReduce era singura opțiune disponibilă pentru analiza datelor stocate în Hadoop. Pentru interogări relativ simple care implică o scanare completă a datelor dintr-un tabel, Hadoop a fost destul de rapid în comparație cu o bază de date relațională tradițională.
Rețineți că acesta este un caz de analiză a loturilor, unde rapid poate însemna ore, în funcție de cantitatea de date implicate. Dar când a venit la întrebări mai complexe, implicând subseturi de date, Hadoop nu a făcut bine. MapReduce este un cadru de prelucrare în lot, astfel încât obținerea unor performanțe înalte pentru interogările în timp real înainte de Hadoop 2 a fost imposibil din punct de vedere arhitectural.
Un motivator timpuriu pentru YARN, noul sistem de gestionare a resurselor și programare pe bloc, a fost această necesitate de a sprijini alte cadre de procesare pentru a permite încărcări de lucru în timp real, cum ar fi interogări interactive SQL. Într-adevăr, o soluție SQL adecvată nu ar trebui să lase oamenii să aștepte întrebări rezonabile.
-
Date mutabile: O întrebare obișnuită în multe discuții despre suportul SQL pe Hadoop este "Putem folosi, și declarații, așa cum am putea face într-o bază de date relațională tipică? "Deocamdată, răspunsul este nu, ceea ce reflectă natura HDFS - se concentrează pe fișiere mari, imuabile.Tehnologii precum Hive oferă acces numai la citirea acestor fișiere. Indiferent, munca este în desfășurare în proiectul Hive Apache.