Oracle平台应用数据库系统的设计与开发

Oracle平台应用数据库系统的设计与开发,第1张

Oracle是目前应用最广泛的数据系统 一个完整的数据系统包括系统硬件 *** 作系统 网络层 DBMS(数据库管理系统) 应用程序与数据 各部分之间是互相依赖的 对每个部分都必须进行合理的配置 设计和优化才能实现高性能的数据库系统 本文讨论笔者使用Oracle开发局域网中 小型数据库应用中 系统硬件的选择与使用 应用数据库系统设计与开发方面的一些心得和建议 应用数据库系统包含应用数据库和应用两方面的内容 应用数据库就是生产数据库 与系统数据库相对 系统硬件的选择与使用 与数据库系统密切相关的硬件主要有CPU 内存 集群 存储设备等 这里不对集群进行讨论 CPUCPU的数目和速度直接影响数据库 *** 作的速度 Oracle数据库提供并行查询选项 允许SQL *** 作以协同方式在多个CPU上执行 可以很大程度的发挥多CPU的性能 为系统添加CPU前 首先要对应用程序的SQL代码做优化 提高应用程序的效率 质量低劣的应用可能会引起CPU资源的无谓的消耗 其次 要了解 *** 作系统对CPU数目的限制及系统的可扩展性 在系统CPU资源已定的情况下 要对各类应用进行分析 在保证关键应用正常运行的前提下 尽可能将大量占用CPU资源的应用放在系统相对空闲的时候进行 良好的工作调度可以有效减少对CPU的竞争使用 加快系统的响应时间 内存数据库系统中 应保证有足够大的内存 在UNIX系统中 如果系统的物理内存小于 GB 可将交换区的大小设为内存的 倍 否则 可设为内存的 倍 交换区要放在磁盘速度最快的硬盘上 Oracle 的SGA区大小直接关系到数据库 *** 作的性能 一般来说 SGA区的大小可设为系统可用内存的 %到 % SGA区过多占用系统内存反而会降低性能 在应用系统运行中 应定期监测系统的内存使用情况 对关键应用进行分析 根据应用适时调整SGA区各部分的大小 Oracle i可在不重新启动数据库的情况下修改SGA区的参数 实时改变SGA区的大小 存储设备在网络时代 信息资源的积累和广泛应用对数据存储技术的发展提出了更大的挑战 数据存储模式从传统的总线连接模式进入了网络存储模式 但存储设备依然是硬盘 磁带(带库) 磁盘阵列 在中 小型数据库应用中传统存储模式仍占主导地位 磁盘I/O是数据库 *** 作的瓶颈之一 磁盘的合理选择和使用在数据库系统中显得尤为重要 在最初做数据库系统规划时 应充分考虑到系统的容量和预期的增长 尽可能为以后的扩展留足空间 在硬盘和磁盘阵列的选择与使用中 应注意以下几点 ·选择支持热插拔功能的硬盘 这样在出现硬盘Oracle 平台应用数据库系统的设计与开发失败时 可以在系统正常运行的情况下更换硬盘 ·不要选择太大的硬盘 切记对Oracle 应用程序 ~ GB大小的硬盘是比较合适的 最好购买大量的中小型硬盘 这样在配置RAID时可提供更大的灵活性 ·如果选用了磁盘阵列 对于Oracle数据库应用 如果经费能够支持 RAID + 是最佳的配置方法 在RAID 中 读 *** 作性能得到了一定的改善 但写性能损失很大 如果某个硬盘失败 硬盘重建的工作量非常大 RAID 适用于DSS(决策支持系统)应用 对OLTP(联机事物处理)应用不太合适 ·在实现RAID时 要正确地选择分条的大小 决定分条大小的三个主要因素是 应用程序的特性(DSS OLTP 批处理) *** 作系统与数据库的数据块大小 磁盘阵列中的硬盘数目 数据库的数据块大小应是 *** 作系统数据块大小的整数倍 同样分条大小也必须是 *** 作系统数据块大小的整数倍 如果使用裸设备 分条大小应是 *** 作系统物理数据块的大小 分条可按照水平方向进行 也可按照垂直方向进行 水平分条跨越每个硬盘控制器进行 垂直分条跨越整个硬盘集合进行 分条集合中的成员数应不大于硬盘控制器数 OLTP应用程序 数据访问的数据量不大 一般可选择 KB 或 KB 的分条大小 而DSS应用程序访问的数据量大 可考虑使用 KB KB或 KB的分条大小 应用数据库的设计与开发 Oracle数据库软件安装和配置完成后 就进入了应用数据库的设计阶段 应用数据库设计包括逻辑设计与物理设计 合理的逻辑设计会大大提高数据库的性能 增强数据库的可维护性 在设计中根据应用 抽象出实体关系模型 将实体关系图映射为标准化(数据完整 与应用无关 存储优化)的关系模型(数据库对象) 当前有一些辅助工具(Oracle Designer等)来实现实体关系图到SQL代码的映射 数据库的物理设计就是数据库对象的存储设计 即如何为数据库对象分配存储空间 在进行数据库对象的设计前 数据库的管理和开发人员对应用和应用的数据及其应用关系要有一个详尽的理解 根据应用进行数据库对象的规划和设计 大概包含以下几个方面 ·确定需建立的数据库用户 明确用户的系统权限和表空间限额 为用户设计资源限制profile ·确定应用数据应分多少个表进行设计 各表分别属于的用户 各用户对各个表的 *** 作权限 ·明确各表的结构 确定表的主键及约束 ·明确哪些表是应用运行的关键表 哪些是事务表 ·分析哪些表是主表 哪些表是从表 确定表和表之间的外键约束 选择合适的表作为表连接的驱动表 ·根据应用 确定在哪些表上对哪些列建立合适的索引 ·根据表和索引的设计 确定要创建的表空间和回滚段 为表空间和回滚段选择合适的磁盘 尽可能创建本地管理的表空间 减少数据库空间管理方面的工作 ·明确需要编写的触发器及过程 ·为数据库对象选择备份和恢复策略 在数据库设计阶段 有时未必能完全确定合适的数据库对象的特征 应用设计和开发中还可能发现不合适的地方 需要回过头来进行调整和修改 但设计阶段的工作越细致 出现问题的可能性就越小 工作的效率就越高 创建数据库对象时 要根据数据库对象的特点 结合存储设备的大小 数量及速度等 对数据库对象分类进行存储 最大限度地消除或减少资源竞争 在数据库对象创建时主要应遵循以下原则 ·应用数据应放在单独的表空间 不要将应用数据放在系统表空间 为防止无意的使用系统表空间 将应用用户的系统表空间限额设为 ·索引和表应放在位于不同硬盘上的不同的表空间 这样会提高数据库 *** 作的速度 ·需要同时被访问的表要分开存放 利于并发访问的实施 ·如果磁盘数量有限 可把不常联合访问的表放在相同的磁盘上 ·预分配的原则 创建数据库对象(表空间 回滚段 表 索引等)时 根据对象的情况设置合适的storage参数非常重要 创建对象设计时 对对象的容量和预期的增长有一个估计 这样才能确定存储参数的大小 一般来说 应预先给表和索引等数据库对象分配足够的空间 数据库段不要太多地做动态扩展 因为会影响数据库性能 一个段(segment)由一个区(extent)构成是最理想的 initial 参数可以稍大一点 如果可能 可设为最大容量的大小 initial必须是db_block_size的整数倍 next参数的设置比较灵活 根据应用进行相应的设置 但也必须是db_block_size的整数倍 为了减少数据库碎片的产生 pctincrease参数应该尽量设为 更新 *** 作比较少的段 pctfree要设置得小一点 更新 *** 作很多的段要设置得大一些 inittrans和freelists的值要相等 大小与并发事务数相关 ·分而治之的原则 大的数据库表和索引可考虑进行分区存放 不同的分区可位于不同的磁盘上 更好地均衡I/O Oracle可以只对表的某些分区进行查询 这样会提高查询的速度 可对分区进行数据的删除 装载 还可以移动分区 对表的管理和控制具有更大的灵活性 可以有更多的策略选择 更好地执行备份和恢复 *** 作 注意 对某些分区进行 *** 作后 在Oracle i下必须重建全局索引 ·大小和增长趋势类似的表最好放在相同的表空间 可以有效控制硬盘碎片的产生 提高空闲块的可重用性 ·相同备份和恢复策略的表最好放在同一个表空间 这样有助于备份和恢复工作的完成 ·对响应时间要求苛刻的应用所访问的对象放在速度快的磁盘上 数据库应用系统的设计与开发 应用设计不论使用何种工具或语言来开发应用程序 都需要进行应用的全面设计 应用设计包括 首先 分析应用要完成的功能 确定应用类型 是OLTP(联机事务处理)系统 DSS(决策支持)系统还是批处理系统 其次 了解应用在何时由谁使用 应用访问的数据 应用程序用到的组件 应用被要求的响应时间等 在设计前 必须对这些问题尽量进行解答 这对应用设计特别是大规模的应用设计非常重要 第三 根据上面的资料 确定应用的体系结构 是采用client/server两层架构的方式 还是采用browser/server多层架构的方式实现一个开放的分布式应用系统 如何对应用服务器进行选择与配置 第四 将应用按功能划分为一个或多个应用程序 明确应用程序的具体功能 类型 组成 使用时间及高峰时间 事务的流量 用户组成 访问的数据库对象等 确定应用程序间的关联和互 *** 作特性 对各个应用程序的执行时间合理地进行安排 第五 对应用程序进行模块化设计 选择实现应用的数据库组件和开发语言及工具 应用开发在应用开发阶段 根据应用的不同 实现的方法和步骤会有很大的差异 这里只讨论以下在应用开发中需要重点注意的几个问题 ) 在开发会话关键型应用程序时 尽可能使用Pro*C/C++或OCI 在编写后备实例和数据库失败恢复等需要进行数据库重新连接的代码时 用Pro*C/C++ 或OCI比用PL/SQL要容易实现 在Oracle / i中 OCI可以实现透明应用程序失败恢复(TAF) 编写数据库 *** 作繁重的应用程序 使用OCI OCI程序对数据库的访问是通过调用OCI库函数实现的 能够直接到达系统内核 比Pro*C/C++速度更快 ) 在开发会话关键型应用程序时 尽量实现失败检查和恢复能力 如指定后备数据库或实例 终止出错客户进程等 ) 编写代码时 要考虑应用程序的可维护性 尽量将应用程序独立于数据库的变化 可使用视图 相对变量类型定义(%TYPE) 记录型变量定义(%ROWTYPE) 采用表驱动的应用程序设计模式 ) 进行充分的单元测试和模块测试 为应用集成打下坚实的基础 ) 对关键表 *** 作的应用程序实现要特别当心 必要的话 在应用中对关键表先做备份 应用成功执行后再删除备份表 ) 编码结束后 应对代码进行优化 前面提到过 代码优化在数据库应用中非常重要 很高比例的性能问题与编码拙劣的应用程序有关 ) 定期对应用 *** 作的数据库对象增长的情况进行监控 避免因空间不足引起的应用程序的失败 ) 对应用的数据定时进行整理 有些应用中 存放在数据库表中的数据只要求保存一段时间 就需要定时对数据进行删除 如果手工进行删除 *** 作 工作量很大 可以用Oracle提供的作业来完成 unix系统下可用cron进程来实现 笔者在工作中经常使用cron来做数据的定时删除 根据应用要求 编制Pro*C/C++程序 编写Shell脚本调用应用程序 将Shell脚本提交给cron进程 注意 在Shell脚本中必须设置相应的Oracle环境变量 如ORACLE_BASE ORACLE_HOME NLS_LANG LD_LIBRARY_PATH PATH等 用户环境文件中的定义是无效的 )对于大量删除 *** 作的应用程序 如果表是分区存放的 可对数据分区执行截断(truncate) *** 作 截断 *** 作执行速度快并且不会产生碎片 但截断后可能需要进行重建索引的工作 对大量的数据做删除(delete) *** 作 会引起数据库回滚段的急剧增长 建议根据删除数据量为这类应用创建特殊的专用回滚段 为专用回滚段指定合适的storage参数 平常 专用回滚段可以是离线的(offline) 在事物开始前 使专用回滚段在线(online) 指定事物使用专用回滚段 事物结束后再使专用回滚段离线 笔者使用的部分代码 (Pro*C/C++) 如下所示 EXEC SQL WHENEVER SQLERROR goto ErrorEXEC SQL CONNECT :uidEXEC SQL ALTER ROLLBACK SEGMENT RBS_SPEC ONLINEEXEC SQL SET TRANSACTION USE ROLLBACK SEGMENT RBS_SPECEXEC SQL DELETE FROM WHERE EXEC SQL ALTER ROLLBACK SEGMENT RBS_SPEC OFFLINE 结束语 Oracle数据库是一个功能强大的数据库系统 适用于各种各样的应用系统 系统规模可大可小 应用设计或简单或复杂 因此在使用过程中要根据各自不同的应用进行设置与调整 以上是笔者在使用Oracle进行应用开发过程中一点心得和体会 写出来与大家共勉 谢谢 lishixinzhi/Article/program/Oracle/201311/17271

