Необычные проекты на SQL
Необычные проекты на SQL Мы уже рассказывали Вам о нетипичном применении SQL в одном из более ранних постов. Пришло время пополнить коллекцию новыми экземплярами. В этот раз для СУБД ClickHouse: 1. Трассировка лучей (RayTracer) Полноценный path tracer, написанный целиком на ClickHouse SQL. Рендеринг выполняется одним SELECT-запросом без UDF и внешнего кода, сохраняя результат сразу в PNG. Каждый пиксель — отдельная строка, 3D-математика построена на кортежах (Tuple(Float64, Float64, Float64)), а цикл отражений реализован через arrayFold. Сцена включает стеклянные и хромированные буквы "ClickHouse" над процедурно-генерируемым ландшафтом с отражениями и тенями. 2. Doom-подобная игра (DOOMHouse) Игровой движок, рендерящий 3D-графику целиком в ClickHouse SQL. 3. Эмулятор RISC-V (Click-V) Эмулятор процессора RISC-V, написанный на ClickHouse SQL. Использует материализованные представления для симуляции регистров и памяти. Автор шутит, что это делает ClickHouse "истинно полным по Тьюрингу". 4. Синтезатор музыки (NoiSQL) Генерация музыки декларативными SQL-запросами. Содержит осцилляторы, огибающие, секвенсоры, арпеджиаторы, эффекты (дисторшн, задержка), генераторы шума, AM/FM и LFO. Эти проекты — не просто забава. Они демонстрируют, что современные СУБД, являются мощными векторными движками, которые можно использовать для решения самых неожиданных вычислительных задач. Это подтверждает, что границы SQL простираются далеко за рамки традиционных представлений. Ссылки на проекты: · RayTracer: github.com/ClickHouse/RayTracer · DOOMHouse: github.com/arniwesth/DoomHouse · Click-V: github.com/SpencerTorres/Click-V · NoiSQL: github.com/ClickHouse/NoiSQL