Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
pistona Member Откуда: Сообщений: 4 |
Доброго дня всем. Суть проблемы в следующем: Имеются несколько серверов с MS SQL 2008 r2 с рабочими базами(30 шт), структура одинаковая. Базы достаточно велики(по 100 Гиг каждая). Еще на один сервер делаются реплики со всех этих серверов через лог транзакций. Этот сервер используется для отчетности. Если на рабочей базе записи меняется какой-либо атрибут у строки, то это строка удаляется, и добавляется новая. Затем аналогично это происходит и на сервере реплик. В одной из таблиц со счетами атрибуты меняются довольно часто(более 10тыс в минуту со всех баз) и при репликации образуются периоды времени, что измененной строки нет в таблице на сервере реплик(строка удалилась, но еще не вставилась) несколько минут(1-2). В итоге даже ночью, в самое спокойное время наблюдается исчезновение строк, и скрипты для отчетов работают неверно. Ситуация ухудшается еще тем, что нужно в отчетности обновлять ежедневно таблицы с остатками по счетам, а сделать это можно только инкрементно, иначе повешу сервак. Вот и получается что каждый день «вылетает» пачка счетов и/или пачка остатков к этим счетам. Доступа к логам нет. Как вариант писать свой лог изменения, т.е. не удалять ежедневно инкремент, а накапливать его в таблицах и анализировать, убивать дубли и т.п. Но это нереальный костыль… Кто-то сталкивался с подобным, как правильнее всего организовать выгрузку с подобного сервера реплик??? |
9 дек 13, 23:05 [15267713] Ответить | Цитировать Сообщить модератору |
invm Member Откуда: Москва Сообщений: 9633 |
А запросы для отчетности поди все с nolock? |
||
10 дек 13, 01:05 [15268067] Ответить | Цитировать Сообщить модератору |
Roman_sib Member Откуда: Сообщений: 10 |
странно как то
может быть удаление и вставка разными транзакциями? А режим репликации по расписанию? Тогда нужно сделать чтоб удаление и вставка были одной явной транзакцией (т.е. begin tran.....commit/rollback) и режим репликации - постоянно |
||
10 дек 13, 10:10 [15268904] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |