DuckDB
![]() |
Это незавершённая статья. Вы можете помочь проекту, исправив и дополнив её. |
DuckDB — это реляционная система управления данных (СУБД) с открытым исходным кодом, ориентированная на хранение данных в колонках.
Блыа разработана Марком Раасвельдтом и Ханнесом Мюлейзеном в Центре математики и информатики (Centrum Wiskunde & Informatica CWI) в Нидерландах.
Первая версия была выпущенна в 2019 году.
По состоянию на 2024 год проект достиг более 6 миллионов загрузок в месяц.
DuckDB была разработана для обеспечения высокой производительности при сложных запросах к большим базам данных во встроенной конфигурации, таких как объединение таблиц с сотнями столбцов и миллиардами строк. В отличие от других встроенных баз данных (например, SQLite), DuckDB не фокусируется на транзакционных (OLTP) приложениях, а вместо этого специализируется на рабочих нагрузках онлайн-аналитической обработки (OLAP).
DuckDB в своей нише OLAP не конкурирует с традиционными СУБД, такими как MSSQL, PostgreSQL и Oracle Database. Используя SQL для запросов, DuckDB нацелена на бессерверные приложения и обеспечивает чрезвычайно быстрые ответы, используя файлы Apache Parquet для хранения. Эти атрибуты делают его популярным выбором для анализа больших наборов данных в интерактивном режиме, но плохо соответствуют требованиям корпоративного хранилища данных. DuckDB использует векторизованный механизм обработки запросов. DuckDB выделяется среди систем управления базами данных, поскольку не имеет внешних зависимостей и может строиться только с помощью компилятора C++11. DuckDB также отклоняется от традиционной модели клиент-сервер, работая внутри хост-процесса (например, у него есть привязки для интерпретатора Python с возможностью непосредственного размещения данных в массивах NumPy.