![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос про репликацию данных
atruhin © (2005-02-16 14:13:00)Недано была ветка, посмотрел, и тоже возник вопрос.
Есть сервер с общей таблицей, есть нескольго серверов (клиенты) с таблицами той-же структуры, где постоянно накапливаются данные. Нужно перенести новые данные на сервер и для перенесееных данных установить флаг, что данные перенесены.
Сейчас алгоритм такой:
1. Считываем 1 запись с клиента;
2. Записываем ее на сервер;
3. Commit на сервере;
4. устанавливаем флаг что запись передана;
5. Commit на клиенте;
6. Если в 4,5 ошибка удаляем запись на сервере.
Проблема в том что предположим, после пункта 3 программа падает,
тогда в следующем сеансе данная запись будет сохранена еще раз.
Сейчас на сервере сохраняется PK записи клиента и при вставке проверяется нет ли этой записи.
Все работает но достаточно медленно т.е. обработка каждой записи отдельно, что можете посоветовать?
Карелин Артем (2005-02-16 15:10:00) [1]Нерационально делать коммит на каждую запись.
msguns (2005-02-16 14:40:00) [2]Зачем вообще на клиенте что-то помечать ?
Sergey13 (2005-02-16 14:23:00) [3]1.Что за сервер?
2.Если
>Сейчас на сервере сохраняется PK записи клиента и при вставке проверяется нет ли этой записи.
То почему
>Проблема в том что предположим, после пункта 3 программа падает,
тогда в следующем сеансе данная запись будет сохранена еще раз.
Rule (2005-02-16 14:17:00) [4]почитай на ibase.ru там много идей по поводу репликации