以下的文章主要介绍的是正确剖析SQL Server 2005报告服务架构的实际操作步骤,SQL Server数据库的报告服务(SSRS)主要是一个综合性与可扩展的报告平台,它包括一组集成化的处理组件、可编程接口和工具。在本文中,我们将详细地讨论SQL Server报告服务(SSRS)架构。
一、 简介
SSRS是一个综合性的可扩展报告平台,它包括一组集成的处理组件、编程接口和工具。处理组件是SSRS多层架构的基础,并且能够彼此交互以检索数据、处理布局、生成和把一个报告提交到一个目标。SSRS支持两种类型的组件:
处理器-确保SSRS的一致性,并提供一个基础结构供开发人员添加新的功能(扩展)。在当前的SSRS发行版本中,处理器本身是不可扩展的。
扩展-由处理器调用的程序集,执行特定的处理功能,例如数据检索。开发人员能够编写定制扩展。
描述了SQL Server 2005报告服务架构图;本文后面将更详细地描述这些组件。该图中的箭头显示在SSRS的内部和外部的各组件(外部工具,应用程序,服务和工具)之间的数据流。
SQL Server报告服务架构。
二、 ReportServer Web和Windows服务
Report Server被实现为web服务和Windows服务的”共同体”。这些服务共同工作以宿主、处理和提交报告。
当SSRS Windows服务启动时,它开始加载基本支持程序集(例如一个SQL数据提供者和接口库),但是它不加载扩展。在这个版本中,SSRS Windows服务处理加密和解密,用作调度和提交处理器的一个宿主。调度和提交处理器使用一个PollingInterval配置来监视”事件”(例如定时订阅)的SSRS目录和事件表格。事件指示SSRS”醒来”并开始处理。
类似于任何.NET web服务,SSRS web服务经由IIS激活(”唤醒”)并且在ASP.NET工作进程(aspnet_wp.exe)中执行。可编程接口使”唤醒”事件更容易。
三、 可编程接口
报告服务可编程接口接收SOAP(经由SSRS web服务)和HTTP请求(经由URL存取)。
SSRS 2005 web服务提供三种端点:
的提供是为实现与SSRS2000的向后兼容性。
是SSRS 2005中新的管理端点。
是新的执行端点。
一个端点名描述了相应的使用目的。例如,执行端点的设计是为了提供报告执行(处理)接口,并且相应地提供对函数(例如Render)的存取功能。Render函数把生成的报告以一个指定格式(例如HTML)的流形式返回。
可编程接口便利了从SSRS目录中实现信息检索和在SSRS组件之间的信息交换。
当请求一个报告时(或者通过交互方式或者通过调度和提交处理器),可编程接口初始化该报告处理器组件并开始处理一个报告。
四、 Report Processor(报告处理器)
报告处理器把一个Report Server的所有组件绑定到一起,并且负责在SSRS内部的缓冲。缓冲是指,当一个用户打开该报告时,SSRS能够保持处理过的报告的一个副本并且返回该副本。缓冲能够缩短检索一个报告要求的时间,特别如果该报告很大或经常被存取的情况下。

