Открыт код SQL-движка BlazingSQL, использующего GPU для ускорения

5 августа 2019 года

Объявлено (Архивная копия от 6 августа 2019 на Wayback Machine) об открытии исходных текстов SQL-движка BlazingSQL (Архивная копия от 12 октября 2020 на Wayback Machine), использующего GPU для ускорения обработки данных. BlazingSQL не является полноценной СУБД, а позиционируется как движок для анализа и обработки больших наборов данных, сравнимый по своим задачам с Apache Spark. Код написан на языке Python и открыт под лицензией Apache 2.0.

BlazingSQL подходит для выполнения единичных аналитических запросов над большими наборами данных (десятки гигабайт), хранимых в табличных форматах (например, логи, статистика NetFlow и т.п.). BlazingSQL может выполнять запросы из raw-файлов в форматах CSV и Apache Parquet, размещённых в сетевых и облачных ФС, подобных HDSF и AWS S3, напрямую передавая результат в память GPU. Благодаря распараллеливанию операций в GPU и использованию более быстрой видеопамяти выполнение запросов в BlazingSQL осуществляется до 20 раз(недоступная ссылка) быстрее, чем в Apache Spark.

Для работы с GPU применяется развиваемый при участии компании NVIDIA набор открытых библиотек RAPIDS, позволяющий создавать приложения для обработки данных и аналитики, выполняемые целиком на стороне GPU (предоставляется Python-интерфейс для использования низкоуровневых примитивов CUDA и распараллеливания вычислений).

BlazingSQL предоставляет возможность использования SQL вместо API обработки данных cuUDF (на базе Apache Arrow), применяемого в RAPIDS. BlazingSQL является дополнительной прослойкой, работающей поверх cuDF и использующей для чтения данных с диска библиотеку cuIO. SQL-запросы транслируются в вызовы функций cuUDF, позволяющие загружать данные в GPU и выполнять над ними операции слияния, агрегирования и фильтрации. Поддерживается создание распределённых конфигураций, охватывающих тысячи GPU.

BlazingSQL существенно упрощает работу с данными - вместо сотни вызовов функций cuDF можно обойтись одним SQL-запросом. Применение SQL даёт возможность обеспечить интеграцию RAPIDS с существующими системами аналитики, без написания специфичных обработчиков и не прибегая к промежуточной загрузке данных в дополнительную СУБД, но сохраняя при этом полную совместимость со всеми частями RAPIDS, транслируя в SQL имеющуюся функциональность и обеспечивая производительность на уровне cuDF. В том числе обеспечена поддержка интеграции с библиотеками XGBoost и cuML для решения задач аналитики и машинного обучения.

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Открыт код SQL-движка BlazingSQL, использующего GPU для ускорения», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.