SQL Server 2005:面向信息管理的全新平台

面向各类角色的信息平台

    笔者一直认为自SQL Server 7.0以后称SQL Server应该更多的被称为是数据平台而不是数据库产品,但是到了SQL Server 2005则应该提升为信息管理平台。打开SQL Server 2005 Book Online不难发现,与以往版本最大的区别是微软把读者按照岗位类别进行了划分,同时向系统分析员、架构师、开发人员、信息管理人员和知识工作者汇总了不同的帮助内容,这种划分本身说明SQL Server更强调了对整个信息系统生命周期的支持。以往的文档主要关注的是实施和运维阶段,对于最终用户的介绍非常有限,现在则将SQL Server从需求、架构、设计、实施、运维这条主线贯穿,以一个全生命期的完善平台的姿态呈现在信息系统建设、维护、使用的各类人员面前。
功能组成上的主要增强
    2005版本的SQL Server在功能组成上被划分为如下几个部分:

1)数据库引擎;
2)报表服务引擎;
3)数据分析服务引擎;
4)集成服务引擎;
5)通知服务引擎;
6)全文检索;
7)复制;
8)服务Broker 

    但是,它们之间的关系并不是平行的,而是具有嵌套关系的,如下图所示:

SQL Server体系:整个体系以更主动地方式向用户提供各种信息服务,无论是来自数据引擎的关系数据、XML数据,还是来自分析服务的多维数据,或者是经过集成服务从其他同构或异构平台获得的数据,都可以通过报表服务、通知服务的方式按照用户既定的方式呈递到用户的手中。这个过程可以是用户主动查询发起的,也可以用户根据自己的预定要求按需获得的。

    集成服务:居中的是集成服务,这也是我把SQL Server 2005称之为“信息管理平台”的最主要理由。放眼现有的各类企业应用环境,各类信息系统林林总总,数据源和运行平台也呈百花齐放的态势,各类信息应用出于随需而动要求实现层次也越来越多,如何把纷繁的企业信息环境化简为一个可控的环境,集成服务就是最好的答案。逻辑上,笔者常常把集成服务特化为一个数据HUB或者一个统一数据总线,下面是对企业主要信息系统调整的一个总体架构设计。

    1)应用层次:采用企业数据总线方式抽象集成服务。这样的好处是把以往越来越不可控的企业应用环境,特化为一个个单一入口、单一出口的适配器,所有的交换工作集中在集成服务部分通过管理员的配置完成,大大减少了管理的复杂性。

    2)具体数据交换层次:采用数据HUB方式抽象集成服务。集成服务配合服务Broker可以同时支持单票数据、批量数据、预定数据的分布式交易性交换,因此可以大大减少具体某个应用独立完成这类功能要求,保证跨应用的不同层次间数据交换可以在一个有质量保证的统一容器中完成。

    报表服务:新一版的报表服务在扩展性、安全性、部署等方面均有了非常大的改进,在继承了SQL Server 2000 Reporting Service的众多优势外,新版的报表服务在很多方面都明显优于前辈。
 
   
1)即使是信息工作者(在准备好的Report Model后),也可以随机定义自己需要的报表,还原这个工具服务的主动权到业务用户。 

    2)对于开发人员最好的改进莫过于支持多参数的报表,这对于人员和业务流程相对较为复杂的企业而言,通过多参数可以按照更为贴近业务职责,同时按照所在区域、负责业务分类、业务访问规则把最合适的报表视图呈现给每个具体用户。 

    3)根据表达式动态选择数据源的功能,大大方便了在分布式数据环境下察看报表的功能。 

    数据分析服务:数据分析服务对商业智能的支持上也有了很大的提升,不仅仅体现在发掘算法数量上,而且最主要的相对开发人员而言,它把分析服务从一个相对封闭的系统,变成了一个与数据库一样,处处可以开发的开放环境。XMLAXML for Analysis)、ASSLAnalysis Service Script Language)、AMOAnalysis Management Object)和ADOMD.NET构成了一个完整的开发环境,包括分析服务本身、分析服务元数据、立方体中的数据、各个分析对象都成了开发人员手边的对象。
 

