首頁 資料庫 mysql教程 剖析SQL Server 2005中的报告服务架构

剖析SQL Server 2005中的报告服务架构

Jun 07, 2016 pm 03:04 PM
server sql 剖析 報告 服務 架構

SQL Server报告服务(SSRS)是一个综合性和可扩展的报告平台,它包括一组集成化的处理组件、可编程接口和工具。在本文中,我们将详细地讨论SQL Server报告服务(SSRS)架构。 一、 简介 SSRS是一个综合性的可扩展报告平台,它包括一组集成的处理组件、编程接口和

  SQL Server报告服务(SSRS)是一个综合性和可扩展的报告平台,它包括一组集成化的处理组件、可编程接口和工具。在本文中,我们将详细地讨论SQL Server报告服务(SSRS)架构。

  一、 简介

  SSRS是一个综合性的可扩展报告平台,它包括一组集成的处理组件、编程接口和工具。处理组件是SSRS多层架构的基础,并且能够彼此交互以检索数据、处理布局、生成和把一个报告提交到一个目标。SSRS支持两种类型的组件:

  ? 处理器-确保SSRS的一致性,并提供一个基础结构供开发人员添加新的功能(扩展)。在当前的SSRS发行版本中,处理器本身是不可扩展的。

  ? 扩展-由处理器调用的程序集,执行特定的处理功能,例如数据检索。开发人员能够编写定制扩展。

  图1描述了报告服务架构图;本文后面将更详细地描述这些组件。该图中的箭头显示在SSRS的内部和外部的各组件(外部工具,应用程序,服务和工具)之间的数据流。

剖析SQL Server 2005中的报告服务架构
图1.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服务提供三种端点:

  ? http://localhost/ReportServer/ReportService.asmx的提供是为实现与SSRS2000的向后兼容性。

  ? http:///ReportServer/ReportService2005.asmx是SSRS 2005中新的管理端点。

  ? http:///ReportServer/ReportExecution2005.asmx是新的执行端点。

  一个端点名描述了相应的使用目的。例如,执行端点的设计是为了提供报告执行(处理)接口,并且相应地提供对函数(例如Render)的存取功能。Render函数把生成的报告以一个指定格式(例如HTML)的流形式返回。

  可编程接口便利了从SSRS目录中实现信息检索和在SSRS组件之间的信息交换。
 
  当请求一个报告时(或者通过交互方式或者通过调度和提交处理器),可编程接口初始化该报告处理器组件并开始处理一个报告。

  四、 Report Processor(报告处理器)

  报告处理器把一个Report Server的所有组件绑定到一起,并且负责在SSRS内部的缓冲。缓冲是指,当一个用户打开该报告时,SSRS能够保持处理过的报告的一个副本并且返回该副本。缓冲能够缩短检索一个报告要求的时间,特别如果该报告很大或经常被存取的情况下。所有的报告缓存存储在SSRS目录(具体地说,是存储在ReportServerTempDB数据库)下,并且能够在SQL Server和Report Server重启时仍然存在。
报告处理器执行下列操作:

  ? 执行-检索一个报告定义,并且通过数据处理扩展把它与检索的数据相结合。该操作生成一个中间格式。

  ? 生成-使用生成扩展把中间格式生成为一个请求的输出格式。

  ? 模型处理-这类似Report Builder生成的报告的执行操作,其中包含一个语义模型(或一个简单的模型,它用作一个报告的一个数据源)和一个语义查询。语义查询是指针对一个模型的一个查询;就象一个SQL查询一样,它生成一个报告的数据集。

  下面是报告处理器响应用户请求的方式:

  ? 新的交互式报告请求-中间格式被生成并被传递以便生成扩展;用户接收生成的报告。

  ? 请求生成缓存或快照-中间格式被生成并被存储在数据库中。

  ? 请求缓冲的报告或快照-中间格式被从缓存(或快照)中检索并被传递以便生成扩展;用户接收生成的报告。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
Hibernate 框架中 HQL 和 SQL 的差異是什麼? Hibernate 框架中 HQL 和 SQL 的差異是什麼? Apr 17, 2024 pm 02:57 PM

HQL和SQL在Hibernate框架中進行比較:HQL(1.物件導向語法,2.資料庫無關的查詢,3.類型安全),而SQL直接操作資料庫(1.與資料庫無關的標準,2.可執行複雜查詢和資料操作)。

