数据可互操作性概述

日期: 2008-06-09 来源:TechTarget中国

  微软是如何使异类企业交叉平台变得熟悉的


  多数关键任务的企业数据存在于不同计算平台上不同的数据存储中。因此,成功的企业级解决方案必须能够胜任异类环境并访问数据,而不管数据的形式或者位置。


  在Microsoft Windows平台上开发企业级数据可互操作性解决方案的基础是微软分布式网间应用程序结构(Microsoft Windows Distributed interNet Applications Architecture),也称作Windows DNA。这个结构基于广泛使用的组件对象模型(COM),指出了在Windows平台下如何开发健壮的、可伸缩的、分布式的应用程序。它扩展了数据和外部应用程序以支持基于Web的应用程序和各种各样的客户设备,使应用程序的能力得到了最大的扩展。


  关键:可互操作性和重用


  Windows DNA的两个关键特性是它的可互操作性和它能够重用。不像传统的软件开发要求每个应用程序都从零开始,组件对象模型(COM)使开发人员可以使用一系列小的软件对象(COM组件)来创建复杂的应用程序。例如,COM组件的可以包括信用卡验证程序,或者计算装运费用的商业规则。COM编程模式允许多个开发小组同时开发一个软件的不同部分,从而加速了开发过程,


  COM还有编程语言无关的优点。这意味着Windows开发人员可以使用熟悉的工具和语言,例如Microsoft Visual Basic和Microsoft Visual C++来创建COM组件。对于非Windows平台的程序员来说,包括大型机上的COBOL程序员和Web程序员,可以使用简单的脚本语言例如VBScript和Microsoft JScript来访问COM组件。使用Windows DNA,可以访问那些使用一致的组件模型–COM来开发的各种各样的服务和产品,从而简化了开发过程。


  这些服务的一个例子就是微软所谓的”可互操作性COM服务”,它包括了网络、数据、应用程序和管理服务,这些都是现在微软产品如SQL Server和SNA Server的一部分。可互操作性COM服务提供了系统集成的通用方法,可以使用目前可利用的各种各样的COM组件。


  框架:4层可互操作性


  微软基于网络、数据、应用程序和管理的工业标准,为可互操作性定义了一个4层的框架。微软提供了对于所有这4个类别中可互操作性组件的访问。该文档集中讨论了数据可互操作性层,概述了在企业环境中如何通过各种各样可用的COM组件访问多种数据存储。


  企业的日常运转依赖于多种数据源,包括数据库服务器、老式的无格式文本文件记录、E-mail通信、个人文档(电子表格、报告或者演示文档)以及基于Web的信息出版服务器。一般而言,应用程序、最终用户和决策者使用大量不同的非标准界面来访问这些数据源。数据可互操作性标准允许用户透明地访问和修改整个企业内的数据。


  通用数据存取(UDA)正是每个人都希望的


  微软的数据可互操作性策略,被称为通用数据存取(UDA),它使用COM组件提供访问任何类型数据的统一编程模型,而不管这些数据位于企业的哪个角落。作为一种易于使用、工具和语言独立的编程结构,UDA提供了高效访问多种关系性和非关系性数据源的COM组件。


  由通用数据存取(UDA)策略所构成的技术使机构能够集成不同的数据源,创建易于维护的解决方案,并使用他们认为最适合的工具、应用程序和平台。为了保护现有投资,UDA不要求把数据转移到单一的数据源中,那样非常昂贵而且费时;也不要求使用同一家厂商的数据产品。UDA基于受到广泛支持的开放工业标准,而且能够与目前所有主要的数据库平台一起工作。


  微软数据存取组件(The Microsoft Data Access Components,MDAC)是通用数据存取的关键技术。通过MDAC,在Web或者在局域网内部署的数据驱动的客户机/服务器应用程序能够容易地集成来自不同数据源的信息,不管这些数据源是关系型的还是非关系型的。这些技术包括开放数据库互连(Open DataBase Connectivity,ODBC)、OLE DB以及微软的ActiveX数据对象(ActiveX Data Object,ADO)。访问通用数据存取Web站点以获取关于UDA的更多信息。


  跨平台存取数据的工业标准:ODBC和OLE DB


  ODBC是一个工业标准,也是微软Windows开放服务结构(OSA)的一个部分。ODBC接口使人们能够访问几乎任何关系型数据库管理系统中的数据。ODBC数据访问接口作为OLE DB规范的一部分,继续提供访问关系型数据的统一接口。ODBC是一个广泛接受的访问数据库的应用程序编程接口(API),它是基于X/Open和ISO/IEC数据库应用程序编程接口的调用级接口(CLI)规范。它使用结构化查询语言(SQL)作为访问方数据库的语言。


  ODBC被微软公司、第三方应用程序产品以及最终用户应用程序所广泛支持。微软还提供了许多访问不同后端数据存储的ODBC驱动程序。另外,OLE DB提供了到ODBC的桥,以继续支持目前可用的各种ODBC关系型数据库驱动程序。微软OLE DB ODBC提供者使现存的ODBC驱动程序可以继续使用,这就保证了可以立即访问那些有ODBC驱动程序但暂时还没有OLE DB提供者的关系型数据库。


  作为微软数据存取组件(MDAC)的一部分,微软提供了许多ODBC驱动程序,与一些微软产品一起提供,例如SQL Server, Microsoft Office, Microsoft BackOffice, Microsoft SNA Server,以及Microsoft Visual Studio。以下的ODBC驱动程序包括在MDAC 2.1版中:



  • Microsoft ODBC Driver for SQL Server

  • Microsoft ODBC Driver for Oracle

  • Microsoft ODBC Driver for Microsoft Visual FoxPro

  • Microsoft ODBC Driver for Access (Jet engine)

  • Microsoft SNA Sever 4.0 with Service Pack 2 ( Microsoft ODBC Driver for DB2)

  许多第三方独立软件开发商也提供访问后端数据源的ODBC驱动程序。参见数据可互操作性联合解决方案获取关于第三方产品的更多信息。参见微软通用数据存取Web站点的ODBC部分以获得关于ODBC的更多信息。


  另外,对于JAVA程序员而言,JDBC是一个在JAVA客户端程序访问SQL数据库的技术。微软提供了JDBC-to-ODBC桥,允许JAVA程序员使用现有的ODBC驱动程序访问后端的数据源。微软的JDBC-ODBC桥是Microsoft Java虚拟机核心类库的一个部分。参见微软近期Java开发项目获取更多的信息。


  OLE DB:提供者、消费者和服务组件


  OLE DB是在机构范围内传递数据的系统级编程接口。它是建立于ODBC成功的基础之上的开放性规范,提供了访问各种数据的开放性标准。ODBC提供访问关系型数据库,而OLE DB则设计用来同时能够以相似的方式访问关系型和非关系型数据。


  OLE DB组件由以下三部分组成:数据提供者(包含和展示数据)、数据消费者(使用数据)和服务组件例如查询处理器和游标引擎(收集数据和排序显示)。OLE DB接口被设计用来帮助把不同的组件平滑地集成起来,以便OLE DB组件商能够快速地推出高质量的产品。


  OLE DB数据提供者实现了一套OLE DB核心接口,提供了基本的功能,使其它OLE DB数据提供者、服务组件和消费者应用程序能够以标准的、可预测的方式与之进行交互。数据消费者可以是需要访问各种数据的任何软件程序,包括开发工具、个人生产率应用程序、数据库服务组件或者OLE DB服务组件。OLE DB服务组件实现了一些不被简单的OLE DB数据提供者支持的功能。


  通用数据存取允许开发出一般的OLE DB消费者应用程序,可以用单一、统一的方式来访问许多后端数据源。这就允许企业在效率许可或商业需要的情况下组合其资源并将其从一种后端数据存储移植到另一种。访问通用数据存取Web站点的OLE DB部分以获取更多信息。


  在高级编程语言使用ActiveX数据对象(ADO)


  ActiveX数据对象是一个主要的OLE DB数据消费者。它们提供了使用高级编程语言,例如Visual Basic,来开发灵活、高效的数据可互操作解决方案的途径。以OLE DB为核心,ADO是访问数据和信息的应用程序级的编程接口。它们能够提供对数据一致的、高性能的访问,同时还支持多种开发需要,包括创建数据库客户前端和能够使用应用程序、工具、语言或者Internet浏览器的中间件业务对象。


  ADO被设计成为开发单个和多层客户机/服务器以及基于Web数据驱动的解决方案的数据接口。它们主要的要点是易于使用、速度快、低内存开销,以及需要更少的磁盘空间。ADO提供了访问OLE DB的易于使用的接口,从而提供了对数据根本的访问能力。ADO也非常易于实施,因为它们都使用了相似的接口–组件对象模型(COM)自动化接口,并集成到了所有最主要的快速应用开发(RAD)工具、数据库工具和语言(包括脚本语言)中。


  ADO使用了一个更”平”的结构,比以前所有的面向对象的数据访问技术都要更灵活。五个顶层对象中的任何一个都能够不依赖其它四个对象而独立存在。不像数据访问对象(DAO)需要在访问数据前构造一个对象层次链,ADO只用几行代码就能够访问数据。ADO功能如此强大的秘密就是,它能够使用相同的编程模型连接到任何OLE DB数据提供者,而不用考虑特定数据提供者的具体特性。参见通用数据存取Web站点以获取更多信息。


  SQL Server 7.0是如何访问和集成异类数据源的


  SQL Server 7.0提供了许多访问以及把企业数据源和SQL Server数据集成的工具。这些工具中有SQL Server 7.0的三个关键特性:分布式查询处理器(DQP)、数据转换服务(DTS)和复制。


  DQP使应用程序开发人员能够开发出连接异类数据库表的异类查询,DTS能够同时访问多个本地或远程的异类数据源。另外,DQP能够使用OLE DB数据提供者的OLE DB接口,既可以查询关系型数据也可以查询非关系型数据。使用DQP,SQL Server管理员和开发人员能够做很小的改动或者根本不做改动,来创建可以在多个后端数据源使用的链接服务器查询。


  DTS是一个数据提取、转换和装载工具,它可以使用那些提供ODBC或OLE DB的所有数据源。它能够通过SQL Server、Acess、Oracle和DB2的OLE DB提供者直接访问许多流行的数据源。访问其它数据源则是通过Microsoft OLE DB Provider for ODBC。企业决策者需要实时的关键任务数据,而在许多情况下,这些数据是以多种格式存放在多种后端存储上的。使用DTS,机构能够在多个使用基于OLE DB结构的异类的数据源之间导入和导出数据。他们甚至可以把数据导入到SQL Server并使用Microsoft OLAP服务器来分析复杂的信息或创建本地的数据仓库,为电子商务开发联机事务处理(OLTP)系统。


  复制是在企业范围内分发数据的强大工具。SQL Server中的复制技术可以创建数据相同的拷贝并把拷贝移动到非SQL Server数据源中去,其中数据类型和数值可以自动同步更新。SQL Server 7.0中的复制技术是基于”出版/订阅”模式,并允许从SQL Server到其它数据源的增量数据移动。订阅者可以是能够通过ODBC或OLE DB访问的企业级数据源,例如Oracle和DB 2数据库。参见经常被问到的”关于可互操作性”的问题页面,以获得关于SQL Server如何集成异类数据的更多信息。


  结论


  随着OLE DB和ADO这样的技术的出现,把企业中的”数据孤岛”互相连接起来变得越来越简单。开发人员现在能够建立企业及解决方案,保护公司在过去20年内在数据存储基础设施方面的投资。微软在开发新技术以简化互操作性方面的承诺是,致力于提供一套高性能的接口,使人们可以容易地访问最大范围内的系统。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。