导出 (0) 打印
全部展开

SQL Reporting

Azure SQL Reporting 是针对 平台的基于云的报表服务,该平台以 SQL Server Reporting Services 技术为基础。

Important重要提示
为当前订户提供 SQL Reporting 服务,但是不应将它用于新的软件开发项目。该服务将在 2014 年 10 月 31 日停用。有关详细信息,请参阅此常见问题

SQL Reporting 的一个替代方法是使用在 Azure 虚拟机 (VM) 上运行的一个或多个 SQL Server Reporting Services (SSRS) 实例。使用虚拟机,你可以在支持本机或 SharePoint 模式功能集的云中部署可用的报表解决方案。具有 SQL Server 2008 R2 或 2012 的虚拟机支持所有 Reporting Services 功能,包括所有支持的数据源、自定义设置和可扩展性,以及计划的报表执行和传递。

本主题内容:

从 SQL Reporting 迁移到 SSRS 虚拟机的客户出于以下原因已完成这样的迁移:

用于自定义报表的可扩展报表服务器

虚拟机上的 SSRS 在报表中支持自定义代码和程序集引用。如果报表的业务需求包括独特的复杂功能评估或专有的可视控件,你可以在报表文件中嵌入的代码或添加到报表服务器的程序集中提供这些功能。同样,开发人员可以通过添加自定义扩展插件来替换或补充报表服务器操作。有关详细信息,请参阅表达式中的自定义代码和程序集引用Reporting Services 扩展插件

计划的报表执行和传递

除按需报表之外,虚拟机上的 SSRS 支持计划的报表处理,你可以定期检索数据,允许控制远程数据库上的查询执行和在你的网络上进行定时数据传输。计划的报表可以以各种输出格式传递到除报表服务器之外的目标(如电子邮件或文件共享区),其中报表被保存为 PDF、Excel 或 MHTML。请参阅计划订阅和传递

与混合解决方案集成

你可以将 Azure VM 加入公司网络,快速增容,而不会带来硬件购置和设置的负担。将 Azure VM 加入你的域需要一个虚拟网络和专用的 VPN 路由设备。有关详细信息,请参阅 Azure 虚拟网络概述

无论你是在云中构建完整网络还是将 VM 加入现有本地网络,Azure VM 都可以使用 Windows 身份验证来支持单一登录。根据你配置报表的方式,你可能要使用 Windows 标识向报表服务器或后端数据库验证身份。当所有虚拟机加入包含域控制器和 Active Directory 域的虚拟网络时,可以进一步启用标识委托,并且针对 Kerberos 约束委派配置服务。这样做可以允许同一 Windows 标识从客户端应用程序流到报表服务器,最终流到后端数据库以检索与原始请求方有关的权限数据。

更快的性能

已执行并行测试的客户使用虚拟机上的 SSRS 可获得更好的性能。性能提升归因于报表服务器目录位于虚拟机的本地磁盘上。对于处理更大工作负荷的报表服务器,性能提升更明显。

note备注
SQL Reporting 的一个已知问题是报表执行的速度比在本地运行的 SSRS 上执行慢。相反,虚拟机上的 SSRS 性能类似于你在本地 SSRS 实例上的性能。

如果你具有需要有效报表的新软件开发项目,我们建议你考虑运行 SSRS 的 Azure VM。Azure 虚拟机库提供包含具有数据库引擎和 SSRS 的预安装的 SQL Server 版本的映像。库中的 SQL Server 版本具有与本地报表服务器相同的功能。或者,你可以对于单独购买的 SQL Server 版本使用 Windows PowerShell 脚本和安装介质。

下表提供一个方法,你可以使用它来评估对新软件开发项目采用基于云的虚拟机报表解决方案是否合适:

 

步骤 说明 链接

1

在开始前,通过以下方式了解 Azure VM 的基本功能:观看视频,单击 WindowsAzure.com 网站“虚拟机”页上的“浏览”链接。

Azure 虚拟机

2

比较以下两种方式的许可费用:预定义的映像和运行你单独在虚拟机上购买和安装的 SQL Server 许可副本的 Windows Server 虚拟机。根据需要的 SQL Server 功能,你可能发现单独购买 Windows 虚拟机和 SQL Server(Enterprise、Standard 或 Web 版)更划算。在那种情况下,你可能要使用 SQL Server 的许可副本的安装介质在内部创建一个 .vhd,然后将磁盘附加到你的 Windows 虚拟机。

作为 SQL Reporting 的替代方案,你可以使用 Standard 版的 SQL Server,但是根据功能需求和工作负荷,也可能选择其他版本。

使用定价计算器比较许可费用

3

选择最符合业务需求的报表服务器模式和功能。报表服务器模式将确定哪些身份验证子系统和授权模型可用。尽管本机模式最接近 SQL Reporting,但是 SharePoint 模式为声明身份验证、多租户和负载平衡提供现成的支持。

请注意声明标识不能流到位于 SharePoint 环境外部的最后端数据源,因此如果你使用声明,应知道后端数据访问很可能需要单个用户标识的已存储凭据。

比较报表服务器模式之间的功能

针对报表服务器的身份验证(另请参阅 Microsoft BI 身份验证和标识委托

4

通过概念证明测试确定有关部署、设置、报表服务器模式和功能的决策。概念证明测试包括生成和发布允许你从客户端应用程序验证连接的简单报表,以便你可以测试配置、身份验证和授权行为。在初步测试期间,在每个报表中检索足够的数据来了解数据检索和呈现的预期延迟,特别是你在测试包含云服务和本地服务的混合解决方案时。

创建虚拟机

连接到虚拟机

发布数据源和报表

对用户授权

5

最后,评估应包含审核高可用性和可扩展的体系结构,该体系结构对于支持大量用户或报表执行可能是必需的。

在 Azure 虚拟机中部署 SQL Server Business Intelligence

如果你当前在现有软件解决方案中使用 SQL Reporting,将需要在 2014 年 10 月前使用其他技术来替代它。我们建议采用在本机模式下运行 SSRS 的 Azure VM。本机模式 SSRS 提供等效的报表执行和呈现功能,而且新增了 SQL Reporting 不提供的计划的报表执行、自定义设置和订阅传递功能。如果你的目标是替代 SQL Reporting,Standard 版就可提供等效的功能。

选择 SSRS 虚拟机可在报表设计中利用现有的资产。因为报表引擎在这两个平台上是相同的,在 SQL Reporting 中运行的报表也可以在 SSRS 虚拟机上运行。虚拟机方法更改了计费模型。你无需为关闭的虚拟机付费,因此如果你只需要在某些时间执行报表,可以将报表导出为静态格式(如 PDF),在生成报表后停止运行虚拟机。

要将报表迁移到虚拟机,你可以将报表服务器项目部署到虚拟机上的 SSRS,设置目标服务器为虚拟机端点。有关如何配置 SSRS、设置端点、配置防火墙以及发布和测试报表的说明,请参阅 Azure 虚拟机中的 SQL Server Business Intelligence

note备注
使用库映像时,安装但是不配置 SSRS。你必须在虚拟机上配置该服务器并为 SSRS 创建新的报表服务器数据库。不能分离或复制在 Azure 数据中心运行的现有报表服务器数据库。

尽管报表像以前那样运行,但是迁移的其他方面仍需要替换功能或进行手动更改。例如,你将需要替换报表服务器身份验证。此外,从在线服务迁移到虚拟机时,客户端应用程序连接到报表服务器的方式也会更改。你至少需要更新在连接上使用的端点。

报表服务器身份验证

SQL Reporting 使用专有的基于 cookie 的身份验证模块来验证用户标识。身份验证是内置的,不需要单独的服务来配置和维护。运行 SSRS 的虚拟机不具有 SQL Reporting 使用的自定义身份验证模块。因此,移到 VM 平台将要求你选择一个 SSRS 支持的身份验证子系统:Windows 身份验证或基于窗体的身份验证。

替换内置的身份验证模块是一个重要的设计决策。基于窗体的身份验证模块最接近 SQL Reporting 身份验证,但是如果你使用支持 Kerberos 约束委派的数据平台生成报表,实现 Windows 身份验证可以为单一登录和标识委托提供更大的机会。

当你评估虚拟机方法时,要考虑的一个策略是部署其他虚拟机作为域控制器,将 Windows 身份验证和标识委托提供给同一虚拟网络上的其他虚拟机和服务器。有关如何使用虚拟机作为域控制器在云中生成 BI 网络的概述,请参阅在 Azure 虚拟机中部署 SQL Server Business Intelligence 中的“总体环境”一节。有关支持的身份验证类型的回顾,请参阅针对报表服务器的身份验证

报表服务器连接

在你的自定义解决方案中建立开发工具、管理工具和其他应用程序组件之间的连接是验证虚拟机是否可作为 SQL Reporting 的替代方法的必不可少的步骤。按照本主题的说明在 VM 上配置和使用 SSRS:Azure 虚拟机中的 SQL Server 商业智能

数据库连接

在 SQL Reporting 中,唯一支持的数据平台是 Azure SQL Database。在虚拟机上 SSRS 的 Standard 或 Enterprise 版上运行的报表可以继续从 SQL Database 检索数据。在报表内,数据源连接可以继续指定 SQL Database 上数据库用户的凭据。同样,内容迁移后连接字符串不需要修改。

但是,将报表发布到新的报表服务器后,将需要更新密码。因为不能从 SQL Reporting 提取密码,对于用于从 SQL Database 检索数据的嵌入和共享的数据源,你必须重新输入数据库用户密码。

最后,记住添加规则到 SQL Database 防火墙以允许从报表服务器连接。本文提供以下步骤:Azure 虚拟机中的 SQL Server 商业智能

测试连接

作为虚拟机和报表服务器上的管理员,在配置虚拟机且配置 SQL Database 防火墙以接受来自虚拟机的连接后,你应能部署报表项目和验证到 SQL Database 的连接。

我们建议执行使用 PowerShell 创建 Azure VM 的“验证”一节中的步骤。

不熟悉 SSRS 的 SQL Reporting 客户可使用下表来比较这两个平台。

 

比较 Azure VM 上的 SSRS 本机模式 SQL Reporting

功能

虚拟机上的 Reporting Services 实例的功能没有限制,随报表服务器模式或 SQL Server 版本变化的功能除外。在虚拟机上,报表可以从任意支持的数据源检索数据。有关详细信息,请参阅 SSRS 支持的数据源。有关按模式或版本比较功能,请参阅 Reporting Services 报表服务器SQL Server 2012 各个版本支持的功能

SQL Reporting 被限制为作为同一 Azure 订阅一部分的未联合的 Azure SQL Database。支持按需报表执行和呈现,但是不支持计划和订阅传递。

计费模型

计费基于支持数据中心中的虚拟机所需的计算资源。

Microsoft 建议将“中”或“大”虚拟机用于 SQL Server BI 服务器应用程序,具体取决于你计划使用的报表量和 SQL Server 功能数。要提供报表功能,你需要 Reporting Services 和用于报表服务器数据库的数据库引擎实例。

根据虚拟机的大小适用不同的费率,因为虚拟机大小决定分配多少 CPU、内存和磁盘存储空间。有关详细信息,请参阅 SQL Server 的定价详细信息

请注意你无需为关闭的虚拟机付费,因此如果你仅在某些时间使用报表,可以将报表导出为静态格式(如 PDF),然后在报表服务器处于非活动状态时停止运行虚拟机。

计费基于报表执行次数而非计算资源数。如果需要更多容量,将在后台动态添加一个实例。你的账单将逐渐增加以应对更高的报表执行次数。

身份验证和授权

用户可以使用 Windows 身份验证或窗体身份验证向虚拟机上的 SSRS 验证身份。通过支持常用的身份验证子系统,允许更大的软件集成机会和支持跨多个应用程序的标识委托。

对于支持 Windows 身份验证的数据库平台,你可以利用标识委托来将用户标识从调用应用程序流到报表服务器,最终流到后端数据库。有关详细信息,请参阅针对报表服务器的身份验证Microsoft BI 身份验证和标识委托

虚拟机上的报表服务器使用基于角色的授权模型。请参阅授予对本机模式报表服务器的权限

SQL Reporting 具有专有的报表服务器身份验证子系统,仅限于定义用于登录和角色分配的报表用户标识。用户标识不能删除到其他服务器应用程序。

SQL Reporting 使用本机模式 Reporting Services 角色。

软件集成和体系结构

Reporting Services 是位于后端数据源和前端客户端之间的中间层服务,如浏览器或承载报表的自定义网页。评估虚拟机上的 Reporting Services 是否可作为报表解决方案时,你的设计应将 Reporting Services 相应定位为中间层服务。

在体系结构和编程上,报表服务器虚拟机与本地服务器等效。当其他应用程序(如提供嵌入报表的后端数据源或前端应用程序)也在报表服务器虚拟机所在的同一云服务内运行时,云和本地体系结构之间的对等性最容易实现。在大多数情况下,设计用于在本地运行的端到端解决方案可以使用云服务中的虚拟机集合来复制。有关 SSRS 可编程性的详细信息,请参阅开发人员指南 (Reporting Services)

在 SQL Reporting 中,主要通过用于 URL 访问的 HTTP 端点或 SOAP 管理端点执行报表访问,通常要使用窗体或网页中嵌入的 ReportViewer 控件。

请注意,在 SQL Reporting 上,ASP.NET MVC Web 应用程序模板不支持 ReportViewer 控件。

显示:
© 2014 Microsoft