The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Первый стабильный релиз СУБД DuckDB"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Первый стабильный релиз СУБД DuckDB"  +/
Сообщение от opennews (??), 04-Июн-24, 15:56 
После шести лет разработки представлен выпуск СУБД DuckDB 1.0, позиционируемой как вариант SQLite для аналитических запросов. DuckDB сочетает такие свойства SQLite, как компактность, возможность подключения в форме встраиваемой библиотеки, хранение БД в одном файле и удобный CLI-интерфейс, со средствами и оптимизациями для выполнения аналитических запросов, охватывающих значительную часть хранимых данных, например, выполняющих агрегирование всего содержимого таблиц или слияние нескольких больших таблиц. Код проекта написан на языке C++ и распространяется под лицензией MIT...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=61309

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Аноним (1), 04-Июн-24, 15:56    Скрыто ботом-модератором–2 +/
Ответить | Правка | Наверх | Cообщить модератору

2. Сообщение от Аноним (2), 04-Июн-24, 16:07   –1 +/
Пробовал несколько месяцев назад, надо было подмёрживать небольшую таблицу к большой (несколько сотен ГБ), которая лежит в паркетах на HDFS. Т.е. простой мёрж, никаких там группировок на всех данных. Так вот, если искусственно скармливать этой утке небольшие чанки от большой таблицы - то вывозит. А если сразу всё, то падает с ошибкой выделения памяти, хотя свободной памяти на серваке ещё. Интересно, пофиксили ли.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #3, #4, #7, #15

3. Сообщение от Аноним (3), 04-Июн-24, 16:45   +/
Может ты просто не правильно делаешь булк инсерт?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #6

4. Сообщение от penetrator (?), 04-Июн-24, 17:10   –1 +/
так join вроде не фишка этих баз, она columnar?

ну 200 гигов нормальная реляционка без проблемы вывезет на join

вопрос там только в том сколько из этих 200 гигов тебе надо отдать и сколько там будет index scan

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #16

6. Сообщение от Аноним (6), 04-Июн-24, 17:31   –2 +/
Причём тут булк инсерк? У меня есть несколько сотен ГБ в паркетах, к ним нужно примёржить пару МБ и получить результат (тоже пару МБ). Всё это из питона.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #8

7. Сообщение от Wine is not emulator (?), 04-Июн-24, 19:04   –1 +/
Не 32-битная версия СУБД и/или клиента, случаем?
А зачем в таком встраиваемом формате хранят такие объёмы? Не знал, тут же полноценную RDBMS уже можно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #17

8. Сообщение от гага (?), 04-Июн-24, 20:25   +1 +/
Так и говорите терминами хотя-бы свойственных базам данных, делаете джоин - так делайте меньшее в большее т.к. базе в ином случае нужно хранить в памяти все ключи первой таблицы и она пошлет вас на три буквы если датасет окажется слишком большим
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #10, #20

10. Сообщение от Аноним (6), 04-Июн-24, 22:08   +1 +/
Так разрабы этой субд как раз хвалились, что она у них для больших данных и типа умеет не тащить всё в память, а при необходимость работать с большими таблицами даже если в память всё не влезает. А в моём случае ещё и памяти свободной на серваке было завались. А по факту оказалось, что ей надо на чанки все равно бить. Ну и нафига оно тога нужно?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #12, #23

12. Сообщение от Аноним (12), 04-Июн-24, 23:02   +/
Без кода гадать по комментам что где и почему упало бессмысленно. Может у тебя там в цикле все паркеты в память читаются.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

15. Сообщение от Аноним (16), 05-Июн-24, 01:10   +/
Результат EXPLAIN ANALYZE в студию. А там посмотрим.
Может, утку неправильно приготовили.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

16. Сообщение от Аноним (16), 05-Июн-24, 01:13   –1 +/
Она умеет в join, но при неоптимальном запросе spillover может быть неприлично большим.
https://duckdb.org/docs/configuration/pragmas#temp-directory...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

17. Сообщение от economist (?), 05-Июн-24, 08:32   +/
RDBMS медленнее и намного. Колоночное хранение рулит. Большинство сравнений бессмысленны без понимания специфики данных. Например, большинство SQL-запросов к БД у экономистов читают 10% строк и многоуровнево группируют с множ. отборами. С такими данными и запросами DuckDB очень быстр. Та же SQLite примерно в 2,5 раза тормознее (но все же быстрее сетевых БД).  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7

18. Сообщение от Аноним (18), 05-Июн-24, 10:07   –1 +/
Знаю вопрос глупый, но нафига очередная база данных? Имеющихся мало? Какое уникальное торговое предложение (УТП) сабжа?
Вот допустим ищу я вакансию Девопса, в вакансиях в разделе знания БД у всех разные названия. Я думал что в ИТ принято перенимать лучшие практики? Нафига этот зоопарк?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #19, #21

