• 概观Oracle应用结构

  • 概观Oracle全局数据服务

  • 概观Oracle网络结构

  • 概观Oracle程序接口

 

  1. 概观Oracle应用结构

  • 概观C/S结构

  • 概观多层结构

  • 概观网格结构

     

概观C/S结构

 

Oracle数据库将应用和数据库分成客户服务端结构。

客户端运行数据库应用,诸如SQLPLUS或者VB程序,使用户交互式的获取的数据信息。

服务端并行的运行数据软件和处理函数请求,共享访问数据库数据。

 

虽然客户端应用和数据库可以在同一主机上运行,但客户端部分和服务端部分在不同主机上通过网络连接运行效率更高。

 

分布式处理

使用多个主机处理独个任务被称为分布式处理。前端和后端进程在不同的主机上存在。如下图所示,C/S在不同的主机上通过网络服务连接。

Oracle 应用和网络结构_Oracle

下图为一个分布式数据库的变形。在这个例子中,访问一个数据库中的数据位于不同主机的数据库。

Oracle 应用和网络结构_application_02

C/S结构的优势

  1. 客户端不需要考虑数据处理性能。

  2. 客户端应用并不依赖于数据的物理位置。

  3. 数据库利用操作系统底层的多任务处理和共享内存设备

  4. 客户端工作站或终端可以更加优化数据展示

  5. 在网络环境中,可以使用廉价的客户端工作站有效的访问远程服务端数据

  6. 数据库可以更具系统规模的增长而调整

  7. 在网络环境中,共享数据存储在服务端而不是某一个主机中,使得更有效的管理并行访问

  8. 在网络环境中,客户端应用端通过SQL语句提交请求至服务端。当数据库接收到请求后,每一个语句都被服务端处理,并将结果返回给客户端。网络通讯消耗的代价最小,因为网络中仅传输请求和结果。

 

概观多层结构

 

Oracle 应用和网络结构_application_03

客户端可以通过web浏览器或其他终端程序请求在服务端上执行操作,在多层结构中,客户端可通过应用端连接一到多个服务端。

应用端为客户端提供访问数据,它在客户端和一至多个服务端之间提供接口服务。应用端约束客户端连接数,允许可连接客户端等于应用端最小的配置。被访问应用端不需要客户端维护。应用端还可以为客户端提供重新格式化的数据,以此减少客户端的加载量。

当客户端执行服务端操作时,应用端假定客户端的身份,最好的方式是约束应用端的权限,以防止客户端进行不必要的操作。

服务端处理客户端的请求的数据。服务端执行查询进程。服务端以自己的方式审计来自应用端的用户操作,比如,当应用端请求连接服务端时,客户端请求展示信息。

 

SOA(Service-Oriented Architecture)面向服务的结构

在创痛的多层或面向服务的结构环境中,数据库可以Web界面的方式提供服务。

Oracle数据库的Web服务作为Oracle XML DB的一部分。必须由BDA来决定是否开启。应用端通过数据库Web服务则可以完成以下任务:

  • 提交SQL或XQuery查询并且返回XML格式语言的结果

  • 调用单独的PL/SQL函数并返回结果

  • 调用PL/SQL函数并返回结果

 

概观网格结构

 

在数据库环境中,网格计算是一个集中了大量服务和存储的灵活、按需计算的资源。模块化的软硬件组成可以用于连接和重聚合因商业化改变所需的需求。

 

 

  1.  

  2. 概观Oracle网络结构

Oracle 网络服务是一套提供企业级分布式连接解决方案的网络组件,在不同的计算机环境中,网络服务允许会话从一个应用到一个数据库实例以及一个实例到另一个实例。

Oracl网络提供本地透明的集中化管理和配置。并且快速的安装和配置,它同样可以最小化使用系统资源并提升性能。共享服务结构增加了应用的可伸缩性并允许多个客户端并行的访问数据库。虚拟接口协议(VI)将更多的信息传输负载在高速网络硬件上,减轻CPU负担。

Oracle网络通过通讯协议或应用程序接口为分布式应用和数据库提供广泛的网络服务,但网络会话建立以后,Oracle网络服务在客户端和服务端之间的行为如同一个数据快递员,建立和维护连接以及交换数据信息。关于Oracle网络服务包含以下内容:

  • Oracle网络服务如何工作

  • Oracle 网络监听器

  • 专有服务模式结构

  • 共享服务模式结构

  • 数据库常驻连接池

 

Oracle网络服务如何工作

Oracle 数据库协议将SQL语句从Oracle应用接口打包传输到支持行业标准高级别协议或应用接口的数据库,Oracle数据库依赖于网络提供同样的高级会话机制。

依赖于操作系统,数据库网络服务软件可以包含软件驱动开启额外的后台进程。

 

Oracle网络监听

Oracle网络监听器是一个服务端进程,用于监听进入的客户端连接请求并管理至服务端的通讯。当数据库实例启动,在它生命周期的任何时间内,实例包含一个监听器并与实例建立通讯连接。

服务注册监听器的启用决定了数据库服务和服务处理器是否可用,所谓的服务处理器是一个专享服务器进程或调度。