我有一个包含多个事务复制出版物的大型数据库。每个出版物有 15-20 篇文章。有些订阅是推送的,因此每次将新文章添加到发布时,都必须创建一个新的大快照。为了避免这种情况,我正在考虑为每篇文章创建一个出版物(而不是将文章添加到现有文章中),从而减少对大型快照的需求。我想知道这种方法是否有任何缩小。
我有一个包含多个事务复制出版物的大型数据库。每个出版物有 15-20 篇文章。有些订阅是推送的,因此每次将新文章添加到发布时,都必须创建一个新的大快照。为了避免这种情况,我正在考虑为每篇文章创建一个出版物(而不是将文章添加到现有文章中),从而减少对大型快照的需求。我想知道这种方法是否有任何缩小。
我的最后一个职位是我们有几十种出版物。我们将按大小对文章进行分组,其中具有数百万或数千万行的最大表格将有自己的出版物,而其他表格将被分组在一起。在某些情况下,出版物按单个应用程序所需的表格分组。一些关键表也在他们自己的出版物中,因此如果我们需要在白天重新初始化它,那不会是因为一些次要表。
但这也取决于您的硬件、应用程序等。我们会在白天重新初始化一些出版物,但没有人抱怨。其他人只能在下班后完成。
我们可能发布了 1000 多个表格,因此每篇文章一个表格是不行的。对此没有硬性答案。
您无需每次都创建完整快照即可添加文章。请参见(http://www.sqlservercentral.com/articles/Replication/119650/)
我从来没有为每篇文章创建一个出版物,我认为管理这将是一件令人头疼的事情。我可以看到的一个缺点是,如果您想要重新创建“一组”文章,那么创建这么多出版物将花费更多时间。