Oracle是由甲骨文公司开发出来的,并于1989年正式进入中国市场,成为第一家进入中国的世界软件巨头。当然,当时的Oracle尚名不见经传,由Oracle开发的商用关系型数据库技术即年开始服务于中国用户。1991年7月,Oracle在北京建立独资公司。Oracle数据库,是积聚了众多领先性的数据库系统,在集群技术、高可用性、商业智能、安全性、系统管理等方面都领跑业界。

与Oracle数据库基本同时期的还有informix数据库系统。两者使用的用户有所侧重。Oracle数据库系统银行业使用较多,informix数据库系统,通讯业使用较多。

由于ORACLE数据库产品是当前数据库技术的典型代表,她的产品除了数据库系统外,还有应用系统、开发工具等。刚接触Oracle的人员都有这样的感觉:Oracle的产品太多,每个产品内容精深,不知道从哪儿开始学才好。为了用少量时间更好地理解和使用oracle数据库系统,有必要对oracle的一些基本术语及概念进行了解,下面给出一些在管理中经常用到的概念和术语,供初学者快速了解Oracle数据库系统提供方便。

ORACLE7和ORACLE8

ORACLE7是一种完全的关系数据库系统,它不支持面向对象。 ORACLE8 则是一个引入面向对象的数据库系统,它既非纯的面向对象的数据库也非纯的关系数据库,它是两者的结合,因此叫做“对象关系数据库”。

ORACLE8和ORACLE8i

在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。

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)

lOracle9I JAVA 和XML(Oracle9i Java and XML)l 电子商务集成(E-Business Integration)

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

ORACLE Application R11i

Oracle 公司除了提供完美的数据库系统外,也提供完整的解决方案的套件,即全套应用系统,通常称作 Oracle Application R11i。它是一全面集成的电子商务套件。它包括:

1.数据仓库平台

Oracle 8i 企业级数据库服务器

Oracle Warehouse Builder(数据仓库构造器)

2.商业智能工具集

Oracle Discoverer

Oracle Express产品系列

Oracle darwin

3.Oracle 金融服务应用 l 绩效管理 l客户关系管理l 风险管理

4.ORACLE财务系统基于Internet 的财务管理系统包括下面模块:

商业智能管理

预算管理

合并管理

现金预测管理

员工费用管理

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 质量管理


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9891616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存