19. Сообщение от Аноним (3), 05-Июн-24, 10:31   –1 +/
Потому что если ты знаешь допустим мускуль ты уточнишь в выдаче среди конкурентов. А когда ты знаешь какую то мутную фигню, которая почему то понадобилась эйчеру ты будешь возможно даже на первой странице.

А зачем кто-то стал это искать сотрудников для работы с фигнёй? Например потому что повелся на маркетинговый буль-щит.  

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #25

20. Сообщение от Sw00p aka Jerom (?), 05-Июн-24, 11:28   +/
> Так и говорите терминами хотя-бы свойственных базам данных, делаете джоин

юнион что такое?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #22

21. Сообщение от Аноним (21), 05-Июн-24, 12:01   +/
Описание читал? Если да, то какие аналоги?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #26

22. Сообщение от гага (?), 05-Июн-24, 12:56   +/
>> Так и говорите терминами хотя-бы свойственных базам данных, делаете джоин
> юнион что такое?

Юнион не даст результат в пару мегабайт при подаче на вход множества гигабайт

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #24

23. Сообщение от гага (?), 05-Июн-24, 12:57   –1 +/
> Так разрабы этой субд как раз хвалились, что она у них для
> больших данных и типа умеет не тащить всё в память, а
> при необходимость работать с большими таблицами даже если в память всё
> не влезает. А в моём случае ещё и памяти свободной на
> серваке было завались. А по факту оказалось, что ей надо на
> чанки все равно бить. Ну и нафига оно тога нужно?

кликхаус тоже хвалится что может в большие данные, но большее в меньшее точно так-же вызовет повышенный расход памяти, то что оно может - эт не значит что головой думать не надо

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

24. Сообщение от Sw00p aka Jerom (?), 05-Июн-24, 13:28   +/
> Юнион не даст результат в пару мегабайт при подаче на вход множества
> гигабайт

"""
Т.е. простой мёрж, никаких там группировок на всех данных.
"""

что такое "простой мОрж" двух множест?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

25. Сообщение от Аноним (18), 05-Июн-24, 13:58   –1 +/
>А когда ты знаешь какую то мутную фигню, которая почему то понадобилась эйчеру ты будешь возможно даже на первой странице.

Ну и вакансий будем меньше и не факт что ЗП будет больше.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19

26. Сообщение от Аноним (18), 05-Июн-24, 14:04   +/
А ты читал?
>позиционируемой как вариант SQLite для аналитических запросов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #28, #30

28. Сообщение от Аноним (3), 05-Июн-24, 16:20   +/
Какие аналоги?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26

29. Сообщение от Аноним (29), 05-Июн-24, 20:44   +/
как там с регистронезавимым кириллическим поиском?
Ответить | Правка | Наверх | Cообщить модератору

30. Сообщение от Аноним (30), 05-Июн-24, 21:10   +/
> Знаю вопрос глупый, но нафига очередная база данных? ... Нафига этот зоопарк?

...
> А ты читал?
>>позиционируемой как вариант SQLite для аналитических запросов.

Ну так сам и ответил - из приведенной тобой цитаты следует, что сабж лучше подходит для аналитических запросов, чем SQLite. Потому и зоопарк, что единственной серебряной пули для всех типов задач нет. Подбираешь БД под задачу.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #31

31. Сообщение от Neon (??), 05-Июн-24, 22:00   +/
Хотя бы простой примерчик аналитического запроса. А то одни общие слова
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30 Ответы: #33

32. Сообщение от Neon (??), 05-Июн-24, 22:01   +/
Приложили бы в описании хотя бы простой  пример аналитического запроса. А то одни общие слова.
Ответить | Правка | Наверх | Cообщить модератору

33. Сообщение от Аноним (30), 06-Июн-24, 00:23   +/
Бог подаст. Типа, на слабо решил взять? Но "мопед не мой, я просто разместил..." А, стоп. И объява не моя, я только цитировал цитированное.

А вообще - учись уиться, если не троллишь. Для начала просто почитай в интернетах как обычно организованы традиционные реляционные БД (все эти таблицы, индексы и т.д.), что такое транзакции в БД и их уровни изоляции. Обязательно почитай про колоночные СУБД, чем они отличаются от традиционных реляционных построчных. Почитай про OLTP и OLAP. Потом желательно бы поработать с тем и другим на крупных базах, хотя бы с десятками и сотнями миллионами строк. Чтобы с одной стороны начальник тебя дрюкал за то, что документы медленно проводятся в системе и постоянно блокировки всплывают и ты бы с этим разбирался и прокачивался (тут больше OLTP), а потом дрюкал за то, что отчеты в налоговую  или накопительные с начала года итоги по десяткам показателей для начальства по пол дня формируются (а это уже больше OLAP). Вот в процессе и изучил бы что такое Data Warehouses для аналитики, все эти построчные и колоночные БД и все эти агрегатные функции, включая разные ROLLUP и CUBE в GROUP BY, GROUPING и GROUPING SETS и оконные функции, все эти (если взять в пример ораклю) ... OVER(), которые тоже аналитика.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру