2022年分布式数据库和ORACLE系统 .pdf

上传人:C****o 文档编号:33668324 上传时间:2022-08-12 格式:PDF 页数:11 大小:79.21KB
返回 下载 相关 举报
2022年分布式数据库和ORACLE系统 .pdf_第1页
第1页 / 共11页
2022年分布式数据库和ORACLE系统 .pdf_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《2022年分布式数据库和ORACLE系统 .pdf》由会员分享,可在线阅读,更多相关《2022年分布式数据库和ORACLE系统 .pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、分布式数据库和ORACLE 系统1.分布式数据库的分类分 布 式 数 据 库 , 是 根 据 它 的 管 理 系 统 ( Distributed DBMS-DDBMS )进行分类的。对 DDBMS 可以从四个不同角度来分类: (1)从构成的方式,可分为同构型和异构型两类所谓同构型,是指所有节点的局部DBMS 都支持同一数据模式和数据语言。 为使每个节点都掌握彼此的数据情况,需要增加网络数据库管理系统(NDBMS ) , 各节点之间通过通信网络形成统一的整体。同构型的DDBMS 对于并发控制、冗余数据的一致性等问题容易处理,但建库的代价比较大。所谓异构型系统, 是指在分布环境中各节点上的数据模型

2、和数据语言都可能不同。 异构比同构型系统实现起来要困难一些,为了在两个节点上的局部DBMS 之间进行信息交换,就要对数据模式和数据语言进行转换和映射工作。(2)按控制方式,可以分为集中式与分布式所谓集中控制的DDBM 指所有事务都由一台叫做中心计算机的节点进行管理。分布控制的 DDBMS ,是指每个节点都保持DDBMS 的一个副本来监督和管理各节点及系统事务, 它将网络目录作为用户数据库存放于局部 DB 之中。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 -

3、- - - - - - - - (3)从数据分布的角度, DDBMS 又可分为分割式、部分重复式和完全重复式所谓分割式,是指每个节点只存储DDB 数据实体的部分子集,各节点的副本互不重叠。部分重复式,是指每个节点都存储DDB 数据实体的任意子集。完全重复式,是指每个节点都存储整个DDB 数据实体的副本。也有文献把完全重复式称为复制式。(4)从用户的角度, DDBM 可分为总体型和多重型。2.分布式数据库与单一数据库的比较(1)集中控制在一个企业或单位范围内的信息资源上,对信息提供集中式控制的可能性,被认为是采用数据库技术的最大动力之一,因为集中式数据库是根据信息系统的演变和集中处理信息的需求开

4、发出来的。(2) 数据独立性数据独立性也曾经被认为是采用数据库方法的主要动力之一。 实际上,数据独立性意味着数据的实际结构对应用程序来讲是透明的, 应用程序员只需要利用数据逻辑结构,即所谓概念模式来编写程序。 数据独立性的主要优点是应用不受数据存储的物理结构变化的影响。在分布式数据库中, 数据的独立性具有与传统的集中式数据同等的重要性,然而,一种崭新概念加进了数据独立性的一般概念之中,这就是分布式透明性。 所谓分布式透明性, 指的是在编写程序时就好象数据没有被分布一样。这样,无论把数据存储到甲地或乙地,或者名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -

5、 - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 11 页 - - - - - - - - - 把数据从一个节点移到另一个节点,都不会影响程序执行的正确性和有效性,但是,必须指出,执行速度或者效率却受到了影响。众所周知,通过具有不同形式的数据描述和它们之间的映射的多层体系结构,曾为传统的数据库提供了独立性,为此目的,开发出了概念模式、存储模式和外部模式等概念。利用类似的方法,我们可以通过采用新层次和新模式,在分布式数据库中可获得分布式透明性。分布式透明性是分布式数据库系统的主要目标之一。(3)降低冗余在传统数据库系统中, 尽可能地降低冗余度是它的主要目标之一。

