Оптимизация аналитических запросов в гетерогенных системах
Согласно оценке International Data Corporation (IDC) в 2020 году человечество произвело более 64 зеттабайт данных. В ближайшие 5 лет ожидается рост этого показателя на 23% в год, что превышает скорость роста производительности аппаратуры. Агрегация и анализ больших данных потребовали развития таких технологий как Hadoop и Spark. С увеличением количества данных и сложности запросов их производительности оказывается недостаточно и требуются новые пути повышения эффективности анализа. Один из таких методов - использование специализированных аппаратных ускорителей, таких как графический процессор, для выполнения запросов и расширение иерархии используемой памяти. В статье рассматривается проблема оптимизации аналитических запросов к СУБД в основной памяти с помощью использования аппаратных ускорителей и расширения иерархии памяти. Дан обзор классических подходов к оптимизации запросов и текущего состояния области исследования гетерогенного исполнения. Разобраны достоинства и недостатки существующих решений и сформулированы нерешенные проблемы. Предложен вариант эталонной архитектуры.