开发技术

主要用途

.Net Framework

作为整个数据分析服务的支撑,可以进行整个分析平台的开发。

Persisted Calculations

面向计算member和计算Cell,可以作为每个Cube独立的Cache内部进行计算。

Stored Procedures

参考数据引擎的概念提供的新特性。
可以把一些面向立方体和数据库计算通过保存为可编程的单元(存储过程),来提高数据分析服务可重用的功能集合。

XML for Analysis

借助统一数据模型(UDM)的支持,通过专门的Provider获得对数据分析服务的XML访问方式。

Analysis Services Scripting Language

用于管理数据分析服务和SQL Server Management Studio的专用脚本语言。

Analysis Management Objects

类似SMO的概念,主要进行数据分析服务Schema级操作的对象模型,可以完成各种分析对象、甚至数据分析服务本身的对象化访问。

ADOMD.NET

主要提供了对于多维数据内容的访问,类比ADO.Net对于数据引擎的访问支持。

从技术结构上不难看出,在SQL Server 2005这个版本上,微软才真正地完善了分析服务的开发模型,提供了与数据服务平行的开发技术,如果究其根源,笔者认为技术上应该是整个SQL Server 2005运行于.Net Framework CLR这个统一对象平台的关系,业务上则是BI市场巨大经济潜力的关系:

    1)通过XMLA,可以把相同Schema特性的不同的数据源经过UDM的抽象,变成一个数据源无关的统一XML视图,这不仅为企业内部异构分析系统互连提供可能,更说明微软借助.Net Framework XMLNative支持,已经把SQL Server数据分析服务也改造成Native XML的。

    2ADOMD.Net的出现则是对于以往ADOMD面向新的分析对象的重新封装,以后开发人员可以在纯.Net环境下,通过SQL Server Native Client的方式高效地访问立方体的数据内容,而不用再通过互操作进行类似的工作,尤其对于Cell的密集访问时,效率将得到更好的提升。

    以往笔者的小组为了完成.Net对于SQL Server 2000分析服务的访问,为了避免这种过渡频繁的互操作带来的性能消耗,使用VC.Net重写了一个Provider,目的是在访问ADOMD的时候,可以把整个DataTable的填充工作在互操作层一次性批量完成后,再一次性地向上层应用反馈填充好的DataTable,而不是在上层生成一个DataTable,然后通过m*n次互操作来填充DataTable

    AMO的出现则是以一个简单的模型向开发人员提供访问机制,类似的工作在以往只能通过WMI或者微软没有公开的一些COM对象访问数据分析服务。 

    通知服务:较之上一版本的 SQL Server 2000SQL Server 2005的通知服务让笔者认为从操作性角度讲可以用“脱胎换骨”来形容。在上一版本的通知服务的很多功能,笔者更乐于用MOM WMI脚本或者用SQL Job来完成,这个版本中通知服务的配置也全部统一到了SQL Server Management Studio,才真正感觉算一个完善的产品。本次版本主要在如下方面做了增强:

    1)基于条件的通知预定(不过笔者建议您在使用该特性的时候要平衡效率因素)。 

    2)可以把整个消息服务引擎用您自己的宿主应用或者进程来执行。 

    3)开始提供对数据分析服务的事件Provider 

    4)虽然在上一版本中通知服务已经提供对Windows Clustering的支持,但是该版本增强了自动监测的功能,通知服务可以通过检查每个节点是否安装了Cluster并且是否已经开始运行,当发现所有的节点成功enlistCluster中后,就用Cluster的默认名称代替Local Computer名称。 

    当然,由于通知服务的功能相对而言还是比较有限的,笔者还是建议如果你的企业在使用MOM或者BMC Patrol之类的企业级统一监控平台的话,那么您没有必要使用通知服务。如果没有的话,通过管理和配置通知服务,结合基于角色的运维人员安排,将为您的企业提供一个不错的低成本SQL Server监控系统。 

    全文检索:新版本的Ful-Text总算为许多开发人员和管理人员提供了所期待的很多功能: 

    1)终于可以用熟悉的DDL方式建立全文检索分类和索引,而不是类似上一版本必须通过存储过程完成这些工作。
 
   
2)更有利的是,可以在链接服务器上执行Full-Text查询。 

    3)对于检索的列也从以往“单列/所有列”的方式下,变成了可以独立定制每个表中一组列。 

    4)以前总是困扰管理员的恢复后重建Full-Text分类的操作,终于可以自动完成了。

    5)对于新加入的XML数据,可以用Full-Text来查询。 

    复制:不谈安全性和管理操作上的增强,笔者认为SQL Server 2005对于复制的增强主要体现在面向企业高可用的环境上,除了以往数据内容的复制外,新版本还可以根据Publisher内容的Schema变化复制Schema的修改。为了进一步提高效率,在进行并行复制后进行Merge的时候,可以过滤选项进行预处理,对于BLOB对象的复制也在性能方面有了较大的提高。

1

SQL Server 2005:你应该知道的13件事情

 

距离微软的SQL Server 2005正式版的推出,已经将近一年的时间。随着最近两份研究报告的出炉,SQL Server 2005又引起了业界的关注和评论——微软凭借SQL Server 2005取得了超过OracleIBM数据库产品市场占有率的增长速度。但是,对于不足一岁的SQL Server 2005,还有一些你应该知道的事情,在本文中列举了关于SQL Server 2005你应该知道的13件事情。

    SQL Server 2005新增的功能 

    1. 新的产品版本 

    SQL Server 2005标准版和企业版之外,产品线中还加入了SQL Server 2005简化版(SQL Server 2005 Express)和工作组版(SQL Server 2005 Workgroup)两个新版本。 

    SQL Server 2005 Express——其作用是代替微软SQL Server桌面引擎(Microsoft SQL Server Desktop EngineMSDE)。SQL Server 2005 Express可以用于自由发布,并与SQL Server使用同样的关系数据库核心引擎。不同的是它并不像MSDE一样使用查询管理器。仅有的限制是一个CPU1G的内存和每个数据库4G的存储空间。 

    SQL Server 2005——工作组版不是自由发布的。它的设计着眼点在于服务器消息块协议(SMB)和分部门解决方案。在量化性能上,它更优于SQL Server 2005 Express,并能提供关系数据库的支持,只是缺少分析服务。工作组版限用于两个CPU3G内存,数据库大小不限。 

    2. 新的子系统 

    在一些新的子系统的推动下,SQL Server 2005中的应用程序支持非常强大,其中包括整合服务、提醒服务、服务代理和报告服务。 

    整合服务——与之前负责此功能的DTS相比,速度快600%SQL Server整合服务是拥有强大的工作流控制能力的企业级ETL平台。 

    提醒服务——可以提供搭建自定义提醒程序的应用框架。 

    服务代理——为建立高度量化程序提供异步进程处理功能。 

    报告服务——这是最值得升级的一项功能。报告服务是企业级的报告生成平台,可以对设计、布署、销售进行详细的报告。强大的ReportBuilder组件可以让最终用户也享受到报告服务。 

    3.整合全新的.NET Framework 

    SQL Server 2005进行的最大的强化就是整合了.NET Framework。启用新的.NET整合功能后,你可以轻松地创建存储过程、函数、触发器、自定义类型、自定义数据集。你可以在任何.NET语言下使用EXEC sp_configure clr enabled' , 1'命令启用CLR支持。如果你还在使用过去的未管理的扩展存储过程,应该立即用SQLCLR存储过程代替。 

    3. 新的数据类型 

    SQL Server 2005中添加了两种新的数据类型:xmlvarbinary(max) 

    Xml数据类型——可以用于在SQL Server数据库中存储类型化或非类型化的XML数据,并通过Xquery进行查询。 

    Varbinary(max)数据类型——可以像访问普通数据一样对图像等二进制数据进行存储和读取。 

    4. 新的点对点事务型映射 

    通过SQL Server 2005中的新功能,我们可以轻松掌握微软对映射作出的这一最大改动。点对点事务型映射是针对双向映射设计的,可以使两个或多个数据库之间在任意一个确认产生改动时保持同

