创建和管理远程分区 (Analysis Services)

适用于: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

对度量值组进行分区时,可以将远程SQL Server Analysis Services实例上的辅助数据库配置为分区存储。

称为 master 数据库) 的多维数据集 (远程分区存储在名为辅助数据库) 的远程实例SQL Server Analysis Services (的专用SQL Server Analysis Services数据库中。

专用辅助数据库可以存储一个且仅一个 master 数据库的远程分区,但 master 数据库可以使用多个辅助数据库,前提是所有辅助数据库都位于 SQL Server Analysis Services 的同一远程实例上。 数据库中专用于远程分区的维度作为链接维度创建。

先决条件

在创建远程分区之前,必须满足以下条件:

  • 必须有另一个SQL Server Analysis Services实例和专用数据库来存储分区。 辅助数据库只有一个用途:它提供主数据库的远程分区存储。

  • 两个服务器实例必须是相同版本。 两个数据库应该具有相同功能级别。

  • 两个实例都必须配置为进行 TCP 连接。 SQL Server Analysis Services不支持使用 HTTP 协议创建远程分区。

  • 两个计算机上的防火墙设置都必须设置为接受外部连接。 有关设置防火墙的详细信息,请参阅 将 Windows 防火墙配置为允许 Analysis Services 访问

  • 运行 master 数据库的实例的服务帐户必须对 SQL Server Analysis Services 的远程实例具有管理访问权限。 如果该服务帐户更改,您必须更新对服务器和数据库的权限。

  • 你必须是两台计算机上的SQL Server Analysis Services管理员。

  • 您必须确保灾难恢复计划适合远程分区的备份和还原。 使用远程分区可能使备份和还原操作变得复杂。 请确保仔细测试您的计划,以确保能够还原必需的数据。

配置远程分区

运行 SQL Server SQL Server Analysis Services 实例的两台独立计算机都需要创建远程分区排列,以将一台计算机指定为主服务器,将另一台计算机指定为辅助服务器。

以下过程假定你有两个服务器实例,主服务器上部署了一个多维数据集数据库。 为了实现此过程的目的,我们将多维数据集数据库称为 db-master。 将包含远程分区的存储数据库称为 db-storage。

你将使用 SQL Server Management Studio 和 SQL Server Data Tools 来完成此过程。

注意

远程分区只能与其他远程分区进行合并。 如果您在结合使用本地和远程分区,则也可以创建包括组合数据的新分区,删除不再使用的分区。

为多维数据集部署指定有效服务器名称(在 SSDT 中)。

  1. 在主服务器上:在解决方案资源管理器中,右键单击解决方案名称并选择“属性”。 在“属性”对话框中,依次单击“配置属性”、“部署”、“服务器”并设置主服务器的名称。

  2. 在辅助服务器上:在“解决方案资源管理器”中,右键单击解决方案名称并选择“属性”。 在“属性”对话框中,依次单击“配置属性”、“部署”和“服务器”并设置辅助服务器的名称。

创建并部署辅助数据库(在 SSDT 中)

  1. 在辅助服务器上:为存储数据库创建新的 Analysis Services 项目。

  2. 在辅助服务器上:在 解决方案资源管理器 中创建指向多维数据集数据库 db-master 的新数据源。 使用访问接口“本机 OLE DB\Microsoft OLE DB Provider for Analysis Services 11.0”

  3. 在辅助服务器上:部署解决方案。

启用功能(在 SSMS 中)

  1. 在辅助服务器上:在 SQL Server Management Studio 中,右键单击对象资源管理器中连接的 SQL Server Analysis Services 实例,然后选择“属性”。 将“功能\LinkToOtherInstanceEnabled”和“功能\LinkFromOtherInstanceEnabled”都设置为 True

  2. 在辅助服务器上:右键单击对象资源管理器中的服务器名称并选择“重启”,重启服务器。

  3. 在主服务器上:在“SQL Server Management Studio”中,右键单击对象资源管理器中连接的SQL Server Analysis Services实例,然后选择“属性”。 将“功能\LinkToOtherInstanceEnabled”和“功能\LinkFromOtherInstanceEnabled”都设置为 True

  4. 在主服务器上:若要重启服务器,请右键单击对象资源管理器中的服务器名称,然后选择“重启”。

设置远程服务器上的 MasterDataSourceID 数据库属性(在 SSMS 中)

  1. 在辅助服务器上:右键单击存储数据库 db-storage,指向“将数据库脚本编写为 | ALTER To | New 查询编辑器 Window”。

  2. MasterDataSourceID 添加到 XMLA,然后将多维数据集数据库 db-master 的 ID 指定为值。 XMLA 应类似以下示例。

    <Alter ObjectExpansion="ExpandFull" xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">  
    <Object>  
       <DatabaseID>DB-Storage</DatabaseID>  
    </Object>  
    <ObjectDefinition>  
       <Database xmlns:xsd="http://www.w3.org/2001/XMLSchema" 400"   
          <ID>DB-Storage</ID>  
          <Name>DB-StorageB</Name>  
          <ddl200:CompatibilityLevel>1100</ddl200:CompatibilityLevel>  
          <Language>1033</Language>  
          <Collation>Latin1_General_CI_AS</Collation>  
          <DataSourceImpersonationInfo>  
    <ImpersonationMode>ImpersonateAccount</ImpersonationMode>  
             <Account>*********</Account>  
          </DataSourceImpersonationInfo>  
          <MasterDataSourceID>DB-Master</MasterDataSourceID>  
       </Database>  
    </ObjectDefinition>  
    </Alter>  
    
  3. 按 F5 执行该脚本。

设置远程分区(在 SSDT 中)

  1. 在主服务器上:在多维数据集Designer打开多维数据集,然后单击“分区”选项卡。展开度量值组。 如果度量值组已为多个分区配置,请单击“ 新建 分区”,或单击浏览 (。.) “源”列中的按钮可编辑现有分区。

  2. 在分区向导的 “指定源信息”中,选择初始数据源视图和事实数据表。

  3. 如果正在使用查询绑定,请提供将要创建的新分区的数据进行分段的 WHERE 子句。

  4. 在“处理和存储位置”中,在“处理位置”下选择“远程 Analysis Services 数据源”,并单击“新建”以创建指向从属数据库 db-storage 的新数据源。

    注意

    如果收到错误,指示数据源在集合中不存在,则必须打开存储数据库 db-storage 的项目,并创建指向主数据库 db-master 的数据源。

  5. 在主服务器上:右键单击解决方案资源管理器中的多维数据集名称,选择“处理”并完全处理多维数据集。

管理远程分区

SQL Server Analysis Services支持远程分区的并行和顺序处理。 定义了分区的主数据库将在参与多维数据集分区处理的所有实例之间协调事务。 然后,将处理报表发送给处理了某一分区的所有实例。

包含远程分区的多维数据集及其分区可以在单个 SQL Server Analysis Services 实例上进行管理。 但是,只能在定义了分区及其父多维数据集的 SQL Server Analysis Services 实例上查看和更新远程分区的元数据。 无法查看或更新SQL Server Analysis Services的远程实例上的远程分区。

注意

尽管不向架构行集公开专用于存储远程分区的数据库,但使用分析管理对象 (AMO) 的应用程序仍可以通过使用 XML for Analysis Discover 命令来发现专用数据库。 通过使用 TCP 或 HTTP 客户端直接发送到专用数据库的所有 CREATE 或 DELETE 命令都将成功,但服务器将返回一个警告,指示该操作可能会损害这一紧密管理的数据库。

另请参阅

分区(Analysis Services - 多维数据)