Oracle SQL中除法運算的用法 Oracle SQL中除法運算的用法 Mar 10, 2024 pm 03:06 PM

《OracleSQL中除法運算的用法》在OracleSQL中,除法運算是常見的數學運算之一。在資料查詢和處理過程中,除法運算可以幫助我們計算欄位之間的比例或得出特定數值的邏輯關係。本文將介紹OracleSQL中除法運算的用法,並提供具體的程式碼範例。一、OracleSQL中除法運算的兩種方式在OracleSQL中,除法運算可以用兩種不同的方式來進行

Oracle與DB2的SQL語法比較與區別 Oracle與DB2的SQL語法比較與區別 Mar 11, 2024 pm 12:09 PM

Oracle和DB2是兩個常用的關聯式資料庫管理系統,它們都有自己獨特的SQL語法和特性。本文將針對Oracle和DB2的SQL語法進行比較與區別,並提供具體的程式碼範例。資料庫連接在Oracle中,使用以下語句連接資料庫:CONNECTusername/password@database而在DB2中,連接資料庫的語句如下:CONNECTTOdataba

如何安裝、解除安裝、重設Windows伺服器備份 如何安裝、解除安裝、重設Windows伺服器備份 Mar 06, 2024 am 10:37 AM

WindowsServerBackup是WindowsServer作業系統自帶的功能,旨在協助使用者保護重要資料和系統配置,並為中小型和企業級企業提供完整的備份和復原解決方案。只有執行Server2022及更高版本的使用者才能使用此功能。在本文中,我們將介紹如何安裝、解除安裝或重設WindowsServerBackup。如何重置Windows伺服器備份如果您的伺服器備份遇到問題,備份所需時間過長,或無法存取已儲存的文件,那麼您可以考慮重新設定WindowsServer備份設定。要重設Windows

1.3ms耗時!清華最新開源行動裝置神經網路架構 RepViT 1.3ms耗時!清華最新開源行動裝置神經網路架構 RepViT Mar 11, 2024 pm 12:07 PM

论文地址:https://arxiv.org/abs/2307.09283代码地址:https://github.com/THU-MIG/RepViTRepViT在移动端ViT架构中表现出色,展现出显著的优势。接下来,我们将探讨本研究的贡献所在。文中提到,轻量级ViTs通常比轻量级CNNs在视觉任务上表现得更好,这主要归功于它们的多头自注意力模块(MSHA)可以让模型学习全局表示。然而,轻量级ViTs和轻量级CNNs之间的架构差异尚未得到充分研究。在这项研究中,作者们通过整合轻量级ViTs的有效

Spring Data JPA 的架構和工作原理是什麼? Spring Data JPA 的架構和工作原理是什麼? Apr 17, 2024 pm 02:48 PM

SpringDataJPA基於JPA架構,透過映射、ORM和事務管理與資料庫互動。其儲存庫提供CRUD操作,派生查詢簡化了資料庫存取。此外,它使用延遲加載,僅在必要時檢索數據,從而提高了效能。

Linux 重啟服務的正確方式是什麼? Linux 重啟服務的正確方式是什麼? Mar 15, 2024 am 09:09 AM

Linux重啟服務的正確方式是什麼?在使用Linux系統時,經常會遇到需要重新啟動某個服務的情況,但是有時我們可能會在重新啟動服務時遇到一些問題,例如服務沒有真正停止或啟動等情況。因此,掌握正確的重啟服務的方式是非常重要的。在Linux中,通常可以使用systemctl指令來管理系統服務。 systemctl指令是systemd系統管理員的一部分

SQL出現5120錯誤怎麼解決 SQL出現5120錯誤怎麼解決 Mar 06, 2024 pm 04:33 PM

解決方法:1、檢查登入使用者是否具有足夠的權限來存取或操作該資料庫,確保該使用者俱有正確的權限;2、檢查SQL Server服務的帳戶是否具有存取指定檔案或資料夾的權限,確保該帳戶具有足夠的權限來讀取和寫入該文件或資料夾;3、檢查指定的資料庫文件是否已被其他進程打開或鎖定,嘗試關閉或釋放該文件,並重新運行查詢;4、嘗試以管理員身份運行Management Studio等等。

See all articles