Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос про репликацию данных


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  там много идей по поводу репликации


Наверх

Титульная страница Поиск, карта сайта Написать письмо