Posted on 2006-03-23 17:39
..... 阅读(3534)
评论(0) 编辑 收藏 引用 所属分类:
数据库
ORACLE介绍
第一章 ORACLE介绍
由于ORACLE数据库产品是当前数据库技术的典型代表,她的产品除了数据库系统外,还有应用系统、开发工具等。刚接触Oracle的人员都有这样的感觉:Oracle的产品太多,每个产品内容精深,不知道从哪儿开始学才好。为了用少量时间更好地理解和使用oracle 数据库系统,有必要对oracle的一些基本术语及概念进行了解,下面给出一些在管理中经常用到的概念和术语,供初学者快速了解Oracle数据库系统提供方便。
§1.1 ORACLE7和ORACLE8
ORACLE7是一种完全的关系数据库系统,它不支持面向对象。
ORACLE8 则是一个引入面向对象的数据库系统,它既非纯的面向对象的数据库也非纯的关系数据库,它是两者的结合,因此叫做“对象关系数据库”。
§1.2 ORACLE8 特点
ORACLE8 于 1997年6月正式发布,它包括了几乎所有的数据库技术,因此被认为是未来企业级主选数据库之一。主要有以下特点:
1.对象/关系模型
ORACLE8对于对象模型采取较为现实和谨慎的态度,使用了对象/关系模型,即在完全支持传统关系模型的基础上,为对象机制提供了有限的支持。ORACLE8不仅能够处理传统的表结构信息,而且能够管理由C++,Smalltalk 以及其它开发工具生成的多媒体数据类型,如文本,视频,图形,空间对向等。这种做法允许现有软件开发产品与工具软件及ORACLE8应用软件共存,保护了客户的投资。
2.数据库服务器系统的动态可伸缩性
ORACLE8引入了连接存储池(connection polling)和多路复用(multiplexing)机制,提供了对大型对象的支持。当需要支持一些特殊数据类型时,用户可以创建软件插件(catridge )来实现。ORACLE8采用了高级网络技术,提高共享池和连接管理器来提高系统的可括性,容量可从几 GB 到 几百 TB 字节,可允许10万用户同时并行访问,ORACLE 的数据库中每个表可以容纳 1000列,能满足目前数据库及数据仓库应用的需要。
ORACLE 公司称,ORACLE8可以支持达 512PB的数据量。但目前还未有哪一家用户的数据库的数据量达到这个数量。下面是几种常用数据量的等价关系:
1MB = 1024 KB
1GB = 1Gigabyte Byte = 1024 MB
1TB = 1TeraByte = 1024 GB = 1024*1024MB
1PB = 1PeraByte = 1024 TB = 1024 * 1024 * 1024 MB
1EB = 1ExaByte = 1024 PB = 1024 * 1024 *1024 *1024 MB
3.系统的可用性和易用性
ORACLE8提供了灵活多样的数据分区功能,一个分区可以是一个大型表,也可以是索引易于管理的小块,可以根据数据的取值分区。有效地提高了系统操作能力及数据可用性 ,减少I/O 瓶颈。ORACLE8还对并行处理进行了改进,在位图索引,查询,排序,连接和一般索引扫描等操作引入并行处理,提高了单个查询的并行度。ORACLE8通过并行服务器(Parallel Server Option )来提高系统的可用性。
4.系统的可管理性和数据安全功能
ORACLE8提供了自动备份和恢复功能,改进了对大规模和更加细化的分布式操作系统的支持,如加强了SQL 操作复制的并行性。为了帮助客户有效地管理整个数据库和应用系统,ORACLE还提供了企业管理系统(ORACLE Enterprise Manager),数据库管理员可以从一个集中控制台拖放式图形用户界面管理ORACLE的系统环境。
ORACLE8通过安全服务器中提供的安全服务,加强了ORACLE Web Server 中原有的用户验证和用户管理。
5.面向网络计算
ORACLE8i在 与JAVA VM 及 CORBA ORB 集成后,将成为NCA(网络计算机体结构)的核心部件。NCA是ORACLE 关于分布式对象与网络计算机的战略规划。ORACLE8 对NCA产生了巨大影响,简化了应用软件的化分,推动了瘦型客户机及Web 应用软件的发展。在ORACLE8 FOR NT 中还提共了新产品Web 发布助理(Web Publishing Assistant ORACLE),提供了一种在WORD WIDE WEB 上发布数据库信息的简便,有效的方法。
6.对多平台的支持与开放性
网络结构往往含有多个平台,ORACLE8 可以运行于目前所有主流平台上,如
SUN Solarise, Sequent Dynix/PTX,Intel Nt,HP_UX,DEC_UNIX,IBM AIX 和 SP等。ORACLE8 的异构服务为同其它数据源以及使用SQL 和PL/SQL的服务进行通讯提供了必要的基础设施。ORACLE8 继续至力于对开放标准规范SQL3,JDBC,JSQL和CORBA 的支持。
§1.3 ORACLE8和ORACLE8i
当 ORACLE 8 第一次发行时,它提供了优于 ORACLE 7 的性能和选件,但是它基本是ORACLE7 的引擎。 在ORACLE8 的后来版本中不断作过多次的完善,出现 ORACLE 8.0.X 版本。然而1998年初发行(推出)的 ORACLE 8I 可以被看作是 ORACLE 8 的功能扩展集。
由于ORACLE 8I 比 ORACLE 8 提供了更多的功能,它除了共同的RDBMS功能外,还提供了许多与INTERNET 有关的能力,最重要的是它将 JAVA 集成为一种内部的数据语言,这种语言可充当或替代品,而且它还集成了一个WEB服务器和开发平台(Web DB )。对ORACLE 8.0.x 来说只到 ORACLE 8.0.5 版本就终止了,接着就推出了 ORACLE8i 8.1.5版本,ORACLE8i 8.1.5版本也经常被称为Release 1;而ORACLE8i 8.1.6版本被称为Release 2;ORACLE8i 8.1.7版本被称为Release 3。
§1.4 ORACLE8i和ORACLE9i
在正式进入21世纪前的2000年年底,ORACLE公司正式发布了ORACLE 9i 新数据库系统。原先预料可能会有ORACLE 8i V8.1.8等版本,但ORACLE8i版本只推出8.1.7就被Oracle9i所代替。ORACLE公司和其它的软件公司一样,为了抢占市场,不再愿意在原来版本上再作更多的改进和优化工作,而是直接的推出新产品这样一种策略。ORACLE9i 与ORACLE8i 比较,ORACLE 9i 主要包括下面三大部分:
l 数据库核心(Database )
l 应用服务器(Application Server )
l 开发工具集(Developer Suite )
Oracle9i 主要焦点(Oracle9i Focus ):
l 电子商务智能化( E-Business Intelligence )
l 应用开发( Applications Development )
l 应用主机( Applications Hosting )
l 门户与内容( Portals and Content )
l 电子商务连续性( E-Business Continuity )
Oracle9i 为了结合 Internet 市场设计。Oracle9i适合并胜任市场上所有的苛刻要求。
l Oracle9I实时应用( Oracle9i Real Application)
l Oracle9I高可用性(Oracle9i High Availability)
l Oracle9I 系统管理( Oracle9i Systems Management )
l Oracle9I 安全( Oracle9i Security)
Oracle9i 数据库服务(Oracle9i Database Services):
l 商业智能与数据仓库( Business Intelligence and Data Warehousing)
l Oracle9I动态服务( Oracle9i Dynamic Services)
l Oracle9I JAVA 和XML(Oracle9i Java and XML)
l 电子商务集成( E-Business Integration )
§1.5 ORACLE OAS和ORACLE iAS
目前的ORACLE公司的iAS 的早期版本是 ORACLE Web Server ,后来第4版改名为ORACLE APPLICATION SERVER ,2000年底前又改名为 ORACLE9i Internet Application Server(ORACLE iAS)。目前的iAS可以与ORACLE8i 或ORACLE9i 结合在一起的综合开发工具。为创建和部署任何基于网络的应用程序提供了一个完整的Internet 平台,iAS包括了门户、事务应用、商业智能工具、无线上网应用和企业集成等。
Oracle Internet Application Server 提供了行业中最全面的中间层产品,包括通信、表示、商业逻辑、数据缓存和系统服务等。
1.通信服务:
基于Apache 的ORACLE HTTP Server,主要包括下面模块:
mod_jserv:将对servlet 的HTTP请求分发到Oracle iAS 的Servlet 引擎。
Mod_perl:将perl 程序的HTTP 请求分发到Apache Web Server 的Perl Interpreter。
Mod_ssl:提供基于SSL证书的公共密钥,它被用来在客户端和Apache Server 之间进行加密通信。
Mod_plsql:Oracle 专用模块,用来将HTTP请求传到数据库内的PL/SQL和Java存储过程。
2. 表示服务
提供下面方法进行内容表示:
Oracle portal(Oracle 门户)
Apache Jserver (Apache Java 服务器)
Perl Interpreter( Perl 解释程序 )
Oracle JavaServer Pager(JSP)
Oracle PL/SQL Server Pages(PSP)
3.商业逻辑服务
可提供以下服务组件:
Oracle8i JVM( Java 虚拟机)
Oracle8i PL/SQL
Java 商业组件(BC4J)
Form Service
Report Service
Discoverer Viewer
4.数据管理服务
Oracle 8i cache
5.系统服务
Oracle Enterprise Manager(Oracle 企业管理器)
Oracle Advanced Security (Oracle 高级安全性)
Developer's KITS(开发工具),包括:
l Oracle database client developer's Kit
l Oracle XML developer's Kit(XDK)
l Oracle LDAP developer's Kit
§1.6 ORACLE Application R11i
Oracle 公司除了提供完美的数据库系统外,也提供完整的解决方案的套件,即全套应用系统,通常称作 Oracle Application R11i。它是一全面集成的电子商务套件。它包括:
1.数据仓库平台
l Oracle 8i 企业级数据库服务器
l Oracle Warehouse Builder(数据仓库构造器)
2.商业智能工具集
l Oracle Discoverer
l Oracle Express产品系列
l Oracle darwin
3.Oracle 金融服务应用
l 绩效管理
l 客户关系管理
l 风险管理
4.ORACLE财务系统
基于Internet 的财务管理系统包括下面模块:
l 商业智能管理
l 预算管理
l 合并管理
l 现金预测管理
l 员工费用管理
l Oracle 财务分析系统
l Oracle 项目管理系统
l 工作流程管理
l 预警系统
§1.7 ORACLE 服务器组件
l 过程组件
可以用于建立过程、触发器(封装),这些代码可以存放在数据库服务器中。Oracle,Sybase,Informix,Sql Server 都把这些所谓存储过程存放在数据库内,而DB2则把这些所谓存储过程存放在服务器的另外一个专门分区内。
l 分布选件
可以支持多台服务器(在不同的地方)间的通信,即每个服务器上均有Oracle系统,而分布选件就是把这些不同的地方的数据库系统管理起来的部件。
l 并行选件
对一台具有多个CPU的机器能进行并行查询、充分利用计算机的性能。
l 并行服务器
对于多台机器(有自己的处理器)共同访问同一个硬盘这样的结构进行管理,为用户提供很高的容错性。当某台机器出现故障时,可以安排用户使用(登录)到另一台机器上。当两台都出现故障时,则整个系统都不能使用。
l 图象选件
可以存储、管理和提供实时的,全屏幕的图象和高质量的声音给网络上的用户。
l 企业管理器
Oracle 提供一个帮助用户管理系统,应用网络和数据库工具“Oracle企业管理器(OEM)”.
l 空间数据选件(Spatial data option)
空间数据选件是一种存储和检索数据的新方法,在查询中系统根据所关心的数据进行组织,因此,数据库性能的主要决定因素是所感兴趣的数据库集的大小。
l 上下文选件
是一种文本管理方案,它把非结构化的文本数据管理如同结构化一样。可以建立和开展基于文本的带有类似SQL接口的应用。这种方法只有 ORACLE8 及以后版本能支持。
l Web服务器
可以通过WWW来访问Oracle数据库中的数据。
l OLAP选件
联机分析处理,Oracle提供Oracle Express作为联机分析处理。
§1.8 目前ORACLE8i 的主要产品
(Oracle9i产品在最后一天介绍)
l SQL*Plus
Oracle的SQL*Plus是标准SQL的一个超集,它除提供符合SQL标准的语句外,还提供一些Oracle特定的外加语句,set,column,Ttitle等。
l Oralce Forms
Oracle Forms的前身是SQL*Forms。SQL*Forms和Oracle Forms都是为用户提供输入、查询、修改等功能的开发工具,前者是在字符终端上运行。后者是在图形终端上运行。Oracle Forms除了在许多触发器及功能键继承前者外,大部分的设计界面都发生了变化。
SQL*Forms不含Menu功能,Menu专门为一个产品叫SQL*Menu;而Oracle Forms 把Menu,Library 等融为一体,使功能更强大。
l Oracle Reports
Oracle Reports的先前版本是SQL*Reportwriter,自从Oracle7以后,将其发展为能支持Windows界面的开发工具,在最新版本中,它可以访问其他主要数据库,如Sybase, Informix, DB2 ,Microsoft SQL Server等。
l Oracle Book
Oracle Book提供一个共享Oracle产品文本的联机文档生成与浏览工具。
l Oracle Loader
Oracle Loader早期就提供一个ODL(Oracle data Loader)数据加载工具。该工具可以把多种格式的文本数据加载到Oracle表中。后来的版本更名为SQL*Loader,现在叫Oracle Loader,目前版本可以把多媒体数据加载到数据库系统中。
l Developer/2000 和 Oracle Developer
是一个综合产品的总称,它包括:
l Oracle Reports
l Oracle Forms
l Oracle Graphics
l Procedure Builder
四个部件,它的先前名称叫CDE产品(即协同开发环境),现在Oracle的开发工具叫Oracle Developer。
l ORACLE Designer(Designer /2000)
ORACLE Designer 的前身是 Designer/2000,而Designer/2000的前身是SQL*Case,它是一个数据库Case工具(计算机辅助设计工具),它目前版本包含:
Business Process Reengineering
Modellers
Generators
l Personal Oracle
95年后,Oracle 提供了可以在Dos,Windows3.x,Windows95,Windows NT 等不同的单机版,它的基本使用方法完全同工作组版和企业版一样。
l SQL*Net和Net 8
SQL*Net和Net 8都提供在网络下的访问Oracle数据库的产品。SQL*Net 分为SQL*Net V1 和SQL*Net V2。SQL*Net V1主要支持字符终端方式,如Dos,终端服务器方式;SQL*Net V2.x主要支持图形终端与Oracle的连接,而Net 8则是Oracle 8网络产品SQL*Net V2.x的升级版。
l Oracle Jdeveloper
Oracle 最新产品,它是一个具有高效生产力的3GL编程工具,它可以使编程人员在Java中嵌入SQL语句,编写能访问数据库的Java程序。
l Oracle Express
可以在线分析处理的工具,利用它可以方便地进行各种数据分析。
l PRO*C, PRO*COBOL, PRO*FORTRAN等
可以提供与3GL接口的工具,利用它可以在高级语言中嵌入 SQL语句,从而达到访问Oracle数据库的目的。
l 财务软件( ORACLE Financials )
ORACLE Financials 是 ORACLE APPLICATION 中用于财务管理的应用程序模块。包括财务会计,管理会计。
l 供应链与制造应用软件
包括:
l 销售定单管理
l 供应商管理
l 新产品工程设计管理
l 物料管理
l 成本管理
l 质量管理