powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA репликаця что выбрать SQLRemote или mobilink?
13 сообщений из 13, страница 1 из 1
ASA репликаця что выбрать SQLRemote или mobilink?
    #36446305
_Drive_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день всем!
Есть уже реализованный проект, сеть из >200 клиентов (ASA9) с настроенной репликацией (через FTP) посредством SQLRemote и одной консолидированной БД. Периодически возникает проблема рассинхронизации БД, как правило из-за обрыва связи, клиент не может засинхронизироваться в течении дня (как правило там где связь через модем). А там где ADSL или нормальная сеть в течение нескольких часов все нормализуется. И тогда приходится выгружать БД для клиента и везти ее "ножками". Хорошо что клиенты ВСЕ в Москве (есть пара в Зеленограде). Но !!! вот пришли люди из Подмосковья и сказали хотим такую же "систему" ... и мы впали в раздумье, что таки выбрать? В Московском Sybase все (или почти все) говорят о mobilink, а про SQLRemote в духе - "это прошедший день".
Что думает сообщество по этому вопросу? Насколько он надежен? для плохих линий связи? для НЕпериодического выхода на связь клиентов (ну т.е. не каждый день а 2-3 раза в неделю)
Насколько труден в исполнении, ведь по сравнению с SQLRemote в последнем - настроил публикации, подписки, выгрузил БД, запустил репликацию и ВСЕ!, т.е. не надо писать никаких триггеров, хр. проц. и пр.
PS:в данный момент, в работающей системе приходится ездить к клиентам 1-1,5 раза в неделю .... состав клиентов примерно такой: 90шт. с хорошей связью (ADSL или network) и 130 на модемах
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36446461
ARTURV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Drive_Добрый день всем!
Есть уже реализованный проект, сеть из >200 клиентов (ASA9) с настроенной репликацией (через FTP) посредством SQLRemote и одной консолидированной БД. Периодически возникает проблема рассинхронизации БД, как правило из-за обрыва связи, клиент не может засинхронизироваться в течении дня (как правило там где связь через модем). А там где ADSL или нормальная сеть в течение нескольких часов все нормализуется. И тогда приходится выгружать БД для клиента и везти ее "ножками". Хорошо что клиенты ВСЕ в Москве (есть пара в Зеленограде). Но !!! вот пришли люди из Подмосковья и сказали хотим такую же "систему" ... и мы впали в раздумье, что таки выбрать? В Московском Sybase все (или почти все) говорят о mobilink, а про SQLRemote в духе - "это прошедший день".
Что думает сообщество по этому вопросу? Насколько он надежен? для плохих линий связи? для НЕпериодического выхода на связь клиентов (ну т.е. не каждый день а 2-3 раза в неделю)
Насколько труден в исполнении, ведь по сравнению с SQLRemote в последнем - настроил публикации, подписки, выгрузил БД, запустил репликацию и ВСЕ!, т.е. не надо писать никаких триггеров, хр. проц. и пр.
PS:в данный момент, в работающей системе приходится ездить к клиентам 1-1,5 раза в неделю .... состав клиентов примерно такой: 90шт. с хорошей связью (ADSL или network) и 130 на модемах

mobilink для синхронизации данных приходящих манагеров в центральный офис и можно использовать если у Вас разнородные СУБД (Oracle? MS SQL). SQLRemote должен стабильно работать (если все время не "ковыряться"). Обратите внимание SMTP (почту). Размером писем можно управлять. Есть связь - все передается. Нет связи - ждет когда появиться связь
Во всяком случае работало при сборе данных из ~40 филиалов от Камчатки до Калининграда
При использовании mobilink, как я представляю, Вам придется устанавливать канал соединения
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36446674
_Drive_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ARTURV,

Да, мы в курсе что придется устанавливать соединение ... т.е. могу возникнуть проблемы, если БД
за firewall или у клиента выход в инет через proxy или по соображениям безопасности вообще закрыт доступ в инет по сомнительным портам ... а кроме этих (тоже важных) вопросов другие ограничения, проблемы какие могут возникнуть?
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36447215
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у вас данные только в сторону клиентов ездят ?
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36447405
_Drive_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Марсель,
Нет ... не только, есть и наоборот. Есть даже такие таблицы в которых Update делается и у клиента и в consolidated
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36447428
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Если не хотите переписывать логику посмотри парметр -tu в dbmlsync
2. Если одновременно с синхронизацией будут работать с БД (на запись), будут теряться транзакции
(при -tu lt=OFF)
обход:
ALTER PROCEDURE "DBA"."sp_hook_dbmlsync_logscan_begin"()
BEGIN
END;

но это не полность исключит возможность, просто уменьшит вероятность

3. при lt=OFF - будут проблемы при изменении структуры БД через sp_hook_dbmlsync_schema_upgrade
при lt=ON - проблем с изменением структуры не будет, но будут блокировки, которые не решаться даже при параметре -d

вот как-то так, у меня ...

Для вас я думаю лучше будет сделать паралельно
DBRemote - для всех кто уже работает и нет проблем
mobilink - для новых, а потом переведете и всех из диалапа
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36447478
_Drive_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Марсель,