6、这有两个原因:首先,通过只用一个正本,可以自动地避免同一逻辑数据中几个副本之间的不一致性。其次,用降低冗余度来节约存储空间。 通过共享数据的方式, 即通过允许几个应用访问同一文件和记录可以达到降低冗余度的目的。但是,在分布式数据库中,把数据的冗余看成是所需要的特性。这有几个原因 :首先,如果在需要冗余的所有节点都复制数据,则可以增加应用的局部性。 其次,可以增加分布式数据库系统的有效性和可靠性。因为, 如果复制数据,则一个节点上的故障不会停止其它节点上应用的执行。 在一般情况下, 为传统集中式环境所规定的克服冗余的原因,在分布式环境中仍是有效的。因此,在分布式数据库中,对冗余度的评价要选择一种

7、折衷方案,不能一概而论。一般地说,复制数据项的方便程度是随着应用所执行的检索访问与更新访问的比率提高而增加。 数据复制便利程度的提高, 是因为具有一个项目多个副本,检索可以在任一副本上进行, 而更新却必须在所有副本上一致名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 11 页 - - - - - - - - - 地进行。(4) 有效访问复杂的访问结构, 如辅助索引、文件间的链接等,都是传统数据库所采用的重要技术,对这些结构的支持是数据库管理系统 DBMS 极为重要的组成部

8、分。提供复杂访问结构的原因,是为了提高存取数据的效率。(5)完整性、恢复和并发控制在数据库理论中,尽管完整性、恢复和并发控制等所涉及的问题是不同的,但它们之间相互联系还是很多的,一般来说,完整性、恢复和并发控制等问题的解决,在很大程度上取决于所提供的事务的结构形式。(6)保密性和安全性在传统数据库中, 具有集中式控制的数据库管理员能保证只执行那些授权的数据访问。但应当指出,集中式数据库本身比过去处理单独文件的旧方法更难于实现数据的保密性和安全性。在分布式数据库中, 局部数据库管理员面临的一些主要问题,与传统数据库管理员面临的问题一样。但是,分布式数据库的两个独特方面值得一提 :首先,在具有极高

9、度节点自主权的分布式数据库中,局部数据的拥有者认为比较安全, 因为他们能自主地实施自己的安全措施,以履行集中式数据库管理员的职责。其次,安全性问题,一般是分布式系统的固有问题, 因分布式系统是通过通信网络来实现分布式控制的,而通信网络本身就在保护数据的安全性和保密性方面存在着弱点。通过网络偷看、乱改别人的数据难以完全避免。3.分布式数据库管理系统(DDBMS)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - 在目前分析 DDBM

10、S 的性能时,应该把商品化系统和先进的研究样机区分开来,但是可以预料,某些先进的研究样机中试验的特性,可能会应用到将来的商品化系统中去的。本节简要叙述分布式数据库管理系统的基本性能, 并就用什么样的方法使得分布式数据库这个新技术商品化的问题谈一点看法。从目前看,世界上几各已经商品化的分布式系统是由集中式数据库管理系统的销售厂商开发出来的。这些分布式数据库管理系统, 包括扩充集中式DBMS 时所附加的部件。分布式功能的扩充是通过装配在计算机网络中不同节点上的DBMS 之间所提供的通信和合作来实现的。在这种情况下建立分布式数据库通常所必须的软件部分是: (1)数据库管理部分( DB); (2)数据

11、通信部分( DC); (3)数据字典( DD) ,它能用来表示有关网络中数据分布的信息; (4)分布式数据库部分( DDB) 。分布式 ORACLE 系统简介1.分布式体系结构的ORACLE 1986 年,ORACLE 公司推出了它的分布式体系结构的ORACLE数 据 库 系统 。 该 系 统 是 由 分 布 式 数 据 库 管理 系 统 ( ORACLE RDBMS ) 、支持多种操作系统和通信协议的分布式处理环境软件SQL*NET 、以及与非 ORACLE RDBMS 联接的软件 SQL*CONNECT名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -

12、 - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 11 页 - - - - - - - - - 这三部分组成的一个软件群。分布式ORACLE 采用了典型的开放式体系结构,对环境的适应范围非常广泛,可适应多种通信协议、多种操作系统、多种硬件环境及多种DBMS 和数据源。2.网络 ORACLE 的连接过程网络 ORACLE 的连接过程大致包括以下几步: (1)确认网络结点是否安装了SQL*NET ,如未安装,则需执行 : *SYSORACLE:NCONFIG.COM进行安装,并且使用SGAPAD.COM 重新链接。(2)确认安装中选取的网络驱动器与操作系统环境下所

13、配置的通信协议是否相符。(3)待(1)、 (2)两项均确认后,则可在服务器(Server)结点上建立一个命令文件。这个命令文件主要完成以下工作: 指定 ORACLE 系统标识码SID,从而确定将哪一个ORACLE RDBMS 作为服务器。这是因为同机上可运行多个ORACLE RDBMS ,指定方式为 :ASSIGNSID 标识码ORACLESID 指定 ORACLE系统所在目录 : ASSIGN目录名 SYSORACLE 指定 SQL*NET 执行代码的逻辑名ORASRV=SYSORACLE:ORASRV.EXE 启动 SQL*NET 的执行代码 ORASRV DECNET-NSP (4)待(

14、 3)完成以后,用户即可进行远程访问。(注意两个结点上的 ORACLE 系统应处于开启状态)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 11 页 - - - - - - - - - (5)为了夹芸网络通信管理和避免冲突等原因,可以通过VAX/VMS 网络控制程序 NCP 建立一和于 ORACLE 网络通信的缺省帐号。3.网络 ORACLE 的使用除了以下实用程序以外,其它ORACLE 实用程序和软件工具均可以通过 SQL*NET 访问远程结点的 ORACLE 系统IO

15、R AJI 仅供本地使用。另外,用户通过各种语言编写的应用程序也可以进行远程存取。用户远程存取的方式非常简单,仅需要在“用户名/口令”(ORACLE 的合法用户)后面附上结点信息。4.分布式查询分布式查询和数据传输, 主要指用户在前端机上执行本地的进程通过 SQL 语句或 SQL*plus 命令查询或传输远程结点上的数据。由于网络 ORACLE 系统的分布式查询功能很强,用户可以同时查询多个结点上的数据库数据。 传输数据功能用于两个结点之间数据及定义的复制,下面将分别介绍。ORACLE 系统分布式查询的功能使得一个结点上的用户可以通过 SQL 查询语句访问其它结点数据库的数据。并且用户还可以同

16、时存取访问多个结点(包括本地结点)的数据,从而使数据库的查询功能大大增强。(1)数据库链路( DATABASE LINK )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 11 页 - - - - - - - - - 为了使分布式查询操作更加简单方便,ORACLE RDBMS 为用户提供了一个新的数据定义方式:数据库链路。用户可以通过数据库链路定义,在本地结点和远程之间进行查询和连接。进行远程访问的用户需要明确: 远程数据库所在的结点; 远程结点上的哪个数据库; 远程数据

17、库的哪个用户。数据库链路即用于标识以上内容。用户通过SQL 的 CREATE DATABASE LINK 语句定义数据库链路。其格式为: CREATEPUBLICDATABASE LINK 链路名CONNECT TO 用户名IDENTIFIED BY口令USING “驱动器前缀:结点名“操作系统用户名口令” ”:“ “ “TASK=ORDN 后缀.COM” ” ”; 如果用户事先定义一个逻辑名: ASSIGN结 点 名 ,“ 操 作 系 统 用 户 名 口 令 ” :“ “ “TASK=ORDN 后缀.COM” ” ” ,逻辑名那么 CREATE DATABASE LINK 就变得十分简洁 :

