Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Одноранговая репликация транзакциями  [new]
AnaTom
Member

Откуда:
Сообщений: 6
Есть два сервера SQL 2005 удаленные.

Настроил одноранговую репликацию транзакциями моментальной передачей изменений (как было написано в официальном описании).

Почему данная модель репликации, т.к. изменяют и используют общие данные оба сервера.
Первчиные ключи были у всех таблиц.
Почему не слиянием, т.к. не хотелось переписывать кучу хранимок, т.к. предыдущие программисты много писали "INSERT xx INTO SELECT....", а при слиянии как понимаю, будет новое свое поле.

Но происходят большие тормоза при записи данных и иногда при чтении или выполнении хранимок (без изменениям данных).

Канал между серверами не стабильный.

Первый сервер отдельный мощнее второго.
Второй - виртуальный (на визическом сервере 4 виртуальных)

Когда на первом сервере происходит большой объем добавлений и изменений, то на втором сервере тормоза при работе со SQL.

В чем быть проблема, возможно что-то не правльно сделали...или все-таки не та модель репликации?
18 янв 13, 22:16    [13794458]     Ответить | Цитировать Сообщить модератору
 Re: Одноранговая репликация транзакциями  [new]
invm
Member

Откуда: Москва
Сообщений: 9632
AnaTom
Настроил одноранговую репликацию транзакциями моментальной передачей изменений (как было написано в официальном описании).
Нету в документации ничего про "моментальность".
AnaTom
Почему данная модель репликации, т.к. изменяют и используют общие данные оба сервера.
MS наоборот не рекомендует данную модель репликации при изменении общих данных.
AnaTom
Почему не слиянием, т.к. не хотелось переписывать кучу хранимок, т.к. предыдущие программисты много писали "INSERT xx INTO SELECT....", а при слиянии как понимаю, будет новое свое поле.
Нет такой инструкции "INSERT xx INTO SELECT....". А вот если используется "SELECT * INTO...", то да.
AnaTom
Но происходят большие тормоза при записи данных и иногда при чтении или выполнении хранимок (без изменениям данных).

Канал между серверами не стабильный.

Первый сервер отдельный мощнее второго.
Второй - виртуальный (на визическом сервере 4 виртуальных)

Когда на первом сервере происходит большой объем добавлений и изменений, то на втором сервере тормоза при работе со SQL.
Странно ожидать "мгновенности" при нестабильном канале и большом объеме изменений. Вероятнее всего у вас конфликт читателей и писателей. Ну и все еще усугубляется виртуализацией.
AnaTom
В чем быть проблема, возможно что-то не правльно сделали...или все-таки не та модель репликации?
Перейти на мерж и улучшить канал, дополнительно рассмотреть возможность применения RCSI.
18 янв 13, 23:18    [13794649]     Ответить | Цитировать Сообщить модератору
 Re: Одноранговая репликация транзакциями  [new]
Ennor Tiegael
Member

Откуда:
Сообщений: 3348
Я бы советовал подумать об альтернативных решениях. Если канал стабилизировать нельзя, то реплика на нем будет работать плохо, причем любая реплика.

В предыдущей конторе мы в конечном итоге написали собственный экспорт на сервис брокере (ибо на том маршруте реплика вообще не жила) - вот ему реально пофиг качество канала. Правда, у нас изменения были односторонними.
19 янв 13, 08:20    [13795541]     Ответить | Цитировать Сообщить модератору
 Re: Одноранговая репликация транзакциями  [new]
Ennor Tiegael
Member

Откуда:
Сообщений: 3348
invm
Нет такой инструкции "INSERT xx INTO SELECT....". А вот если используется "SELECT * INTO...", то да.
Пардон?
insert into dbo.Table1
select * from dbo.Table2;
Просто ТС не там ХХ поставил, видимо.
19 янв 13, 08:22    [13795543]     Ответить | Цитировать Сообщить модератору
 Re: Одноранговая репликация транзакциями  [new]
invm
Member

Откуда: Москва
Сообщений: 9632
Ennor Tiegael
Просто ТС не там ХХ поставил, видимо.
Именно так. Но от этого смысл написанного поменялся кардинально.
19 янв 13, 09:52    [13795598]     Ответить | Цитировать Сообщить модератору
 Re: Одноранговая репликация транзакциями  [new]
AnaTom
Member

Откуда:
Сообщений: 6
invm
Странно ожидать "мгновенности" при нестабильном канале и большом объеме изменений.
"мгновенность"? разница в 5-7 минут допустима. а по рассписанию можно сделать одноранговую репликацию, типа каждые 5-7 минут?

invm
Вероятнее всего у вас конфликт читателей и писателей.
и в чем это выражется и как его минимизировать?

invm
Ну и все еще усугубляется виртуализацией.
о как..а про это что-то можно сказать? какая взаимосвязь?
19 янв 13, 12:45    [13795836]     Ответить | Цитировать Сообщить модератору
 Re: Одноранговая репликация транзакциями  [new]
invm
Member

Откуда: Москва
Сообщений: 9632
AnaTom
"мгновенность"? разница в 5-7 минут допустима. а по рассписанию можно сделать одноранговую репликацию, типа каждые 5-7 минут?
Вам одноранговая не подходит. Хотя бы потому, что
http://msdn.microsoft.com/ru-ru/library/ms151196%28v=sql.105%29.aspx
При включенном обнаружении конфликтов конфликтующее изменение по умолчанию рассматривается как критическая ошибка, вызывающая сбой агента распространителя. В случае конфликта топология остается в несогласованном состоянии, пока конфликт не будет разрешен вручную, а данные согласованы во всей топологии
Если считает это несущественным, то дерзайте.
AnaTom
и в чем это выражется и как его минимизировать?
В виду нестабильности канала, а следовательно низкой скорости, и большого объема данных, транзакции на партнере применяются медленно. Соответственно блокировки удерживаются долго, снижая конкурентность доступа к данным. Облегчить участь читателей можно включив RCSI. С писателями ничего не поделать -- они будут ждать снятия блокировок.
AnaTom
о как..а про это что-то можно сказать? какая взаимосвязь?
Для сиквела есть рекомендации вендоров решений виртуализации, например:
http://www.vmware.com/files/pdf/sql_server_virt_bp.pdf
http://download.microsoft.com/download/d/9/4/d948f981-926e-40fa-a026-5bfcf076d9b9/sql2008inhyperv2008.docx
Что-то мне подсказывает, что у вас их не изучали...
19 янв 13, 13:37    [13795969]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить