powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
12 сообщений из 12, страница 1 из 1
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015415
Фотография Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВОЗМОЖНА ЛИ РЕПЛИКАЦИЯ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
Обязательное УСЛОВИЕ, чтоб все работало в АВТОМАТЕ (подключился,синхронизировался,отключился и т.п.)
Выручайте ребята, край как надо, сроки горят.
Как можно это организовать.
Заранее ОГРОМНОЕ СПАСИБО за любую предоставленную информацию.
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015417
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.sql.ru/subscribe/70028/10.shtml
Пока только это, а для следующего выпуска рассылки (в четверг) я готовлю большую статью по Merge репликации. Автоматизацию процесса подключения можно реализовать через задания.
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015422
Фотография Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне желательно, что бы процесс синхронизации,настроенный на определенный интервал, устанавливал коннект через удаленное соединение и в случае обрыва восстанавливал соединение, продолжая поцесс синхронизации. Во КАК !!!!
Как это возможно реализовать ??????
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015532
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для соединения, которое может рваться, можно использовать только Merge репликацию. Однако, и ее использование всех проблем не усраняет. Следует иметь в виду, что сам процесс синхронизации может быть продолжительным по времени и может быть прерван очередным обрывом связи. При этом синхронизация производится НЕ в рамках транзакции. А из этого следует, что в целевой БД могут возникнуть (стать видимыми в клиентских приложениях) не все реплицируемые записи, а их часть. Это может привести, например, к тому, что реплицируемая только что оформленная накладная, содержащая 10 строк, может на целевом сервере проявиться (и в таком виде выглядеть довольно продолжительное время!) как накладная всего из 2 строк. В конце концов, когда репликация наконец пройдет до конца, она превратиться в накладную из 10 строк. Но пользователь, увидевший ее как накладную из 2 строк ничего не значет о том, что она неполная и может принять неверное решение в процессе своей работы.
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015568
Фотография Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To Garya:
Ситуация "неполной" синхронизации данных удручает...
Насколько я понял, у Вас есть опыт по синхронизации данных.
А можно ли избежать хотябы части проблем, если для соединения использовать не модем, а ISDN оборудование?
Правда соединение, опять же, должно быть временным (через некие интервалы времени)...
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015578
Виктор Светлов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хочу поделиться работающей технологией. Она весьма хм... убога, но она работает.
Короче, при внесении изменений в БД автоматом добавляются записи в зеркальную БД. Раз в полчаса специальная прога пакует таблицы зеркальной БД в файл, удаляет все записи из зеркальной БД и отправляет пакованный файл по FTP. Все остальное зависит от вашей реализации )). Система работает три года, БД 112 Мегов. 8 удаленных баз данных. Связь по модемам 33,6 и ISDN.
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015580
iocus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у нас принцип формирования файла другой, но идея та же. + такого способа обмен через дискету, ftp, e-mail
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015583
Виктор Светлов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iocus, спасибо за поддержку ))
Коллеги, я вас люблю!
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015596
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Увы, синхронизация данных в удалённой базе, как правило, ещё решается "дедовскими" способами, которые требуют отдельной поддержки и удорожают администрирование. Смею Вас заверить, во всех описанных случаях будет прекрасно работать штатная репликация. Проблема в том, что настройка такой репликации вещь порой не тривиальная имеет массу нюансов и т.п. Именно поэтому, в рассылке этой проблеме я собираюсь уделить особое внимание и попытаюсь найти ответы на наиболее часто встречающиеся проблемы и вопросы. Тех же, кто уже накопил опыт в репликации, призываю поделиться своими знаниям, я для этого готов предоставить свою рассылку и место на сайте. Присылайте мне статьи, я их с удовольствием опубликую.
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015618
Владимир2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу "неполной" синхронизации данных.
Ну во первых при пересылке данных по накладной можно в последнею очередь пересылать информацию об целостности накладной ну и соответственно в клиенте проверять полностью ли перезагрузилась накладная или любой другой объект.
(для обновления ситуация аналогичная)
Как вариант используется отложенная обработка транзакций то есть у объекта может быть свойство определяющее достоверность информации по объекту. В первом положении он может быть "неполностью" синхронизирован.
Во втором положении он "полностью синхронизирован. Этот второй признак может устанавливать менеджер "проверки на корректность" транзакций который будет работать с небольшим запозданием. Опять таки в менеджере необходимо прописывать логику ИС.
Пример 2 оператора в удаленных офисах выписывают товар которого на двоих не хватит.
Но по информации в каждом офисе товара хватает на одного оператора.
Документ проходит и признак становится в первое состояние.
Происходит обмен данными(через центр сервер) менеджер "провенрки " определяет что товара на доих не хватит и после етого например по времени или по приоретености оператора или заказа в одном из заказов правтся количество заказанного недостающего товара с предупреждением "обделенному " оператору об изменении заказа. После етого признак документаовпереводится во второе состояние.
Вообщем вкратце подобные задачи решатся но универсальных решений не существкует. У каждого своя схема
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015633
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С огромным уважением отношусь к Александру Гладченко. Однако, в данном вопросе не могу с ним согласиться. Описанная мной проблема при использовании штатных средств Merge-репликации действительно имеет место по крайней мере, на версии 7.0 (проверено экспериментально, на версии 2000 пока не успел, возможно, что поведение иное). Я не утверждаю, что проблемы репликации неразрешимы, но решение этих проблем требут привлечения кроме штатных средств еще и средств собственной разработки, направленных на решение конкретных проблем. Решение, аналогичное предложению Виктора Светлова, планирую использовать и я. Только не с помощью вспомогательной базы данных, а с помощью импорта/экспорта в файл данных, изменившихся за определенный период. Для того, чтобы это стало возможным, в своей системе буквально все операции полностью журнализируются с помощью самопальных механизмов. А использовать можно все, что угодно - FTP, мыло, дискеты и т.д. В самопальных же механизмах описывается последовательность передачи данных в файлы и закачки данных из них. Предложенная Владимиром2 схема - один из вариантов самопального решения проблем репликации. Эта схема направлена на решение конкретных проблем. Да, действительно, можно в таблице, где хранится заголовочная информация накладной добавить дополнительное поле, в котором сохранять количество строк накладной (а еще более надежно - контрольную сумму всех полей). Накладная, у которой реальное количество строк (контрольная сумма) отличается от указанного в заголовке, должна считаться не полностью перекачанной. Та проблема, решение которой Владимир2 привел во второй части своего постинга, решается совершенно по-разному (или не решается вовсе) на разных предприятиях. На одних предприятиях вероятность возникновения подобной ситуации пренебрежимо мала, а отдельные нестыковки решаются индивидуально в случае их возникновения организационно. В других (среднее решение) - методами, аналогично предложенному. В третьих даже секундное рассогласование между данными считается совершенно недопустимым, тогда используются механизмы распределенных транзакций (которые на рвущейся медленной линии, конечно же неприемлемы и которые приводят к существенному снижению надежности всей системы вцелом).
Кроме высвеченных проблем существует еще огромное море проблем, полное решение которых мне не удалось пока увидеть ни у кого. Обычно достигается некоторый компромис между трудоемкостью разрешения проблем организационными мерами и с помощью репликационных механизмов совместно с собственными техническими решениями. Одна из наиболее часто встречаемых проблем - проблема Foreign key. Если одна таблица ссылается на некие справочные данные другой таблицы, и между ними установлено ограничение целостности Foreign key, то возникают жесткие требования к тому, в какой последовательности должна передаваться информация об изменении содержимого этой пары таблиц. Удаление - сначала на стороне "многие", потом на стороне "один". Добавление наоборот - сначала на стороне "один", потом на стороне "многие". Когда таких связей целая паутина, запутаться немудрено. Одно из самых простых проблем - установить опцию Not for replication для соответствующих ограничений целостности (а также для триггеров, которые выполняют аналогичные функции). Однако, при этом в таблицах могут временно возникать "потерянные" записи (не имеющие ответной части на стороне "один"), и бизнес-логика, заложенная в алгоритмах хранимых процедур, хапросов, посылаемых с клиента и т.д. и ориентированная на заведомо гарантированную логическую целостность данных может выдать некорректные результаты.
Мой постинг уже величиной со статью, а, вроде бы ничего существенного и не сказал ...
...
Рейтинг: 0 / 0
КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
    #32015737
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый Garya, моё уважение к Вам тоже огромно, но я позволю себе с Вами не согласиться и именно в том, что касается описанной Вами проблемы. Мне кажется, что SQL Server предлагает механизм, который призван гарантировать синхронизацию данных (в нашем случае - Merge-репликация). Большего от него и не требуется. Задача разработчика системы в том, что бы используя этот механизм реализовать конкретную задачу. В примере с накладной, никто не мешает разработчику создать и реплицировать ещё одну таблицу, в которой будет храниться содержание каждой накладной или нечто иное, дающее возможность достоверно определить её целостность. В общем, многие проблемы репликации можно предвидеть и разрешать ещё на этапе проектирования физической структуры. И тогда, необходимость подмены стандартных механизмов собственными будет возникать намного реже.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / КАК ОРГАНИЗОВАТЬ СИНХРОНИЗАЦИЮ УДАЛЕННЫХ БАЗ SQL ЧЕРЕЗ МОДЕМ ?????????????
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]