Об этом проекте
rudb — встраиваемая аналитическая база данных, написанная на Rust и задуманная как совместимая с DuckDB альтернатива с амбициозными целями по производительности и ресурсам. Проект нацелен на 10-кратное превосходство над DuckDB в ClickBench и TPC-H, на гарантию того, что ни один запрос не будет медленнее, чем в DuckDB, а также на 10-кратное сокращение использования диска, памяти и процессора. Ключевая ставка в дизайне сделана на выбираемые во время выполнения физические раскладки, многоколоночное сжатие с глобальными словарями и операторы, которые выполняются непосредственно над закодированными данными, а не после их декодирования.
Текущее состояние раннее: этап M0 завершён в версии v0.1.0, предоставляя рабочее пространство из 27 крейтов, движок выполнения запросов в памяти, совместимую с DuckDB оболочку командной строки с шестнадцатью режимами вывода и проходящий CI на Linux, macOS и Windows. Постоянного формата хранения пока нет, оптимизатора нет, транзакций нет, а соединения выполняются вложенными циклами. Следующий этап, M1, — это эксперимент с форматом, чтобы измерить, достижимы ли прогнозируемые коэффициенты сжатия, прежде чем строить что-то дальше.
Репозиторий включает подробную спецификацию из двадцати документов, написанных до реализации и охватывающих хранение, сжатие, выполнение, генерацию кода, оптимизацию, совместимость с SQL, транзакции, методологию бенчмарков и тестирование. Разработка организована вокруг двенадцати этапов, отслеживаемых как issues, при этом M3, M6 и M10 отмечены как полезные точки остановки. Проект лицензирован под Apache-2.0 и не связан с DuckDB Labs; совместимость реализована заново на основе опубликованных форматов и заголовков.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.