使用Web服务虚拟化Oracle数据库
添加时间: 2008-4-23 23:13:41 作者: Oracle指导 阅读次数:29 来源: http://www.d9soft.com
ARG0 RES—— ——ORCL 12.64CSCO 17.12QCOM 43.4QQQQ 38.2799GOOG 353.58EBAY 38.2YHOO 35.427 rows selected.输出显示给定符号的报价。
您可以对表函数应用 SQL 运算符(MIN、MAX、AVG 等)。 还可以存储值并计划批处理作业,该作业定期刷新这些值,然后使用 SQL 的强大功能挖掘该表。
有关更多详细信息,请参阅 Oracle 数据库 JPublisher 指南中的“简化 Web 服务调出的选项”或上面提到的我所撰写的书籍。
将数据库用作 Web 服务提供方
利用将数据库转换为 Web 服务提供方这一功能,数据库的功能得以扩展到 Web 服务客户端应用程序,方法是通过标准的 Web 服务机制允许执行数据库操作和数据检索。
例如,许多客户将现有的数据库资源(如 PL/SQL 存储过程/函数和程序包、 Java 存储过程/函数、预定义的 SQL 查询、DML 和 Oracle 高级查询进程)重用为基于标准的 Web 服务。 换言之,该服务是使用数据库产物实现的并在数据库内部运行。因此,数据库开发人员和 DBA 无需掌握 Java 或 Web 服务编程技术便可以利用它们。
为实现该目标,可以利用 JPublisher 的功能为单个或一组数据库操作生成 Java 代理。 具体而言,可以在 Oracle 应用服务器中将 Java 代理类发布为标准 J2EE Web 服务;为容纳数据库模型,可以使用模式、参数和代码生成选项扩展后者的集成 Web 服务汇编程序。 与在中间层上部署的任何其他基于 J2EE 的 Web 服务一样,生成的 Web 服务端点由 Oracle 应用服务器运行时 管理 。
在 Web 服务上调用函数时,Java 代理使用 JDBC 在数据库中调用相应的操作。 随后在数据库中执行该服务,将结果集包装到 SOAP 消息中,然后发送回服务请求程序。
此外,JPublisher 还允许映射 Oracle 应用服务器 Web 服务框架不支持的数据库类型,如 Ref 游标或 PL/SQL 布尔值。
有关更多详细信息,请参阅 JPublisher 文档、Oracle 数据库 Java 开发人员指南和 Oracle 应用服务器 Web 服务开发人员指南。
选择实施和包装
某些客户倾向于将 Web 服务框架与数据库(Oracle 数据库 Web 服务的当前包装)分开,而其他客户倾向于使用集成包装(受 Oracle 数据库原生支持的数据库 Web 服务提供程序)。 每个实现各有优缺点。
首先,通过 HTTP 直接在 Oracle 数据库中处理 WSDL 和 SOAP 请求和响应从技术上是可行的。 尽管这样的方法可以满足简单 Web 服务的需要,但它无法满足 企业 Web 服务和 SOA(稍后将对其进行详细介绍)的可伸缩性要求。
其次,Web 服务和 SOA 框架供应商正在积极地增加新规范(QOS、互操作性等)或增强现有规范。 我认为,与可以简单上载的 Web 服务客户端程序系列不同,Web 服务提供程序和 SOA 程序系列更复杂,并且在灵活的中间层环境(而非更稳定的 RDBMS 环境)中能够得到更妥善地处理。
第三,包括 Oracle 在内的大多数供应商针对中间层和 RDBMS 层使用的是同一 Web 服务和 SOA 框架,因此可以在数据库层和应用服务器层之间提供一致的 Web 服务开发或组装、部署和管理。 下一部分将介绍此类包装的好处。
在 SOA 中集成 Oracle 数据库
SOA 是一个基于 Web 服务标准和规范的概念,这使得用户可以构造客户端应用程序,并可在其中简单地注册、发现并使用通过 企业 网格部署的服务。 我们已经了解了如何将数据库操作公开为标准的 Web 服务,下面我们将更深入了解一番: 如何使这些服务成为企业 SOA 的一部分。
通过 Java 代理将数据库操作公布为 Web 服务,使这些代理可以继承 Oracle 融合中间件 SOA 框架(包括 WS 互操作性、Web 服务可靠的消息处理、WS 安全 性、Web 服务 管理 和 BPEL 集成)的互操作性和 QOS:Web 服务互操作性。 注意,互操作性是实现所有 Web 服务承诺的关键。 WS-I 组织通过 WS-I Basic Profile 1.0 规范指定了 Web 服务框架具备“可互操作性”的含义。 与 J2EE 认证计划相似,WS-I Basic Profile 1.0 控制对 SOAP 1.1、WSDL 1.1、HTTP 1.1、HTTP 绑定(或 HTTPS)和 XML 模式(第 1 部分和第 2 部分)的支持。 Oracle 融合中间件 SOA 框架不但符合 WS-I Basic Profile 1.0,而且还强调与其他供应商/商家规范的互操作性。
Web 服务可靠的消息处理。 Oracle 应用服务器为基于 SOAP 的 Web 服务实现可靠的消息处理;它具有开放性,并在 Web 服务之间提供了可靠的 SOAP 消息处理。 消息最少发送一次(有保证的发送)、最多发送一次(有保证的消除重复)或只发送一次(有保证的发送并消除重复)。 Oracle 应用服务器当前实施 OASIS 标准 WS-Reliability,并且 Oracle 是 OASIS WS-ReliableExchange 组的一员,以将 WS-Reliability 与 WS-ReliableMessaging 合并,从而确保一个可互操作的行业范围采用的可靠消息处理标准。 Oracle 数据库 Web 服务可以在 SOA 中使用这些服务。
WS 安全性。 WS 安全性规范通过 XML 数字签名提供了安全的 SOAP 消息,通过 XML 加密提供机密性,并通过 Username Token 和 X509 Token 提供证书传播。 Oracle Web 服务管理者工具使您可以使用代理和网关通过 WS 安全性保证数据库 Web 服务的安全。
Web 服务管理。 Oracle Web 服务管理器的独特管理框架提供了 Web 服务访问控制、一次性登录、集中的安全性策略管理,Sarbanes-Oxley、Gramm-Leach-Bliley 和 HIPAA 等规范的实施 ,并监控 WS 安全性、Web 服务可靠的消息处理、记录和审计。 这些特性通过一系列 Java 管理扩展 (JMX) 管理 Bean (Mbean) 公开。
BPEL 集成。 BPEL 是新兴的业务流程定义标准;可以将它看作是 Web 服务的工作流。 数据库 Web 服务可以是 Oracle BPEL 流程管理器(它提供了 rpc/encoded 以及 doc/literal 消息处理)编排的复杂 Web 服务工作流流程的一部分。
结论
您已经看到,数据库 Web 服务在企业级 SOA 中具有重要作用。 但从 Oracle DBA 和数据库开发人员的角度而言,数据库 Web 服务最有意义的方面是可帮助他们重用数据库资源,同时不受 Java 或 SOAP、WSDL 以及 UDDI 编程的影响。
使用Web服务虚拟化Oracle数据库(2) 第 [1] [2] 下一页
上一篇文章: Oracle冷备份的不完全恢复(上) 下一篇文章: RFID技术与中国自主产品对接
相关文章:

