Какие проблемы могут возникнуть при работе программы с файлом БД из удаленной папки?

Есть идея создать следующее приложение.
Клиенты расположены на компьютерах пользователей в сети. Сеть локальная100 Мбит/с.
База данных расположена на сервере в расшаренной папке. Это простой файл SQLite (например).
Клиенты осуществляют чтение/запись в БД из сетевой папки, как будто работают с локальным файлом.

Предполагается, что:
БД будет относительно небольшой
Клиенты будут осуществлять запросы Insert (вставить что то), Select where id=1 (выборка с условием..."поиск по всей базе")
Клиенты могут работать с БД одновременно (в одно и тоже время вставлять данные, читать и т.д.)

Какие проблемы могут возникнуть при такой работе программы с файлом БД из удаленной папки ?

PS
Вариант с стандартным сервером БД, решающий все вопросы выше пока исключен.
  • Вопрос задан
  • 107 просмотров
Решения вопроса 2
sergey-gornostaev
@sergey-gornostaev
Седой и строгий
Разнообразные - от очень медленной работы до порчи данных. SQLite не предназначена для конкурентного доступа, используйте полноценную СУБД.
Ответ написан
@Voland69
Главная проблема - конкурентный доступ. SQLite емнип не предполагает расшаренного доступа к файлу БД.
Вторая проблема - устройство системы разграничения доступа - или у клиента будет доступ на запись в файл (тогда он может сделать все, включая удаление файла), или доступ только на чтение.
Третья проблема связана с главной - даже если получится конкурентный доступ, транзакций не будет уж точно, что имхо при многопользовательском режиме критично.

В общем я бы предложил не исключать вариант с сервером БД.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
Adamos
@Adamos
Энциклопедия граблей по этому поводу двадцать лет собиралась бухгалтериями, гуглится "1С файловый проблемы".
Ответ написан
Комментировать
Достаточно часто будете получать битую базу.
Ответ написан
Комментировать
Здесь все довольно подробно описано.
Ответ написан
Комментировать
@alexalexes
Вариант с стандартным сервером БД, решающий все вопросы выше пока исключен.

Вы не ищите легких путей. Перестаньте мыслить файлами с общим доступом в качестве хранилища. Эту роль как раз целиком и полностью берет полноценная СУБД в вашем кейсе.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы