BlazingSQL SQL-enginecode geopend, met behulp van GPU voor versnelling

Aangekondigd over het openen van de bronnen van de SQL-engine BlazingSQL, dat de GPU gebruikt om de gegevensverwerking te versnellen. BlazingSQL is geen volwaardig DBMS, maar is gepositioneerd als een motor voor het analyseren en verwerken van grote datasets, vergelijkbaar in zijn taken met Apache Spark. De code is geschreven in Python en is open gelicentieerd onder Apache 2.0.

BlazingSQL is geschikt voor het uitvoeren van enkelvoudige analytische queries op grote datasets (tientallen gigabytes) die zijn opgeslagen in tabelvorm (bijvoorbeeld logs, NetFlow-statistieken, enz.). BlazingSQL kan query's uitvoeren vanuit onbewerkte bestanden in CSV- en Apache Parquet-formaten die worden gehost op netwerk- en cloudbestandssystemen zoals HDSF en AWS S3, en het resultaat rechtstreeks naar GPU-geheugen overbrengen. Dankzij parallellisatie van bewerkingen in de GPU en het gebruik van sneller videogeheugen worden BlazingSQL-query's in minder dan XNUMX uur uitgevoerd 20 roz sneller dan Apache Spark.

BlazingSQL SQL-enginecode geopend, met behulp van GPU voor versnelling

Om met GPU's te werken, wordt een set gebruikt die is ontwikkeld met medewerking van NVIDIA Open bibliotheken VERSNELLINGEN, waarmee u gegevensverwerkings- en analysetoepassingen kunt maken die volledig op de GPU-kant draaien (geleverd door Python-interface om CUDA-primitieven op laag niveau te gebruiken en berekeningen te parallelliseren).

BlazingSQL biedt de mogelijkheid om SQL te gebruiken in plaats van API's voor gegevensverwerking cuUDF (op de basis Apache-pijl) gebruikt in RAPIDS. BlazingSQL is een extra laag die bovenop cuDF draait en de cuIO-bibliotheek gebruikt om gegevens van schijf te lezen. SQL-query's worden vertaald in aanroepen van cuUDF-functies, waarmee u gegevens in de GPU kunt laden en er samenvoeg-, aggregatie- en filterbewerkingen op kunt uitvoeren. Het creΓ«ren van gedistribueerde configuraties over duizenden GPU's wordt ondersteund.

BlazingSQL vereenvoudigt het werken met gegevens enorm: in plaats van honderden aanroepen naar cuDF-functies kunt u één SQL-query gebruiken. Het gebruik van SQL maakt het mogelijk om RAPIDS te integreren met bestaande analysesystemen, zonder specifieke processors te schrijven en zonder toevlucht te nemen tot het tussentijds laden van gegevens in een extra DBMS, maar
met behoud van volledige compatibiliteit met alle onderdelen van RAPIDS, vertaling van bestaande functionaliteit naar SQL en prestatie op cuDF-niveau. Dit omvat ondersteuning voor integratie met bibliotheken XGBoost ΠΈ cuML voor het oplossen van problemen op het gebied van analyse en machinaal leren.

Bron: opennet.ru

Voeg een reactie