Otvorený kód motora BlazingSQL SQL s použitím GPU na zrýchlenie

Vyhlásené o otvorení zdrojov SQL motora BlazingSQL, ktorý využíva GPU na zrýchlenie spracovania dát. BlazingSQL nie je plnohodnotný DBMS, ale je umiestnený ako nástroj na analýzu a spracovanie veľkých súborov údajov, porovnateľný s úlohami Apache Spark. Kód je napísaný v jazyku Python a je otvorený licencovaný pod Apache 2.0.

BlazingSQL je vhodný na vykonávanie jednotlivých analytických dopytov na veľkých súboroch údajov (desiatky gigabajtov) uložených v tabuľkových formátoch (napríklad protokoly, štatistiky NetFlow atď.). BlazingSQL môže spúšťať dopyty z nespracovaných súborov vo formátoch CSV a Apache Parquet hostených v sieťových a cloudových súborových systémoch, ako sú HDSF a AWS S3, pričom výsledok priamo prenáša do pamäte GPU. Vďaka paralelizácii operácií v GPU a použitiu rýchlejšej video pamäte sa dotazy BlazingSQL vykonávajú za menej ako Počet hodín 20 rýchlejšie ako Apache Spark.

Otvorený kód motora BlazingSQL SQL s použitím GPU na zrýchlenie

Na prácu s GPU sa používa súprava vyvinutá za účasti spoločnosti NVIDIA otvorené knižnice RAPIDY, ktorá vám umožňuje vytvárať aplikácie na spracovanie a analýzu údajov, ktoré bežia výhradne na strane GPU (poskytované spoločnosťou Rozhranie Pythonu používať nízkoúrovňové primitívy CUDA a paralelizovať výpočty).

BlazingSQL poskytuje možnosť používať SQL namiesto API na spracovanie údajov cuUDF (na základni Apache Arrow) používané v RAPIDS. BlazingSQL je ďalšia vrstva, ktorá beží nad cuDF a používa knižnicu cuIO na čítanie údajov z disku. SQL dotazy sú preložené do volaní funkcií cuUDF, ktoré vám umožňujú načítať údaje do GPU a vykonávať na nich operácie zlúčenia, agregácie a filtrovania. Podporuje sa vytváranie distribuovaných konfigurácií pokrývajúcich tisíce GPU.

BlazingSQL výrazne zjednodušuje prácu s dátami – namiesto stoviek volaní funkcií cuDF môžete použiť jeden SQL dotaz. Použitie SQL umožňuje integrovať RAPIDS s existujúcimi analytickými systémami bez písania špecifických procesorov a bez uchyľovania sa k prechodnému načítaniu údajov do dodatočného DBMS, ale
pri zachovaní plnej kompatibility so všetkými časťami RAPIDS, preklad existujúcich funkcií do SQL a poskytovanie výkonu na úrovni cuDF. To zahŕňa podporu integrácie s knižnicami XGBoost и cuML na riešenie problémov analytiky a strojového učenia.

Zdroj: opennet.ru

Pridať komentár