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

Откуда: Нижневартовск
Сообщений: 39
Нужно реплицировать только для просмотра
очень маленькие (до 100 записей),
но часто обновляющиеся таблицы (раз в сек. и более).
В связи с этим два вопроса:

1. Возможно ли организовать что-то типа снапшот-репликации
без блокировки таблиц в публикуемой базе
с интервалом обновления , скажем, раз в 1минуту?

2. Возможна ли "материализация"/актуализация данных в
материализованных представлениях по запросу
(через опред. интервал или вызов процедуры),
а не по изменению данных в исходных таблицах?
По аналогии с мат. представлениями в Oracle.
10 фев 05, 14:48    [1313578]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Обновления могут производиться на каждом сервере или только на главном?
10 фев 05, 14:53    [1313597]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Насчет второго, возможно, я ошибаюсь, но кажется, такое невозможно. Материализованное представление - это Indexed View. То, что хранится в базе как "материализация", изменяется, когда изменяются данные в базовых таблицах. Вроде бы нет никаких настроек, которые позволили бы сделать это "по запросу" или по расписанию.
10 фев 05, 15:01    [1313620]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
Игорь Афлатунов
Member

Откуда: Нижневартовск
Сообщений: 39
Обновления могут производиться на каждом сервере или только на главном?

Обновления таблиц производятся только на источнике.
10 фев 05, 15:01    [1313621]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Мне кажется, что репликация любого типа здесь не очень подходит. Чтобы излишних блокировок не было, надо использовать транзакционную или слиянием. Но, с другой стороны, оба этих типа основаны на триггерах, добавление которых может не лучшим образом сказаться на производительности. Насколько сильно - надо тестировать на реальных данных.

Возможно, вам больше подойдет Log Shipping, который по сути является копированием транзакшн лога на сервера-зеркала и накатывание его на "подчиненные" базы. Раз у вас изменения только на одном сервере, то это вполне нормально. Отсутствие дополнительных блокировок и излишних тормозов - то, что вам надо.
10 фев 05, 15:08    [1313652]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
Игорь Афлатунов
Member

Откуда: Нижневартовск
Сообщений: 39
Насчет второго, возможно, я ошибаюсь, но кажется, такое невозможно.

Я тоже не нашел никаких способов :(.

Похоже что остается только "ручной" вариант - truncate ... & select into ... ?!
10 фев 05, 15:08    [1313653]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
Игорь Афлатунов
Member

Откуда: Нижневартовск
Сообщений: 39
Возможно, вам больше подойдет Log Shipping,

Log Shipping возможен из нескольких баз в одну центральную ?
Речь идет о центральном хранилище куда сливается информация с разных баз.
10 фев 05, 15:12    [1313673]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Игорь Афлатунов

Log Shipping возможен из нескольких баз в одну центральную ?
Речь идет о центральном хранилище куда сливается информация с разных баз.

Эй, погодите. Вы только что утверждали обратное - что изменения производятся на одном сервере, а деплоятся на остальные (не знаю сколько) в read-only режиме.

Либо первое, либо второе - это противоположные системы!
10 фев 05, 15:35    [1313794]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
Yuri_dp
Member

Откуда: Днепропетровск
Сообщений: 305
А чем вам мешает транзакционная репликация?
Без обновления на подписчике... Триггеров тут вообще никаких нету, на публикаторе log reader читает транзакции и передает их на подписчик, там выполняются ХП, которые и работают с таблицами... Пропускная способность очень большая. Например, по каналу 36К все чеки магазина на 5 касс за день льются 10-15 минут, а это 15-20 тыс. записей новых...
11 фев 05, 03:53    [1315023]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
Yuri_dp
Member

Откуда: Днепропетровск
Сообщений: 305
А чем вам мешает транзакционная репликация?
Без обновления на подписчике... Триггеров тут вообще никаких нету, на публикаторе log reader читает транзакции и передает их на подписчик, там выполняются ХП, которые и работают с таблицами... Пропускная способность очень большая. Например, по каналу 36К все чеки магазина на 5 касс за день льются 10-15 минут, а это 15-20 тыс. записей новых...
11 фев 05, 04:10    [1315028]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
Игорь Афлатунов
Member

Откуда: Нижневартовск
Сообщений: 39
Вы только что утверждали обратное - что изменения производятся на одном сервере, а деплоятся на остальные (не знаю сколько) в read-only режиме.

Изменения производятся на источнике/источниках, а на центральном сервере информация с разных источников доступна только для чтения.
11 фев 05, 05:59    [1315055]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
Игорь Афлатунов
Member

Откуда: Нижневартовск
Сообщений: 39
А чем вам мешает транзакционная репликация?

В качестве БД на объектах-источниках
предполагается исползовать MSDE,
а он не поддерживает публикацию транзакцонной репликации.
11 фев 05, 06:05    [1315059]     Ответить | Цитировать Сообщить модератору
 Re: Репликация маленьких, но часто обновляющихся таблиц.  [new]
GreenSunrise
Member

Откуда:
Сообщений: 12310
Так у вас MSDE... Она Log Shipping тоже не поддерживает...
11 фев 05, 11:54    [1315376]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить