网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>数据库技术>>Oracle技术>>Oracle开发>查看文档  
  怎样理解分布处理和分布式数据库     
  文章作者:未知  文章来源:未知  
  查看:123次  录入:管理员--2007-09-29  
 

一个分布式数据库在用户面前为单个逻辑数据库,但实际上是由存储在多台计算机上的一组数据库组成。在几台计算机 上的数据库通过网络可同时修改和存取,每一数据库受它的局部的DBMS控制。分布式数据库中每一个数据库服务器合作地维护全局数据库的一致性。

在系统中的每一台计算机称为结点。如果一结点具有管理数据库 软件,该结点称为数据库服务器。如果一个结点为请求服务器的信息的一应用,该结点称为客户。在ORACLE客户,执行数据库应用,可存取数据信息和与用户交互。在服务器,执行ORACLE软件,处理对ORACLE数据库并发、共享数据存取。ORACLE允许上述两部分在同一台计算机上,但当客户部分和服务器部分是由网连接的不同计算机上时,更有效。

分布处理是由多台处理机分担单个任务的处理。在ORACLE数据库系统中分布处理的例子如:

客户和服务器是位于网络连接的不同计算机上。

单台计算机上有多个处理器,不同处理器分别执行客户应用。

SQL*NET是ORACLE网络接口,允许运行在网络工作站的ORACLE工具和服务器上,可存取、修改、共享和存储在其它服务器上的数据。SAQL*NET可被认为是网络通信的程序接口。SQL*NET利用通信协议和应用程序接口(API)为OARCLE提供一个分布式数据库和分布处理。

SQL*NET驱动器为在数据库服务器上运行的ORACLE进程与ORACLE工具的用户进程之间提供一个接口。

参与分布式数据库的每一服务器是分别地独立地管理数据库,好 像每一数据库不是网络化的数据库。每一个数据库独立地被管理,称为场地自治性。场地自治性有下列好处:

◆系统的结点可反映公司的逻辑组织。

◆由局部数据库管理员控制局部数据,这样每一个数据库管理员责任域要

小一些,可更好管理。

◆只要一个数据库和网络是可用,那么全局数据库可部分可用。不会因一个数据库的故

障而停止全部操作或引起性能瓶颈。

◆故障恢复通常在单个结点上进行。

◆每个局部数据库存在一个数据字典。

◆结点可独立地升级软件。

可从分布式数据库的所有结点存取模式对象,因此正像非分布的局部的DBMS,必须提供一种机制,可在局部数据库中引用一个对象。分布式DBMS必须提供一种命名模式,以致分布式数据库中一个对象可在应用中唯一标识和引用。一般彩在层次结构的每一层实施唯一性。分布式DVMS简单地扩充层次命名模型,实施在网络上唯一数据库命名。因此一个对象的全局对象名保证在分布式数据库内是唯一。

ORACLE允许在SQL语句中使用佤对象名引用分布式数据库中的模式对象(表、视图和过程)。在ORACLE中,一个模式对象的全局名由三部分组成:包含对象的模式名、对象名、数据库名、其形式如:

SCOTT.EMP@SALES.DIVISION3.ACME.COM

其中SCOTT为模式名,EMP为表名,@符号之后为数据库名.

一个远程查询为一查询,是从一个或多个远程表中选择信息,这些表驻留在同一个远程结点.

一个分布式查询可从两个或多个结点检索数据.一个分布式更新可修改两个或两个以上结点的数据.

一个远程事务为一个事务,包含一人或多个远程语句,它所引用的全部是在同一个远程结点上.一个分布式事务中一个事务,包含一个或多个语句修改分布式数据库的两个或多个不同结点的数据.

在分布式数据库中,事务控制必须在网络上直辖市,保证数据一致性.两阶段提交机制保证参与分布式事务的全部数据库服务器是全部提交或全部回滚事务中的语句.

ORACLE分布式数据库系统结构可由ORACLE数据库管理员为终端用户和应用提供位置透明性,利用视图、同义词、过程可提供ORACLE分布式数据库系统中的位置透明性.

ORACLE允许在SELECT(查询)、INSERT、UPDATE、DELETE、SELECT…FOR UPDATE和LOCK TABLE语句中引用远程数据。对于查询,包含有连接、聚合、子查询和SELECT …FOR UPDATE,可引用本地的、远程的表和视图。对于UPDATE、INSERT、DELETE和LOCK TABLE语句可引用本地的和远程的表。注意在引用LONG和LONG RAW列、序列、修改表和封锁表时,必须位于同一个结点。ORACLE不允许作远程DDL语句。

在单场地或分布式数据库中,所有事务都是用COMMIT或ROLLBACK语句中止。ORACLE提供两种机制实现分布式数据库中表重复的透明性:表快照提供异步的表重复;触发器实现同步的表的重复。在两种情况下,都实现了对表重复的透明性。

 
 
上一篇: 轻松掌握分布式数据库全局名与数据库链    下一篇: 教你轻松掌握Oracle数据库触发器的组成
  相关文档
Oracle中怎样用自治事务保存日志表 04-11
带你深入了解oracle中几个相对特殊的函数 01-31
实例讲解oracle数据库自带的几个触发器 04-01
去掉数据库的初始化参数即可禁用xdb服务 03-05
八个学习点帮助你全面认识Oracle数据库 05-27
实例讲解如何删除oracle 10g的垃圾表 03-28
修改表空间的SQL代码 01-15
在不安装oracle客户端的情况下进行系统移植 07-18
用utl_inaddr包获取已经连接用户的ip地址 05-29
深入讲解游标类型为什么会产生数据检索 04-09
Oracle数据库编写PL/SQL代码经验谈 04-11
同时使用数据库链和序列时的注意事项 (1) 02-27
讲解如何用组来保证Oracle数据库的安全 06-03
如何使用备份的控制文件来恢复数据库? 01-31
菜鸟学Oracle - 用PL/SQL画直方图 05-27
轻松解决oracle 10g 的em中文乱码问题 03-07
用三个方法设置oracle数据库穿越防火墙 04-17
一个完整的oracle rman备份恢复参考示例 05-29
Oracle 容灾复制解决方案分析Shar Plex 06-17
讲解基于Oracle高性能动态SQL程序开发 06-03
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息