А как Вы поступаете в случае "рассинхронизации" БД? Или такое в принципе не возможно при условии использования mobilink? А как он (mobilink) ведет себя в случае обрыва связи при передачи больших объемов данных?

PS:ищу для себя аргументы остаться на SQLRemote :-)
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36447583
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так ведь мобилинк созадвался создавлся как синхронный репликатор для хороших каналов свзяи и постоянного соединения. У вас ситуация ровно противоположная, каналы плохие и данные приходят по разным каналам связи. Т.е. вы импользуете именно правильную технологию сейчас.
Главный вопрос в том, - почему разваливается репликация? Она может сильно запаздывать, но не должна разваливаться.
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36447592
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ggg_old пишет:

> так ведь мобилинк созадвался создавлся как синхронный репликатор для
> хороших каналов свзяи и постоянного соединения

Сам Sybase несколько иного мнения:

"MobiLink supports databases that are occasionally connected or
indirectly connected to the network on which the server is running".
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36447678
antand
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ggg_old,

+1
Если допустить, что у автора с настройкой репликаций и увязкой репликаций с логикой в базе - все Ок, то тут только из-за плохого канала.
Подозреваю, что если клиент долго не выходит на связь, скапливается куча сообщений для него. И обработать их по модему и плохому каналу проблема. Постоянные перепосылки и т.п.
На таком канале ничего не спасет.
Можно еще попробовать "обхитрить" SQLRemote, оптимизируя передачу файлов сообщений:
На консолидированной для таких клиентов и на самих клиентах направить репликацию в локальные каталоги.
По выходу клиента на связь реализовать примерно такой сценарий
- на консолидированной пакуются все файлы сообщений для этого клиента в архив
- архив передается клиенту
- распаковыватся в локальный каталог на который натравлен dbRemote
- запускается dbRemote в режиме командной строки. Все примет, все отправит, но оправит в локальный директорий который для консол базы
- пакуем у клиента все в локальном директории для конс базы и передаем файл на конс базу . Там по тому же принципу
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36448662
_Drive_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем большое спасибо! за комментарии и советы (респект antand) ...
Мы примерно так все и предполагали. И последний вопрос. Правильно ли я понимаю, что для ВСЕХ реплицируемых таблиц придется (ручками) написать тройку триггеров отдельно для consolidated и clients БД? и плюc к этому написать процедуры типа sp_hook_dbmlsync_logscan_begin, sp_hook_dbmlsync_schema_upgrade для всяких "сложных" ситуаций. Если учесть, что у нас и так "своих" триггеров, реализующих некую логику, достаточно для этих таблиц то .....
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36448695
_Drive_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть еще вопрос,
он не совсем в ЭТУ тему, но "рядом". В нашей "системе" consolidate БД связана с БД ASE через прокси таблицы и триггеры, т.е. на обоих серверах настроены прокси на одинаковые таблицы. Так вот случаются (иногда) взаимные блокировки, когда например dbremote хочет сделать Update или Insert, который по триггерам через прокси таблицы должен повторить эти действия на ASE, а на ASE делатся Delete из этой же таблицы (они все rowlevel lock scheme) ...
Во всех триггерах проверяется КТО их вызвал (ну в смысле если триггер вызвали "через прокси" то тут же return) .. и в этот момент "может возникнуть" взаимная блокировка .... ведь dbremote лочит ВСЮ таблицу на ASA ... или я что-то не понимаю? и как избежать этого ... или хотябы внутри триггера на ASE узнать что "нужная" таблица на ASA залочена?
...
Рейтинг: 0 / 0
ASA репликаця что выбрать SQLRemote или mobilink?
    #36448705
Марсель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Drive_
А как Вы поступаете в случае "рассинхронизации" БД? Или такое в принципе не возможно при условии использования mobilink? А как он (mobilink) ведет себя в случае обрыва связи при передачи больших объемов данных?


"рассинхронизации" не бывает, бывает тупо убивают БД, тогда если не могут востановить на месте из бэкапа, выгружаем новую (с данными до последней синхронизации) + накатываем лог на месте.
При ошибках БД просто откатывает изменения синхронизации и все, но это можно мониторить и решать оперативно.
При обрыве вроде докачивает ...


_Drive_
Правильно ли я понимаю, что для ВСЕХ реплицируемых таблиц придется (ручками) написать тройку триггеров отдельно для consolidated и clients БД? и плюc к этому написать процедуры типа sp_hook_dbmlsync_logscan_begin, sp_hook_dbmlsync_schema_upgrade для всяких "сложных" ситуаций. Если учесть, что у нас и так "своих" триггеров, реализующих некую логику, достаточно для этих таблиц то .....

Для удаленной только публикация, в центральной скрипты для каждой таблицы (5 основных)
sp_hook_dbmlsync_logscan_begin - надо, она нужна пустая, только в том случае который я описал
sp_hook_dbmlsync_schema_upgrade - нужен если будете изменять структуру БД.
На самом деле там все легко.
Делаете таблицу в которую записываете имя таблицы и какие скрипты делать, и хранимку в которой в центральной бд по этой таблице делаете скрипты + дополнительные поля (timestamp) + триггеры (если надо), а в удаленной изменяете публикацию.
вот как-то так :)
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / ASA репликаця что выбрать SQLRemote или mobilink?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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