BlazingSQL SQL kod motora otvoren, koristeći GPU za ubrzanje

Najavljeno o otvaranju izvora SQL motora BlazingSQL, koji koristi GPU za ubrzanje obrade podataka. BlazingSQL nije punopravni DBMS, ali je pozicioniran kao motor za analizu i obradu velikih skupova podataka, uporediv po svojim zadacima sa Apache Spark. Kod je napisan u Pythonu i otvoren licenciran pod Apache 2.0.

BlazingSQL je pogodan za izvođenje pojedinačnih analitičkih upita na velikim skupovima podataka (desetine gigabajta) pohranjenim u tabelarnim formatima (na primjer, evidencije, NetFlow statistika, itd.). BlazingSQL može pokrenuti upite iz sirovih datoteka u CSV i Apache Parquet formatima koji se nalaze na mrežnim i cloud sistemima datoteka kao što su HDSF i AWS S3, direktno prenoseći rezultat u GPU memoriju. Zahvaljujući paralelizaciji operacija u GPU-u i korištenju brže video memorije, upiti u BlazingSQL se izvode do 20 puta brži od Apache Sparka.

BlazingSQL SQL kod motora otvoren, koristeći GPU za ubrzanje

Za rad sa GPU-ima koristi se set razvijen uz učešće NVIDIA-e otvoren biblioteke BRZICA, koji vam omogućava da kreirate aplikacije za obradu podataka i analitiku koje se u potpunosti pokreću na strani GPU-a (obezbeđuje Python interfejs koristiti CUDA primitive niskog nivoa i paralelizirati proračune).

BlazingSQL pruža mogućnost korištenja SQL-a umjesto API-ja za obradu podataka cuUDF (na bazi Apache Arrow) koji se koristi u RAPIDS-u. BlazingSQL je dodatni sloj koji radi na vrhu cuDF-a i koristi cuIO biblioteku za čitanje podataka s diska. SQL upiti se prevode u pozive cuUDF funkcijama, koje vam omogućavaju da učitate podatke u GPU i izvršite operacije spajanja, agregacije i filtriranja na njima. Podržano je kreiranje distribuiranih konfiguracija koje obuhvataju hiljade GPU-ova.

BlazingSQL uvelike pojednostavljuje rad s podacima - umjesto stotina poziva cuDF funkcijama, možete koristiti jedan SQL upit. Upotreba SQL-a omogućava integraciju RAPIDS-a sa postojećim analitičkim sistemima, bez pisanja specifičnih procesora i bez pribjegavanja međuučitavanju podataka u dodatni DBMS, ali
uz održavanje pune kompatibilnosti sa svim dijelovima RAPIDS-a, prevođenje postojeće funkcionalnosti u SQL i pružanje performansi na cuDF razini. Ovo uključuje podršku za integraciju sa bibliotekama XGBoost и cuML za rješavanje problema analitike i mašinskog učenja.

izvor: opennet.ru

Dodajte komentar