BlazingSQL SQL-Engine-Code geöffnet, GPU zur Beschleunigung verwendet

Angekündigt über das Öffnen der Quellen der SQL-Engine BlazingSQL, das die GPU nutzt, um die Datenverarbeitung zu beschleunigen. BlazingSQL ist kein vollwertiges DBMS, sondern positioniert sich als Engine zur Analyse und Verarbeitung großer Datenmengen, vergleichbar in seinen Aufgaben mit Apache Funken. Der Code ist in Python geschrieben und ist offen lizenziert unter Apache 2.0.

BlazingSQL eignet sich für die Durchführung einzelner analytischer Abfragen für große Datensätze (zig Gigabyte), die in Tabellenformaten gespeichert sind (z. B. Protokolle, NetFlow-Statistiken usw.). BlazingSQL kann Abfragen von Rohdateien in den Formaten CSV und Apache Parquet ausführen, die auf Netzwerk- und Cloud-Dateisystemen wie HDSF und AWS S3 gehostet werden, und das Ergebnis direkt in den GPU-Speicher übertragen. Dank der Parallelisierung von Vorgängen in der GPU und der Verwendung eines schnelleren Videospeichers werden BlazingSQL-Abfragen in weniger als einem Jahr ausgeführt 20 mal schneller als Apache Spark.

BlazingSQL SQL-Engine-Code geöffnet, GPU zur Beschleunigung verwendet

Für die Arbeit mit GPUs wird ein unter Beteiligung von NVIDIA entwickelter Satz verwendet offen Bibliotheken SCHNELLE, mit dem Sie Datenverarbeitungs- und Analyseanwendungen erstellen können, die vollständig auf der GPU-Seite ausgeführt werden (bereitgestellt von Python-Schnittstelle um CUDA-Primitive auf niedriger Ebene zu verwenden und Berechnungen zu parallelisieren).

BlazingSQL bietet die Möglichkeit, SQL anstelle von Datenverarbeitungs-APIs zu verwenden cuUDF (in der Basis Apache-Pfeil) wird in RAPIDS verwendet. BlazingSQL ist eine zusätzliche Ebene, die auf cuDF läuft und die cuIO-Bibliothek verwendet, um Daten von der Festplatte zu lesen. SQL-Abfragen werden in Aufrufe von cuUDF-Funktionen übersetzt, die es Ihnen ermöglichen, Daten in die GPU zu laden und Zusammenführungs-, Aggregations- und Filtervorgänge daran durchzuführen. Die Erstellung verteilter Konfigurationen über Tausende von GPUs wird unterstützt.

BlazingSQL vereinfacht die Arbeit mit Daten erheblich – statt Hunderter Aufrufe von cuDF-Funktionen können Sie eine SQL-Abfrage verwenden. Die Verwendung von SQL ermöglicht die Integration von RAPIDS in bestehende Analysesysteme, ohne dass spezielle Prozessoren geschrieben werden müssen und ohne auf das Zwischenladen von Daten in ein zusätzliches DBMS zurückgreifen zu müssen
Dabei bleibt die volle Kompatibilität mit allen Teilen von RAPIDS erhalten, die vorhandene Funktionalität wird in SQL übersetzt und Leistung auf cuDF-Ebene bereitgestellt. Dazu gehört auch die Unterstützung der Integration mit Bibliotheken XGBoost и cuML zur Lösung von Problemen der Analytik und des maschinellen Lernens.

Source: opennet.ru

Kommentar hinzufügen