SQL Server 2005缺少的功能

    6.数据镜像 

    毫无疑问,数据镜像是自从SQL Server200511月发布的RTM版本以来一直被人想念的功能,因为它是使企业下定决心升级至SQL Server 2005的主要原因之一。预计这一功能会在2006年下半年重新加入。 

    7.SQL快速管理器 

    快速管理器试图为SQL Server 2005 Express提供图形化的管理界面。然而它的功能有限,运行缓慢,微软不得不在SQL Server Management Studio中放弃了它,并重新命名为Express 

    如何找到SQL Server 2005的这些功能

    如果你是第一次使用SQL Server 2005,或许会被大量的新功能和界面改动弄得眼花缭乱。与任何一个版本相比,SQL Server 2005所做出的改动都是最大的。你会发现在SQL Server 2000SQL Server 7中习惯使用的工具都被修改或去除了。 

    8.SQL Server服务管理器 

    在你升级到SQL Server 2005之后,你或许会有疑问:升级真的完成了吗?因为你会发现系统图标中的服务管理器不见了。SQL Server服务管理器已经被替换成了SQL Server配置管理器,可以通过“开始->程序->SQL Server 2005->管理工具->SQL Server配置管理器”,或者右键点击“我的电脑->管理”,然后打开服务与配置选项卡运行。 

    9.企业管理器 

    要找到新的管理器有一点麻烦,但你很快会发现在SQL Server 2005中,SQL Server企业管理器(SEM)已经被SQL Server管理中心 (SSMS)代替了。在对大量对象和服务器的管理中,SSMS的运行速度更快。一切操作都可以用脚本实现。而且多数对话框不是传统的对话框模式,你可以更好地同时应付多个任务。 

    10.查询分析器 

    对开发人员和数据库管理员来说最重要的查询分析器已经换成了查询编辑器。你可以在管理中心中选择新建查询来调用它。查询编辑器提供了编写和运行T-SQL查询语句的分析器基本功能,并可以与SourceSafe整合进行版本控制。然而,查询编辑器缺少调试T-SQL语句的功能。你需要使用Visual Studio 2005的数据库项目来进行调试。 

    11.分析服务管理器 

    SQL Server 2005中,微软彻底改变了分析服务的管理和开发配置。以往的分析服务管理器被SSMS和商业智能开发中心(BIDS)所代替。分析服务的管理由SSMS处理,创建和部署立方体结构等开发任务由BIDS处理。 

    12.DTS设计器 

    SQL Server 2005中,DTSSQL Server整合服务(SSIS)所代替。在处理过程中,以往的DTS设计器被新的SSIS设计器所代替。SQL Server 2000中,DTS设计器是在企业管理器中启动。而SSIS设计器是在BIDS中启动。打开BIDS,选择“文件->新建->项目->商业智能项目->整合服务项目”以启动SSIS设计器。 

    13.导入/导出向导 

    菜单里没有了这个选项,但它并没有被删除,你可以在命令行模式下运行dtswizard.exe找到它(这个程序是使用SSIS的,不是DTS)。你也可以打开一个SSIS项目,右键点击SSIS包来启动导入/导出。

转载于:https://www.cnblogs.com/Wen9981/archive/2007/12/21/1009550.html