Репликация SQL Server 2005 года

Я только что написал похожую программу с помощью ребят из Stack Overflow:

from string import punctuation
from operator import itemgetter

N = 100
words = {}

words_gen = (word.strip(punctuation).lower() for line in open("poi_run.txt")
                                             for word in line.split())

for word in words_gen:
    words[word] = words.get(word, 0) + 1

top_words = sorted(words.items(), key=itemgetter(1), reverse=True)[:N]

for word, frequency in top_words:
    print ("%s %d" % (word, frequency))
6
задан raven 24 November 2009 в 13:37
поделиться

2 ответа

Мы широко используем репликацию в нашей компании, так как у нас есть 38 складов в нескольких странах, все реплицирующиеся обратно на наш основной сервер в Лондоне.

Во-первых, ваши фильтры репликации должны использовать представления, даже самые простые ед. Таким образом, если вам нужно настроить фильтр (прочтите предложение WHERE), вам просто нужно изменить представление и все готово. В противном случае вам придется повторно публиковать свои данные и повторно подписывать всех, что может быть настоящей проблемой.

Вы упомянули, что вы запускаете одно и то же удаление и для подписчика, и для издателя, чтобы они синхронизировались. Это вызывает дрожь по моему позвоночнику. Намного лучше удалить их в одном месте и позволить серверу реплицировать сделанные изменения подписчикам. Начиная с SQL Server 2005 репликация стала очень быстрой и эффективной. SQL 2000 был и остается довольно медленным для репликации. Если вы используете SQL 2005/2008, просто убедитесь, что ваш уровень совместимости (щелкните правой кнопкой мыши на db, properties, options) установлен на 90 (2005) или 100 (2008). Это переключает сервер sql на быстрые и эффективные методы репликации.

Другой способ - не удалять данные, а сохранить их и отфильтровать с помощью предложения where в публикации.

2
ответ дан 17 December 2019 в 20:34
поделиться

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

0
ответ дан 17 December 2019 в 20:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: