如何优化参数化行筛选器 (SQL Server Management Studio)
以下设置可用于优化参数化行筛选器:
- 分区选项
在**“项目属性 - <项目>”对话框的“属性”页或在“添加筛选器”对话框中设置此选项。在新建发布向导和“发布属性 - <发布>”对话框中都有这两个对话框。“项目属性 - <项目>”对话框使您可以为此选项指定“添加筛选器”**对话框中没有的其他值。 - 预计算分区
如果发布中的项目符合一组要求,则此选项在默认情况下将设置为 True。有关这些要求的详细信息,请参阅使用预计算分区优化参数化筛选器的性能。可在**“发布属性 - <发布>”对话框的“订阅选项”**页中修改此选项。 - 优化同步
仅当**“预计算分区”设置为 False 时此选项才应设置为 True。在“发布属性 - <发布>”对话框的“订阅选项”**页中设置此选项。
有关使用新建发布向导和访问**“发布属性 - <发布>”**对话框的详细信息,请参阅如何创建发布和定义项目 (SQL Server Management Studio) 和如何查看和修改发布属性以及项目属性 (SQL Server Management Studio)。
在“添加筛选器”或“编辑筛选器”对话框中设置分区选项。
在新建发布向导的**“筛选表行”页或“发布属性 - <发布>”对话框的“筛选行”页上,单击“添加”,然后单击“添加筛选器”**。
创建参数化筛选器。有关详细信息,请参阅如何定义和修改合并项目的参数化行筛选器 (SQL Server Management Studio)。
选择符合订阅服务器之间数据共享方式的选项:
- 此表中的行将转到多个订阅
- 此表中的行将仅转到一个订阅
如果选择**“此表中的行将仅转到一个订阅”**,则合并复制可以通过存储和处理较少的元数据来优化性能。但是,必须确保对数据分区时不能将行复制到多个订阅服务器。有关详细信息,请参阅主题参数化行筛选器中的“设置‘分区选项’”部分。
单击“确定”。
如果处于**“发布属性 - <发布>”对话框中,请单击“确定”**以保存此对话框,然后将其关闭。
在“项目属性 - <项目>”对话框中设置分区选项
在新建发布向导的**“项目”页上或在“发布属性 - <发布>”对话框中,选择一个表,然后单击“项目属性”**。
单击**“设置突出显示的表项目的属性”或“设置所有表项目的属性”**。
在**“项目属性 - <项目>”对话框“属性”选项卡的“目标对象”部分中,为“分区选项”**指定以下一个值:
- 重叠
- 重叠,不允许分区外的数据更改
- 不重叠,单个订阅
- 不重叠,由所有订阅共享
有关这些选项以及它们与**“添加筛选器”和“编辑筛选器”**对话框中选项的关系的详细信息,请参阅参数化行筛选器的“设置‘分区选项’”部分。
单击“确定”。
如果处于**“发布属性 - <发布>”对话框中,请单击“确定”**以保存此对话框,然后将其关闭。
设置预计算分区
在**“发布属性 - <发布>”对话框的“订阅选项”页上,为“预计算分区”**选项选择一个值。在以下情况下,则此属性为只读:
- 发布不满足对预计算分区的要求。
- 尚未为发布生成快照。这种情况下,该选项会显示**“创建快照时自动设置”**值。
单击“确定”。
设置优化同步
在**“发布属性 - <发布>”对话框的“订阅选项”页上,为“优化同步”**选择 True 值。
单击“确定”。
请参阅
任务
如何在合并项目之间自动生成一组联接筛选器 (SQL Server Management Studio)
如何定义和修改合并项目的参数化行筛选器 (SQL Server Management Studio)
概念
其他资源
How to: Optimize Parameterized Row Filters (Replication Transact-SQL Programming)