18、 CREATEPUBLICDATABASE LINK 链路名CONNECT TO 用户名 IDENTIFIED BY口令USING驱动器前缀 :逻辑名 ; 这里 PUBLIC 代表公用数据库链路,只有DBA 才能使用 BLIC名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 11 页 - - - - - - - - - 限定词。(2)远程查询操作在数据库链路定义以后, 远程查询就变得非常简单和方便。用户访问查询数据库的表或视图时, 只要在表名或视图名后面附上数据库链路名即可

19、通过SELECT 语句进行查询。其形式为 :SELECT 列表达式,列表达式,, FROM 表名数据库链路名,表名 数据库链路名, , WHERE 逻辑表达式 ; (3)定义同义名用户可以用同义名来简化一些繁琐的表名或视图名。对于远程查询操作, 用户也可以为远程数据库的表名或视图名定义相应的同义名。(4)连接操作在远程查询中, 用户可以连接相同(或不同)结点上数据库中的表。连接( JOIN)操作可以针对以下情况: 同一数据库中的两个表或多个表; 同一结点不同数据库中的两个表或多个表;不同结点上数据库中的两个表或多个表 ; (5)查询远程数据库中其他用户的数据用户在通过数据库链路进行远程查询时,

20、可以访问其他用户的数据。数据库链路的定义中指定一个远程用户名及口令,这个用户名被称为链路用户名。上面所述的“其他用户”即指非链路用户。如果链路用户具有访问其他某一用户,记为用户A 的权限,那么, Client 用户就可以通过数据库链路查询服务器用户A 中的数据。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 11 页 - - - - - - - - - (6)远程子查询前面介绍的是基于主查询的远程访问。事实上,SQL 语句中的子查询( Sub-query)也可以访问远程结

21、点的数据库数据。这种子查询称为远程子查询。可嵌入查询的语句有: SELECT INSERT UPDATE CREATE TABLE CREATE VIEW 5.远程数据传输目前网络 ORACLE 系统尚不能通过INSERT、UPDATE 语句更新远程结点的数据库数据。但是ORACLE 提供结点之间传输数据库数据的能力。 SQL*plus 的 COPY 命令将用于实现这一功能。用户使用COPY 命令可以进行从一个结点(称为源结点)到另一结点(称为目标结点)之间的数据传输或复制。使用 COPY 命令与数据库链路的定义类似,需要反映定结点名、数据库(即命令文件和“用户名/口令” 。其中源描述和目标描

22、述分别用于指示源结点目标结点上的结点名、数据库(即命令文件)和“用户名/口令” ,下面是 COPY 命令的基本形式 : COPYFROM 源名 TO 目标名APPEND|CREATE|INSERT|REPLACE 表名(列名,列名, ) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 11 页 - - - - - - - - - USING SELECT 语句其中源名和目标名分别用于指定源结点和目标结点上的结点名、数据库和“用户名 /口令” ,如: 用 户 名 /口 令

23、驱 动 器前 缀 :结点 名 “ “ “用 户 名 口令 ” ” ” :“ “ “TASK=ORDN 后缀.COM” ” ”; 如果事先分配了逻辑名,则源描述和目标描述会变得更简洁一些。如果源结点为本地,则COPY 命令可略去 FROM 子句。如果目标结点为本地,则可除去TO 子句。COPY 命令将传送数据到目标数据库指定表。具体传输的数据是子查询的结果。其中APPEND、CREATE、INSERT 和 REPLACE 限定词用于指定传输的方式: APPEND 将传输的数据加在指定表中。如果该表不存在,则先建表,再加入 ; INSERT 将传输的数据加在指定的表中。 如果该表不存在,则先建表,再加入数据 ;CREATE 建立指定的表,并加入数据,如果该表存在,则出错 ;REPLACE 将传输数据替换原表中已有的数据。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 11 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