Задать вопрос

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

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

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

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

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

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

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

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

Похожие вопросы