ĂŒber die Veröffentlichung des Quelltexts des SQL-Engines , das GPU zur Beschleunigung der Datenverarbeitung nutzt. BlazingSQL ist keine vollstĂ€ndige Datenbank, sondern positioniert sich als Engine fĂŒr die Analyse und Verarbeitung groĂer DatensĂ€tze, vergleichbar mit . Der Code ist in Python geschrieben und unter der Apache 2.0 Lizenz.
BlazingSQL eignet sich zur AusfĂŒhrung einzelner analytischer Abfragen ĂŒber groĂe DatensĂ€tze (Dutzende Gigabyte), die in tabellarischen Formaten gespeichert sind (z. B. Protokolle, NetFlow-Statistiken usw.). BlazingSQL kann Abfragen aus Rohdateien in den Formaten CSV und Apache Parquet ausfĂŒhren, die in Netzwerk- und Cloud-Dateisystemen wie HDFS und AWS S3 abgelegt sind, und ĂŒbertrĂ€gt die Ergebnisse direkt in den GPU-Speicher. Dank der Parallelisierung von Operationen in der GPU und der Nutzung von schnellerem Videospeicher erfolgt die AusfĂŒhrung von Abfragen in BlazingSQL bis zu schneller als in Apache Spark.
FĂŒr die Arbeit mit GPUs wird ein von NVIDIA unterstĂŒtztes Set von Bibliotheken , das die Erstellung von Anwendungen zur Datenverarbeitung und Analyse ermöglicht, die vollstĂ€ndig auf der GPU-Seite ausgefĂŒhrt werden (es wird zur Verwendung von Low-Level-CUDA-Primitiven und zur Parallelisierung von Berechnungen bereitgestellt).
BlazingSQL ermöglicht die Verwendung von SQL anstelle der Datenverarbeitungs-API (basierend auf ), die in RAPIDS verwendet wird. BlazingSQL ist eine zusĂ€tzliche Schicht, die ĂŒber cuDF arbeitet und zur Datenlesung von der Festplatte die Bibliothek cuIO nutzt. SQL-Abfragen werden in Aufrufe der Funktionen cuUDF ĂŒbersetzt, die es ermöglichen, Daten in die GPU zu laden und darauf Merging-, Aggregations- und Filteroperationen auszufĂŒhren. Die UnterstĂŒtzung von verteilten Konfigurationen, die Tausende von GPUs abdecken, ist gegeben.
BlazingSQL vereinfacht den Umgang mit Daten erheblich â anstelle von hunderten Aufrufen der Funktionen cuDF kann man mit einer einzigen SQL-Abfrage auskommen. Die Verwendung von SQL ermöglicht die Integration von RAPIDS mit bestehenden Analysesystemen, ohne spezifische Handler zu schreiben und ohne auf die Zwischenablage von Daten in eine zusĂ€tzliche Datenbank zurĂŒckzugreifen, wobei
gleichzeitig die volle KompatibilitĂ€t mit allen Komponenten von RAPIDS gewĂ€hrleistet wird, indem die vorhandene FunktionalitĂ€t in SQL ĂŒbersetzt wird und die Leistung auf dem Niveau von cuDF bereitgestellt wird. Auch die UnterstĂŒtzung zur Integration mit den Bibliotheken und fĂŒr analytische und maschinelle Lernaufgaben wird gewĂ€hrleistet.
Quelle: opennet.ru
