BlazingSQL SQL engine code bukas, gamit ang GPU para sa acceleration

Inihayag tungkol sa pagbubukas ng mga pinagmumulan ng SQL engine BlazingSQL, na gumagamit ng GPU upang pabilisin ang pagproseso ng data. Ang BlazingSQL ay hindi isang ganap na DBMS, ngunit nakaposisyon bilang isang makina para sa pagsusuri at pagproseso ng malalaking set ng data, na maihahambing sa mga gawain nito sa Apache Spark. Ang code ay nakasulat sa Python at bukas lisensyado sa ilalim ng Apache 2.0.

Ang BlazingSQL ay angkop para sa pagsasagawa ng mga solong analytical na query sa malalaking set ng data (sampu-sampung gigabytes) na nakaimbak sa mga tabular na format (halimbawa, mga log, mga istatistika ng NetFlow, atbp.). Ang BlazingSQL ay maaaring magpatakbo ng mga query mula sa mga raw na file sa CSV at Apache Parquet na mga format na naka-host sa network at cloud file system tulad ng HDSF at AWS S3, na direktang naglilipat ng resulta sa GPU memory. Salamat sa parallelization ng mga operasyon sa GPU at ang paggamit ng mas mabilis na memorya ng video, ang mga query ng BlazingSQL ay naisasagawa nang mas mababa sa 20 beses mas mabilis kaysa sa Apache Spark.

BlazingSQL SQL engine code bukas, gamit ang GPU para sa acceleration

Upang gumana sa mga GPU, ginagamit ang isang set na binuo kasama ang pakikilahok ng NVIDIA bukas mga aklatan RAPIDS, na nagbibigay-daan sa iyong lumikha ng pagpoproseso ng data at mga aplikasyon ng analytics na ganap na tumatakbo sa bahagi ng GPU (ibinigay ng interface ng Python na gumamit ng mababang antas ng CUDA primitives at parallelize ang mga kalkulasyon).

Nagbibigay ang BlazingSQL ng kakayahang gumamit ng SQL sa halip na mga API sa pagproseso ng data cuUDF (sa base Apache Arrow) na ginagamit sa RAPIDS. Ang BlazingSQL ay isang karagdagang layer na tumatakbo sa ibabaw ng cuDF at ginagamit ang cuIO library upang magbasa ng data mula sa disk. Ang mga query sa SQL ay isinasalin sa mga tawag sa mga function ng cuUDF, na nagbibigay-daan sa iyong mag-load ng data sa GPU at magsagawa ng mga operasyon ng pagsasanib, pagsasama-sama at pag-filter dito. Ang paglikha ng mga distributed na configuration na sumasaklaw sa libu-libong GPU ay sinusuportahan.

Lubos na pinasimple ng BlazingSQL ang pagtatrabaho sa data - sa halip na daan-daang mga tawag sa mga function ng cuDF, maaari kang gumamit ng isang SQL query. Ginagawang posible ng paggamit ng SQL na isama ang RAPIDS sa mga umiiral nang analytics system, nang hindi sumusulat ng mga partikular na processor at hindi gumagamit ng intermediate loading ng data sa isang karagdagang DBMS, ngunit
habang pinapanatili ang ganap na pagiging tugma sa lahat ng bahagi ng RAPIDS, isinasalin ang umiiral na functionality sa SQL at nagbibigay ng pagganap sa antas ng cuDF. Kabilang dito ang suporta para sa pagsasama sa mga aklatan XGBoost ΠΈ cuML para sa paglutas ng mga problema ng analytics at machine learning.

Pinagmulan: opennet.ru

Magdagdag ng komento