所有的报告缓存存储在SSRS目录(具体地说,是存储在ReportServerTempDB数据库)下,并且能够在SQL Server和Report Server重启时仍然存在。
报告处理器执行下列操作:
执行-检索一个报告定义,并且通过数据处理扩展把它与检索的数据相结合。该操作生成一个中间格式。
生成-使用生成扩展把中间格式生成为一个请求的输出格式。
模型处理-这类似Report Builder生成的报告的执行操作,其中包含一个语义模型(或一个简单的模型,它用作一个报告的一个数据源)和一个语义查询。语义查询是指针对一个模型的一个查询;就象一个SQL查询一样,它生成一个报告的数据集。
下面是报告处理器响应用户请求的方式:
新的交互式报告请求-中间格式被生成并被传递以便生成扩展;用户接收生成的报告。
请求生成缓存或快照-中间格式被生成并被存储在数据库中。
请求缓冲的报告或快照-中间格式被从缓存(或快照)中检索并被传递以便生成扩展;用户接收生成的报告。
剖析SQL Server 2005报告服务架构五、 命令行工具
在安装报告服务期间,自动地安装三个管理助理工具:
rs.exe-宿主脚本操作。例如,开发人员能够创建VB.NET脚本以发布一个组报告。
rsconfig.exe-用于修改到Report Server数据库的加密的连接信息。
rskeymgmt.exe-备份/恢复加密数据的对称密钥,该数据为一个Report Server所用;或如果该密钥被丢失的话,删除加密的数据。
注意 SSRS 2005已经放弃了rsactivate.exe工具,这个工具在以前的版本中用于在web场所下激活新的SSRS实例。在SSRS 2005中,激活是使用报告服务配置工具实现的。
六、 报告服务扩展
一个扩展是一个.NET程序集,为报告处理器所调用以执行某种处理功能。存在若干类型的扩展:数据处理,提交,生成,安全(认证和授权),SemanticQuery,ModelGeneration和EventProcessing,等等。
对于一个被Report Server使用的扩展来说,必须把它安装到(假定是默认的SSRS配置)”C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin”目录下,并且在”C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\rsreportserver.config”下进行配置。
一个扩展文件名的最后一部分通常暗示了该扩展的功能。例如,HTML生成扩展的文件名是”Microsoft.ReportingServices.HtmlRendering.dll”。
定制扩展允许开发人员添加在SSRS中不能用的补充功能。例如,一个公司能够实现一个把报告提交到一个电话或一个传真的扩展。
注意 该版本的SSRS不允许定制SemanticQuery,ModelGeneration或EventProcessing扩展。
剖析SQL Server 2005报告服务架构七、 数据处理扩展
数据处理扩展负责从报告数据源检索数据。详细说来,这些任务包括打开到一个数据源的连接,分析查询并返回字段名,传递参数,以及检索和遍历数据集等。表格1概括了包括在SSRS中以及可以用之配置的数据处理扩展。
表格1.能够使用SSRS进行配置的数据处理扩展
扩展 描述/注意事项
SQL Server 连接到并且从SQL Server数据库引擎(从7.0到2005版本)中检索数据。
OLE DB 连接到并且从OLE DB兼容的数据源中检索数据。
Microsoft SQL Server Analysis 连接到并且从SQL Server分析服务2000和2005中检索数据。对于分析服务2005来说,这个扩展支持Multidimensional Expressions(MDX)和Data Mining Expressions(DMX)。对于分析服务2000来说,这个扩展仅支持非参数化MDX。
OrACLe 连接到并且从一个oracle数据库中检索数据;这时,要求在一台安装有Reporting Server的计算机上安装Oracle客户端8i Release 3(8.1.7)。
ODBC 连接到并且从ODBC兼容的数据源中检索数据。
XML 从能够通过URL存取的任何XMLweb源(例如一个web 服务器 )中检索XML数据。
所有的扩展(它们都(除了XML)使用SSRS进行安装)都利用了相应的.NET数据提供者。Microsoft.ReportingServices.DataExtensions库提供包装类,这些类负责提供到.NET数据提供者的SSRS数据处理扩展接口。
开发人员可以创建其它定制数据处理扩展。
剖析SQL Server 2005报告服务架构八、 提交扩展
提交扩展负责把报告提交到特定的设备或格式。在RS中的扩展包括电子邮件和文件共享提交。当用户(或管理员)创建一个订阅时,选择提交方法及相应的扩展。
表格2概括了这些(包括在SSRS中的和使用SSRS进行配置的)提交扩展。
表格2.SSRS包括的提交扩展
扩展 目的
邮件提交 把一个生成的报告提交到一个邮件收件箱。允许设置提交选项-控制输出格式以及是否该报告被提交为一个链接或作为一个附件。
文件共享提交 把一个生成的报告提交到一个共享文件夹。允许设置提交选项-控制一个目的地文件夹路径,一个输出格式以及是否该报告能够覆盖一个更旧版本或被添加为一个新的版本。
开发人员可以创建其它定制提交扩展。
【编辑推荐】
SQL server 2000 和 2005有什么区别?
数据库管理10个最重要的特点特点 描述数据库镜像通过新数据库镜像方法,将记录档案传送性能进行延伸。 您将可以使用数据库镜像,通过将自动失效转移建立到一个待用服务器上,增强您SQL服务器系统的可用性。 在线恢复使用SQL2005版服务器,数据库管理人员将可以在SQL服务器运行的情况下,执行恢复操作。 在线恢复改进了SQL服务器的可用性,因为只有正在被恢复的数据是无法使用的,而数据库的其他部分依然在线、可供使用。 在线检索操作在线检索选项可以在指数数据定义语言(DDL)执行期间,允许对基底表格、或集簇索引数据和任何有关的检索,进行同步修正。 例如,当一个集簇索引正在重建的时候,您可以对基底数据继续进行更新、并且对数据进行查询。 快速恢复新的、速度更快的恢复选项可以改进SQL服务器数据库的可用性。 管理人员将能够在事务日志向前滚动之后,重新连接到正在恢复的数据库。 安全性能的提高SQL Server 2005包括了一些在安全性能上的改进,例如数据库加密、设置安全默认值、增强密码政策、缜密的许可控制、以及一个增强型的安全模式。 新的SQL Server Management StudioSQL Server 2005引入了SQL Server Management Studio,这是一个新型的统一的管理工具组。 这个工具组将包括一些新的功能,以开发、配置SQL Server数据库,发现并修理其中的故障,同时这个工具组还对从前的功能进行了一些改进。 专门的管理员连接SQL Server 2005将引进一个专门的管理员连接,即使在一个服务器被锁住,或者因为其他原因不能使用的时候,管理员可以通过这个连接,接通这个正在运行的服务器。 这一功能将能让管理员,通过操作诊断功能、或Transact—SQL指令,找到并解决发现的问题。 快照隔离我们将在数据库层面上提供一个新的快照隔离(SI)标准。 通过快照隔离,使用者将能够使用与传统一致的视野观看数据库,存取最后执行的一行数据。 这一功能将为服务器提供更大的可升级性。 数据分割数据分割 将加强本地表检索分割,这使得大型表和索引可以得到高效的管理。 增强复制功能对于分布式数据库而言,SQL Server 2005提供了全面的方案修改(DDL)复制、下一代监控性能、从甲骨文(Oracle)到SQL Server的内置复制功能、对多个超文本传输协议(http)进行合并复制,以及就合并复制的可升级性和运行,进行了重大的改良。 另外,新的对等交易式复制性能,通过使用复制,改进了其对数据向外扩展的支持。 有关开发的10个最重要的特点特点 描述 框架主机使用SQL Server 2005,开发人员通过使用相似的语言,例如微软的Visual C# 和微软的Visual Basic,将能够创立数据库对象。 开发人员还将能够建立两个新的对象——用户定义的类和集合。 XML 技术在使用本地网络和互联网的情况下,在不同应用软件之间散步数据的时候,可扩展标记语言(XML)是一个重要的标准。 SQL Server 2005将会自身支持存储和查询可扩展标记语言文件。 2.0 版本从对SQL类的新的支持,到多活动结果集(MARS),SQL Server 2005中的将推动数据集的存取和操纵,实现更大的可升级性和灵活性。 增强的安全性SQL Server 2005中的新安全模式将用户和对象分开,提供fine-grain access存取、并允许对数据存取进行更大的控制。 另外,所有系统表格将作为视图得到实施,对数据库系统对象进行了更大程度的控制。 Transact-SQL 的增强性能SQL Server 2005为开发可升级的数据库应用软件,提供了新的语言功能。 这些增强的性能包括处理错误、递归查询功能、关系运算符PIVOT, APPLY, ROW_NUMBER和其他数据列排行功能,等等。 SQL 服务中介SQL服务中介将为大型、营业范围内的应用软件,提供一个分布式的、异步应用框架。 通告服务通告服务使得业务可以建立丰富的通知应用软件,向任何设备,提供个人化的和及时的信息,例如股市警报、新闻订阅、包裹递送警报、航空公司票价等。 在SQL Server 2005中,通告服务和其他技术更加紧密地融合在了一起,这些技术包括分析服务、SQL Server Management Studio。 Web服务使用SQL Server 2005,开发人员将能够在数据库层开发Web服务,将SQL Server当作一个超文本传输协议(HTTP)侦听器,并且为网络服务中心应用软件提供一个新型的数据存取功能。 报表服务利用SQL Server 2005, 报表服务可以提供报表控制,可以通过Visual Studio 2005发行。 全文搜索功能的增强SQL SERVER 2005将支持丰富的全文应用软件。 服务器的编目功能将得到增强,对编目的对象提供更大的灵活性。 查询性能和可升级性将大幅得到改进,同时新的管理工具将为有关全文功能的运行,提供更深入的了解。 有关商业智能特征的10个最重要的特点特点 描述分析服务SQL SERVER 2005的分析服务迈入了实时分析的领域。 从对可升级性性能的增强、到与微软Office软件的深度融合,SQL SERVER 2005将帮助您,将商业智能扩展到您业务的每一个层次。 数据传输服务(DTS)DTS数据传输服务是一套绘图工具和可编程的对象,您可以用这些工具和对象,对从截然不同来源而来的数据进行摘录、传输和加载(ETL),同时将其转送到单独或多个目的地。 SQL SERVER 2005将引进一个完整的、数据传输服务的、重新设计方案,这一方案为用户提供了一个全面的摘录、传输和加载平台。 数据挖掘我们将引进四个新的数据挖掘运算法,改进的工具和精灵,它们会使数据挖掘,对于任何规模的企业来说,都变得简单起来。 报表服务在SQL SERVER 2005中,报表服务将为在线分析处理(OLAP)环境提供自我服务、创建最终用户特别报告、增强查询方面的开发水平,并为丰富和便于维护企业汇报环境,就允许升级方面,提供增进的性能。 集群支持通过支持容错技术移转丛集、增强对多重执行个体的支持、以及支持备份和恢复分析服务对象和数据,分析服务改进了其可用性。 主要运行指标主要运行指标(KPIs)为企业提供了新的功能,使其可以定义图表化的、和可定制化的商业衡量标准,以帮助公司制定和跟踪主要的业务基准。 可伸缩性和性能并行分割处理,创建远程关系在线分析处理(ROLAP)或混合在线分析处理(HOLAP)分割,分布式分割单元,持续计算,和预制缓存等特性,极大地提升了SQL Server 2005中分析服务的可伸缩性和性能。 单击单元当在一个数据仓库中创建一个单元时,单元向导将包括一个可以单击单元检测和建议的操作。 预制缓存预制缓存将MOLAP等级查询运行与实时数据分析合并到一起,排除了维护在线分析处理存储的需要。 显而易见,预制缓存将数据的一个更新备份进行同步操作,并对其进行维护,而这些数据是专门为高速查询而组织的、它们将最终用户从超载的相关数据库分离了出来。 与Microsoft Office System集成在报表服务中,由报表服务器提供的报表能够在Microsoft SharePoint门户服务器和Microsoft Office System应用软件的环境中运行,Office System应用软件其中包括Microsoft Word和Microsoft Excel。 您可以使用SharePoint功能,订阅报表、建立新版本的报表,以及分发报表。 您还能够在Word或Excel软件中打开报表,观看超文本连接标示语言(HTML)版本的报表。
sql server 2005在创建新的登录用户的时候,不能将这个用户映射到自己附加的一个数据上
我之前也碰到过同样的问题。 产生这个问题原因可能是与原来存在的数据用户有冲突。 我是这样解决的:点击附加的数据库-》安全性,分别删除用户,架构里的旧用户名。 然后再重新添加映射,就好了。 如果不知道要保留什么用户,删除什么用户,就自己新建一个数据库,对比一下就了解了。
sql server数据库的哪个版本功能最全?
SQL Server 2005相对于SQL Server 2000来说,无论是性能还是功能都有一个相当大的提高,甚至可以用“革命”来形容这一次升级。 SQL Server 2005使 SQL Server 跻身于企业级数据库行列。 在数据高可用性方面,SQL Server 2005为用户提供了数据镜像、复制、故障转移群集、日志传送功能。 本文向读者简单介结SQL Server 2005镜像功能。 一、镜像简介数据库镜像是一个高可用性软件解决方案,为客户端提供小于10秒故障转移。 每个数据库镜像配置均包含一个主体服务器(包含主体数据库)、一个镜像服务器(包含镜像数据库)和一个见证服务器,其中见证服务器是可选的。 主体服务器和镜像服务器要求是独立的服务器实例。 主体服务器和镜像服务器的角色是相对的,可以自动或者手动地将主体服务器设置为镜像服务器,镜像服务器设置为主体服务器。 与主体服务器和镜像服务器不同的是,见证服务器并不能用于数据库。 见证服务器监视主体服务器和镜像服务器,确保在给定的时间内这两个故障转移服务器中有且只有一个作为主体服务器,从而支持自动故障转移。 如果存在见证服务器,同步会话将以“高可用性模式”运行,如果主体服务器出现故障,可以实现故障自动转移。 如果见证服务器不存在,同步会话将以“高级别保护模式”运行,出现故障需要手动故障转移,并且有可能丢失数据。 图1:两台服务器镜像图2:两台服务器镜像,一台见证服务器数据库准备结束,端点创建完成,用户便可以启用数据库镜像。 镜像启动后,每个伙伴都将开始维护所在数据库中有关其数据库,以及另一个伙伴和见证服务器的状态信息。 这些状态信息允许服务器实例维护称为“数据库镜像会话”的当前关系。 在数据库镜像会话过程中,服务器实例将通过彼此定期交换 PING 消息来互相监视。
发表评论