|
Пятничная база данных
|
|||
---|---|---|---|
#18+
CEMb Да, я бы почитал. Почитай лучше эту книжку https://www.sql.ru/forum/1304163/literatura-i-dokumentaciya-po-sqlite-na-russkom-yazyke ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 07:26 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
ёёёёё Почему именно FB, не Sqlite? Прежде всего потому что FB embedded разрешает параллельную/одновременную запись из разных потоков/процессов, ну и полноценная субд с транзакциями, развитым языком и т.д., в отличии от. Одновременно писать не разрешает, т.к. в SQLite блокировка сразу всей БД происходит. Но оно и не надо особо, т.к. SQLite это локальная БД на стороне клиента, т.е. к ней обычно подключен один клиент. Читать с разных потоков разрешает во время записи. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 07:43 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
Dima T Одновременно писать не разрешает, т.к. в SQLite блокировка сразу всей БД происходит. И я об этом. Dima T Но оно и не надо особо, т.к. Когда как. Dima T т.к. SQLite это локальная БД на стороне клиента, т.е. к ней обычно подключен один клиент. О чем и речь. А с FB Embedded можно хоть так, хоть сяк: и локально, и без инсталляции, и одновременная запись. А файл базы "потом" можно на "взрослый" сервер без доработок перенести, изменив лишь строку подключения на стороне клиента. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 16:27 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
Dima T Одновременно писать не разрешает, т.к. в SQLite блокировка сразу всей БД происходит. Но оно и не надо особо, т.к. SQLite это локальная БД на стороне клиента, т.е. к ней обычно подключен один клиент. Читать с разных потоков разрешает во время записи. Что написано в документации сходу не скажу. Разбирался с этим давно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 16:49 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
ёёёёё И я об этом Однониточный . В этом режиме все мьютексы отключены, и SQLite небезопасно использовать более чем в одном потоке одновременно. Многопоточный . В этом режиме SQLite может безопасно использоваться несколькими потоками при условии, что ни одно соединение с базой данных не используется одновременно в двух или более потоках. Сериализированные . В сериализованном режиме SQLite может безопасно использоваться несколькими потоками без ограничений. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 16:59 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, продолжай держать руку на пульсе. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:03 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
YUBA Dima T Одновременно писать не разрешает, т.к. в SQLite блокировка сразу всей БД происходит. Но оно и не надо особо, т.к. SQLite это локальная БД на стороне клиента, т.е. к ней обычно подключен один клиент. Читать с разных потоков разрешает во время записи. Что написано в документации сходу не скажу. Разбирался с этим давно. И не заметишь, ну подождал немного один поток пока другой пишет, это не криминал. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:19 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
Dima T, Обычно каждому потоку свой коннект. Либо из пула берут по очереди. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:21 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
ёёёёё О чем и речь. А с FB Embedded можно хоть так, хоть сяк: и локально, и без инсталляции, и одновременная запись. А файл базы "потом" можно на "взрослый" сервер без доработок перенести, изменив лишь строку подключения на стороне клиента. Не готов спорить. C SQLite я только баловался и помогал tchingiz с переводом этой книги . С FB Embedded и с FB вообще ни разу не сталкивался. Поэтому мне сложно сказать почему SQLite популярен несмотря на то что есть FB Embedded, наверно есть причины. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:30 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
ёёёёё PetroNotC Sharp, продолжай держать руку на пульсе. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:32 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Dima T, Обычно каждому потоку свой коннект. Либо из пула берут по очереди. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:33 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Dima T, Обычно каждому потоку свой коннект. Либо из пула берут по очереди. Речь была совсем про другое, про одновременную запись с разных потоков. FB Embedded может писать одновременно в разные места БД, SQLite не может, т.к. у первой постраничная блокировка, у второй блокируется сразу вся БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:34 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
Dima T Поэтому мне сложно сказать почему SQLite популярен несмотря на то что есть FB Embedded, наверно есть причины. FB есть только для Win, Mac и Linux*; для андроида только экспериментальные сборки. А SQLite работает абсолютно везде, очень простая, у нее крошечная библиотека для поддержки. И - транзакции/ХП/триггеры нужны не всем, кому-то даже и мешают. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:37 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
Dima T PetroNotC Sharp Dima T, Обычно каждому потоку свой коннект. Либо из пула берут по очереди. Речь была совсем про другое, про одновременную запись с разных потоков. FB Embedded может писать одновременно в разные места БД, SQLite не может, т.к. у первой постраничная блокировка, у второй блокируется сразу вся БД. Да. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:37 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
YUBA PetroNotC Sharp Dima T, Обычно каждому потоку свой коннект. Либо из пула берут по очереди. Не будет изолированности транзакций. Откатывать как будем? Кроме того, драйвера не thread safe ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:38 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
Dima T Речь была совсем про другое, про одновременную запись с разных потоков. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:39 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Не будет изолированности транзакций. Откатывать как будем? Кроме того, драйвера не thread safe Повторно уже не хочется разбираться. Задача уже давно решена. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:45 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
YUBA Давно А смысл какой брать один коннект? У бд ПАРАЛЛЕЛИЗМ в соединениях. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:46 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
YUBA PetroNotC Sharp Не будет изолированности транзакций. Откатывать как будем? Кроме того, драйвера не thread safe Повторно уже не хочется разбираться. Задача уже давно решена. Зачем. Может ты сам разруливал руками и параллельного доступа не было. В очередь потоки строил. Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:47 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
PetroNotC Sharp то есть ты взял коннект. Отдал в 100 потоков и они пошли писать параллельно? А смысл какой брать один коннект? У бд ПАРАЛЛЕЛИЗМ в соединениях. А смысл брать много коннектов? Одна DLL, в ней один коннект на все операции с БД. В старых версиях SQLite это было невозможно, в новых ограничения сняты, насколько я понимаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:52 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
PetroNotC Sharp YUBA Давно А смысл какой брать один коннект? У бд ПАРАЛЛЕЛИЗМ в соединениях. SQLite особенный, и соединения особенные, ты же уже ответил 22076971 , по дефолту соединения Сериализированные. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 17:53 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
Dima T, Понятно. Там в этом режиме мьютексы внутри все разруливают. Да, встроенный режим это особенная эксплуатация. Согласен. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:01 |
|
Пятничная база данных
|
|||
---|---|---|---|
#18+
PetroNotC Sharp бывает нужно для этого https://ru.m.wikipedia.org/wiki/ACID ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2020, 18:08 |
|
|
start [/forum/topic.php?fid=57&msg=39924779&tid=2017239]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
135ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
others: | 299ms |
total: | 543ms |
0 / 0 |