![]() |
Пред. тема | След. тема | ||
Форум Разговоры, обсуждение новостей | |||
---|---|---|---|
Изначальное сообщение | [ Отслеживать ] |
"Выпуск СУБД SQLite 3.39" | +/– | ![]() |
Сообщение от opennews (??), 25-Июн-22, 23:32 | ||
Опубликован релиз SQLite 3.39, легковесной СУБД, оформленной в виде подключаемой библиотеки. Код SQLite распространяется как общественное достояние (public domain), т.е. может использоваться без ограничений и безвозмездно в любых целях. Финансовую поддержку разработчиков SQLite осуществляет специально созданный консорциум, в который входят такие компании, как Adobe, Oracle, Mozilla, Bentley и Bloomberg... | ||
Ответить | Правка | Cообщить модератору |
Оглавление |
Сообщения | [Сортировка по ответам | RSS] |
1. Сообщение от Аноним (1), 25-Июн-22, 23:32 | +10 +/– | ![]() |
Лучшее что придумали за последний десяток лет. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #2, #8, #25, #29 |
2. Сообщение от Dzen Python (ok), 25-Июн-22, 23:39 | –9 +/– | ![]() |
Именно что для небольших и именно что для нетребовательных. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 Ответы: #7 |
3. Сообщение от Аноним (32), 25-Июн-22, 23:45 | –4 +/– | ![]() |
Хорошая БД, но я жду развития новой GlueSQL embedded БД, написанной на Rust. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #4, #6 |
4. Сообщение от Аноним (32), 25-Июн-22, 23:48 | +1 +/– | ![]() |
Пишите, пожалуйста, новости и про эту БД. Она по сути прямой конкурент. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #3 Ответы: #20, #23 |
6. Сообщение от Dzen Python (ok), 25-Июн-22, 23:59 | +5 +/– | ![]() |
Очередной такой же как sqlite и embed-движки, но другой, да? И это будет снова программная революция, меняющая рынок embed-движков на время хайпа? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #3 Ответы: #17 |
7. Сообщение от Аноним (7), 26-Июн-22, 00:33 | +2 +/– | ![]() |
Да не, нормально. Главное, добавить слипов, чтобы запись из разных потоков не пересекалась. У меня так сотня тредов запущена и записи даже почти не пересекаются в итоге (а они все много пишут и уходят поспать). Даже вообще не пересекаются больше, без достаточных слипов эта сотня тредов часто долбилась и обламывалась. К тому же, куда надёжнее, скажем leveldb, которая, похоже, умирает и вайпает всё, если её не закрыть при сегфолте. Да, я в курсе, что это разные вещи. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #2 Ответы: #9 |
8. Сообщение от Аноним (7), 26-Июн-22, 00:36 | +/– | ![]() |
Оно довольно тормозное. Программы, которые используют, довольно тормозные. Особенно, на мобилках. Ну, и запись из нескольких потоков придётся организовывать отдельно, понадобится какой-нибудь менеджер с обвязкой из семафоров и это всё конечно будет ещё больше тормозить. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 Ответы: #10, #30, #43 |
9. Сообщение от fghj (?), 26-Июн-22, 01:16 | +9 +/– | ![]() |
Да, "sleep" для решения проблем с многопоточностью это именно то что нужно, | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #7 Ответы: #11 |
10. Сообщение от fghj (?), 26-Июн-22, 01:22 | +1 +/– | ![]() |
А какой смысл многопоточно писать в один небольшой файл даже если бы sqlite поддерживал многопоточность? Физически в один и тот же "erase" сектор NAND одновременно двум и более писать не удаться. Поэтому просто выделите отдельный поток для sqlite и к нему очередь задач и все. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #8 Ответы: #12 |
11. Сообщение от Аноним (7), 26-Июн-22, 01:32 | –1 +/– | ![]() |
Если это работает, то это не глупо. Пока потоков было до 20 штук, вообще не сталкивался. На 100 уже пришлось разносить время запуска. Дело в том, что у постгри, вместо которой используется sqlite локально (и в целях экономии), таких проблем нет. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #9 Ответы: #13 |
12. Сообщение от Аноним (7), 26-Июн-22, 01:43 | +/– | ![]() |
Смысл в том, чтобы писать многопоточно. Он поддерживает многопоточность, например, чтений там производится куда больше, чем записей, и с этим никаких проблем. А насчёт ссд, я думаю, контроллер должен с этим разбираться, но это не самое узкое место -- с сетью дела куда хуже обстоят. Я не знаю, как прикрутить очередь задач к ORM, поэтому вряд ли. А вот блокировать, пока кто-то уже пишет, вполне себе вариант, но это, опять же, приведёт к лишним усложнениям, специально для sqlite, ну т.е. роллбэк и повторить коммит это не такие ужасные усложнения по сравнению с синхронизацией асинхронного приложения. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #10 Ответы: #19 |
13. Сообщение от funny.falcon (?), 26-Июн-22, 02:28 | +2 +/– | ![]() |
Так а почему мьютекс не добавить? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #11 Ответы: #21, #28 |
17. Сообщение от Аноним (17), 26-Июн-22, 07:10 | +/– | ![]() |
Завтра выйдет язык ИМЯКАКОЕТО и опять на тебе грабли наступят. Будут пытаться свои студенческие поделки продвигать вместо текущих поделок. Так м живём. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #6 Ответы: #18, #24 |
18. Сообщение от Аноним (18), 26-Июн-22, 07:43 | +/– | ![]() |
Ну повторится и что? По-твоему все обязаны в легаси коде постоянно копаться? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #17 Ответы: #22 |
19. Сообщение от Аноним (19), 26-Июн-22, 08:27 | +5 +/– | ![]() |
Пиши просто: ты не знаешь. Ни как он работает, ни чем его заменить "более производительным". И если софт ты пишешь задницей, то он будет тормозить на чём угодно | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #12 Ответы: #27 |
20. Сообщение от Аноним (19), 26-Июн-22, 08:28 | +1 +/– | ![]() |
Ей до конкурентоспособности лет 20 | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #4 Ответы: #33 |
21. Сообщение от Аноним (21), 26-Июн-22, 09:03 | +/– | ![]() |
Акторный фв не пробовали юзать, для того чтобы лианеризировать записи? sobjectizer, rotor (C++)? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #13 |
22. Сообщение от Аноним (17), 26-Июн-22, 09:17 | +/– | ![]() |
Одно дело когда у тебя система с 1-10 миллионами строк, а другое утилита с 1-10 тысячами, в которой ничего не нужно трогать, так как за 100500 лет она уже достигла пика своего развития. Не нужно исповедовать для такого ПО принцип "Когда коту делать нечего, он намывает свои...". | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #18 |
23. Сообщение от Аноним (23), 26-Июн-22, 10:17 | +/– | ![]() |
Это ты очень смешно пошутил, ценю. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #4 |
24. Сообщение от Аноним (23), 26-Июн-22, 10:18 | +/– | ![]() |
Будет язык zig | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #17 Ответы: #40 |
25. Сообщение от pashev.ru (?), 26-Июн-22, 10:41 | –1 +/– | ![]() |
> Бэкап файлика вместо дампов - отдельный респект. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 Ответы: #45 |
26. Сообщение от fi (ok), 26-Июн-22, 11:57 | +1 +/– | ![]() |
А вот когда они сделают seq чтоб без костелей? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
27. Сообщение от Аноним (7), 26-Июн-22, 14:47 | +/– | ![]() |
Почему не знаю? Это же просто. Переключаешь тип дб и настройки, и используешь ту же схему с постгрей. Для 1 пользователя, очевидно, оверкил. А тормозит то не мой софт, мой как раз не тормозит. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #19 |
28. Сообщение от Аноним (7), 26-Июн-22, 14:58 | +/– | ![]() |
Потому что это вообще не проблема, только у sqlite претензии. Ну хотя бы можно читать во много тредов. Спасибо, попробую покрутить таймауты при необходимости, правда за 6 месяцев аптайма может быть 1 раз на забитом IO такое внезапно случилось (несколько тредов встретились), поэтому можно не беспокоиться, я думаю. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #13 Ответы: #31 |
29. Сообщение от анонимиус (?), 26-Июн-22, 15:31 | +/– | ![]() |
Access лучшее решение для небольших и не особо требовательных проектов :) | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 |
30. Сообщение от Тот Самый (?), 26-Июн-22, 15:52 | +/– | ![]() |
>Программы, которые используют, довольно тормозные. Особенно, на мобилках. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #8 Ответы: #32 |
31. Сообщение от _hide_ (ok), 26-Июн-22, 15:56 | –2 +/– | ![]() |
Что за бред? Если не хочется синхронизаций, тогда пишем один потоком (типо воркера), а данные для записи генерим в других | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #28 Ответы: #35 |
32. Сообщение от Аноним (32), 26-Июн-22, 16:13 | +/– | ![]() |
Нет альтернатив, вот я хочу ,GlueSQL попробовать прикрутить к React Native. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #30 Ответы: #41 |
33. Сообщение от Аноним (32), 26-Июн-22, 16:21 | –1 +/– | ![]() |
Конкретнее? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #20 Ответы: #34 |
34. Сообщение от Бывалый смузихлёб (?), 26-Июн-22, 16:26 | +/– | ![]() |
сабж десятилетиями гонялся на огромном количестве разных устройств, разной конфигурации и под разными ОСями | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #33 Ответы: #36 |
35. Сообщение от Аноним (7), 26-Июн-22, 16:34 | –1 +/– | ![]() |
У меня уже есть пул подключений, которым заведует ORM. Любые попытки его уменьшать или как-то твикать, приводили к очень ощутимой просадке производительности у sqlite, но не решали проблему. Вот так вы пишете одним потоком, а потом sqlite тормозит у юзверей (ну и копирования, копирования, копирования тоже). И как вы себе это представляете я не знаю, вот у меня, допустим, в каждом треде есть короутины, и они все работают напрямую с бд, никаких неэффективных промежуточных этапов и никаких внезапных задержек. Кстати, в один тред холодный запуск (с 0) занимает около 10 минут, а в 100 тредов, около 30 секунд. А вы дальше сидите со своим одним потоком. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #31 Ответы: #46 |
36. Сообщение от Аноним (32), 26-Июн-22, 17:41 | +/– | ![]() |
Обожаю "экспертов" opennet))) | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #34 Ответы: #38 |
37. Сообщение от minonA (?), 26-Июн-22, 17:49 | +/– | ![]() |
Хорошая БД | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
38. Сообщение от Бывалый смузихлёб (?), 26-Июн-22, 18:08 | +/– | ![]() |
> Такое может написать только человек в глаза не видевший SQLite и его | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #36 Ответы: #39 |
39. Сообщение от Аноним (32), 26-Июн-22, 18:26 | +/– | ![]() |
Ясно, по сути ответить то и нечего. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #38 Ответы: #42 |
40. Сообщение от Аноним (32), 26-Июн-22, 23:31 | +/– | ![]() |
Писал на Zig. Rust однозначно лучше. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #24 |
41. Сообщение от Бывалый смузихлёб (?), 27-Июн-22, 07:05 | +/– | ![]() |
> вот я хочу ,GlueSQL попробовать прикрутить к React Native | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #32 |
42. Сообщение от Совершенно другой аноним (?), 27-Июн-22, 10:30 | +/– | ![]() |
Почитайте про разработку SQLite, на хабре были два интервью с его автором (https://habr.com/ru/company/macloud/blog/566396/ и https://habr.com/ru/company/macloud/blog/566540/). Он там рассказывал как и что допиливалось и что огромные силы и средства были вложены в тестирование. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #39 Ответы: #49 |
43. Сообщение от Совершенно другой аноним (?), 27-Июн-22, 10:31 | +/– | ![]() |
> Ну, и запись из нескольких потоков придётся организовывать отдельно, понадобится какой-нибудь менеджер с обвязкой из семафоров и это всё | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #8 Ответы: #44 |
44. Сообщение от Аноним (7), 27-Июн-22, 11:08 | +1 +/– | ![]() |
Конечно, есть. Только закоммитить данные из 2 потоков одновременно нельзя. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #43 |
45. Сообщение от topin89 (ok), 28-Июн-22, 02:28 | +/– | ![]() |
"Ты неправ, как надо не объясню, читай тонны текста в поисках истины". Ну это просто грубо. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #25 |
46. Сообщение от _hide_ (ok), 28-Июн-22, 09:40 | +/– | ![]() |
> У меня уже есть пул подключений, которым заведует ORM. Любые попытки его | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #35 Ответы: #47 |
47. Сообщение от Аноним (7), 28-Июн-22, 10:43 | +/– | ![]() |
Да сеть я выжрал, а не IO. Обновить 10000 записей за час (и добавить сотню новых) это не такая уж ресурсоёмкая задача, зачем делать её проблемной и затратной? А sqlite удобен тем, что он компактный и данные из него потом легко экспортируются в postgres (часть данных на самом деле) для прода. Ну и браузер для sqlite мне особенно нравится, нет денег на проприетарные браузеры для postgres (я знаю, они хорошие), да и санкции опять же. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #46 Ответы: #48 |
48. Сообщение от _hide_ (ok), 29-Июн-22, 13:36 | +/– | ![]() |
> Обновить 10000 записей за час | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #47 |
49. Сообщение от Прохожий (??), 02-Июл-22, 09:41 | +/– | ![]() |
Как эта статья объясняет вот это всё-таки https://www.sqlite.org/src/rptview?rn=1? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #42 Ответы: #50 |
50. Сообщение от Совершенно другой аноним (?), 05-Июл-22, 17:11 | +/– | ![]() |
> Как эта статья объясняет вот это всё-таки https://www.sqlite.org/src/rptview?rn=1? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #49 |
Архив | Удалить |
Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема |
Закладки на сайте Проследить за страницей |
Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |