从Oracle8i数据库到 Oracle9i数据库
  像 Oracle8i专注于Internet一样,Oracle9i 通过进一步提供用于电子商务环境的一系列特定功能和产品集,继续强化了Oracle在Internet数据库平台上的领先地位。Oracle9i在特性方面的最主要的增强有以下几方面。
  1)实现数据的连续可用性
  数据的连续可用性对任何电子商务应用都是至关重要的,Oracle9i 大幅度地扩展了 Oracle 在 Internet 数据库可用性方面的领先地位。
  零丢失模式
  总控钥匙式数据保护环境是除了对现有(物理)“备用”产品的重大增强外,还包括了一个新的逻辑“备用”功能,以及为逻辑和物理特性提供监视、自动化和控制的框架。新的逻辑备用数据库为了重新应用于备用数据库,将做日志文件转换为 SQL 语句。这减少了损坏传播到备用数据库的风险,并允许在备用数据库上并发地运行报表与逻辑日志应用程序。它还允许在备用数据库上创建其他的索引和实体化视图以加快报告的进度。
  更多联机操作支持
  racle9i 包含一个新的联机重新组织和重新定义体系结构,此体系结构允许更为强大的重新组织功能。目前管理员可以对表定义执行各种联机操作,包括常规表的联机重新组织。  在此新体系结构中,表的内容被复制到一个新表中。在复制内容的同时,对原始表的更新由数据库跟踪。在复制完成后,将更新应用于新表。一旦应用了更新,就可以在新表上创建索引。在创建索引后,将应用任何其他更新,而且结果表将替代原始表。在更新字典数据的同时,仅在操作开始和结束时以独占模式锁定表。
  准确的数据库修复
  Oracle8i 包含非常完备的恢复功能。Oracle9i 通过使这些功能更强大和更准确对它们进行了扩展。  Oracle9i 包括对磁盘损坏的更好预防和改进的处理方法。万一块损坏需要通过介质恢复进行修复,一个新的块介质恢复特性在表的其余部分处于联机状态的同时仅允许恢复损坏的块。在恢复期间检测到日志损坏后,Oracle9i 能够将数据库还原到一致状态。LogMiner 允许在损坏之后检索并应用日志中的更改。尝试恢复允许恢复在检测到损坏的数据库块后继续进行,以便管理员可以确定损坏是不是一个孤立的事件。如果找到更多的损坏,则退出恢复。  Oracle9i 也可以通过使用新的两关口恢复算法更快地从崩溃恢复,此算法确保只有那些需要处理的块才从数据文件中读取和写入数据文件。一个新的基于时间的平均恢复时间 (MTTR) 参数也使对崩溃恢复时间设置极限更为容易。Recovery Manager 备份与还原操作目前可以在失败后停止之处重新启动。Oracle9i 也包括改进的可诊断性特性,以快速捕获失败例程的状态并允许失败状态上的恢复之后的诊断。对于多节点系统,Oracle9i 为 Oracle Parallel Server 提供更为快速的失败检测和重新配置,从而减少由于系统错误而引起的停机时间。通过使用 Windows 2000 的增强功能,增强了 Oracle Fail Safe for Windows,以利用多节点群集。这允许在多个节点上的多个数据库共享一个公共备份节点时进行配置,从而降低了为多个应用程序提供冗余的成本。
  自助错误更正
  Oracle9i 包含处理人为错误的非常强大的技巧。  Oracle9i 包含可以授权最终用户以更准确、更有效和更容易的方式更正其自身错误的功能。要更改错误,最终用户需要能够通过查看更改历史识别错误,并且他们需要能够通过将数据恢复为错误发生之前的数据来退出错误。Oracle9i 同时提供这两种功能。这两种功能在 SQL 级别上是可用的,以便应用程序可以像任何其他正常的 SQL 操作一样调用它们,无需管理员的干预。
  2)可伸缩性和性能的大幅提高
  Oracle9i 允许电子商务扩大到数千万用户,每个用户每小时都执行数百万事务处理。有关这方面的改进包括以下方面:  Real Application Clusters  Oracle9i 中的Real Application Clusters是在原有的 Oracle Parallel Server基础上开发的新一代缓存基础构架,是Oracle9i最为重要的性能升级。它不但为高速在线电子商务提供了可能,也使客户可以随着使用和需求的继续增长水平地扩大数据库层。  Oracle9i 高速缓存体系结构利用群集中所有节点的聚合高速缓存来满足数据库请求。目前既可以通过本地高速缓存也可以通过任一其他高速缓存来满足查询请求。这减少了磁盘 I/O。更新操作不要求用于同步化的磁盘 I/O,原因是本地节点可以直接从任一群集数据库节点高速缓存获得所需的块。仅在任一聚合高速缓存都没有必需的数据和更新事务处理执行磁盘写入保证的 COMMIT 操作时,才执行昂贵的磁盘 I/O。此实现有效地扩展了数据库高速缓存的工作集并减少了磁盘 I/O,从而大幅度提高数据库操作的速度。Oracle9i 高速缓存在读/读、读/写和写/写争用的情况下直接将数据块从一个节点的高速缓存运送到另一个节点的高速缓存。这建立在处理读/写争用的以前的 Oracle8i 高速缓存合并实现之上。因为 Oracle9i 中彻底的高速缓存整合消除了与基于磁盘的高速缓存协调有关的等待时间,所以目前应用程序可以有效地扩大,而无需知道群集。这意味着第一次可以将群集视为一个真正可伸缩的单一系统。这也是为什么Oracle称这一性能模块为“真正的应用集群”
  可伸缩会话状态管理
  新的共享内存功能、Java 会话支持的改进、联网和多线程服务器改进,大大减少了 Oracle9i 上每个用户所需的覆盖区,亦即允许将更多的用户托管在同一或更大的硬件平台上。
  小粒度自动资源管理
  Oracle9i允许对资源的更多粒度控制并为客户组添加诸如自动客户组切换、最大活动会话数控制、查询执行时间估计和撤消池限额之类的特性。管理员能够指定每个客户组的最大并发活动会话数。一旦达到这一极限,将对所有后续请求进行排队并仅在现有活动会话完成之后才运行它们。
  对于电子商务起关键作用的优化特性
  Oracle9i特别改进了对电子商务解决方案起关键作用的一些性能。具体改进是:  对本地编译和改进的 PL/SQL 优化的支持提高了当今的许多应用程序的性能。将内存和 CPU 成本添加到基于成本的优化程序,导致更好的优化资源、更少的资源使用和更快的总体性能。消除或减小了几个领域的锁争用,并提高了大型系统上的性能。一般的 I/O 改进,包括自身优化直接 I/O,预提取和索引上的跳过/扫描行源操作也提高了“数据仓库”和 OLTP 环境中的性能。  在 Oracle9i 中通过提供 VI 支持,将服务器和客户机上用于网络通信的 CPU 利用率减少了 60% 多。虚拟接口 (VI) 是一个新出现的通信协议,用于群集的服务器环境。与 TCP/IP 不同,VI 是一个专门为群集环境设计的“瘦”协议,它将大部分消息传送负担置于高速网络硬件上,从而为更重要的任务释放 CPU 空间。  此外,特定的网络接口优化、改进的新虚拟线路 I/O 和统一的事件/等待模型,所有这些都大大提高了客户机/服务器的通信性能。对于超出的吞吐量达 20% 的多线程服务器环境尤其是这样。最后,Oracle9i 支持 LDAP 技术以便集中管理网络命名,不管客户有 1 个还是 100 个数据库都可以简化部署。3)增强的端到端安全体系结构  Oracle9i 继续提供业界最安全的应用开发和部署平台。在安全方面最重要的特性包括以下方面:
  强大的三层安全
  通过代理认证增强了三层安全,包括 X.509 许可证文件或判别名 (DN) 的信用代理、对胖JDBC的支持、应用程序用户的连接共享(胖 JDBC 和瘦 JDBC、OCI)和与 LDAP 的集成。一个可扩展的、安全的应用程序角色可以强制用户只能通过中间层访问数据库。结果是在应用程序的所有层中安全地维护用户身份,将用户和权限管理集中在基于 LDAP 的目录中。
  托管环境的安全
  通过 Virtual Private Database (VPD) 增强特性、小粒度审计和基于Web的单一注册提供托管安全。VPD 增强特性包括分区的应用程序上下文和通过全局或共享应用程序上下文的连接共享。小粒度审计用赋值变量提供了 SELECT 语句的选择性审计,基于“相关”列的访问,大大增强了每个用户的可计算性。
  改进的用户和安全策略管理
  改进的用户和安全策略管理是通过 Enterprise User Management 的增强特性提供的,包括在 LDAP 目录中管理基于口令的用户和 VPD 策略的管理工具。
数据加密和标签安全
  加密增强特性包括 Java Cryptographic Architecture (JCA)/Java Cryptographic Extensions (JCE),支持加密和数据完整性的大多数流行算法。  Oracle Label Security 是一个小粒度访问控制产品。它将一个特殊的标签添加到数据行中,提供复杂而灵活的标签安全。它建立在 Oracle9i VPD技术的基础之上。Oracle Label Security 基于政府和防御组织用来保护敏感信息和提供数据分隔的标注概念。应用程序托管、保健和其他行业也可以利用数据标注来帮助解决 Internet 时代的安全要求。例如,在应用程序托管中,预订者标签可用来分隔同一应用程序中的预订者的数据。在数据库中强制执行 Oracle Label Security,即使绕过应用程序也会提供安全。标签提供了一种使用现有的应用程序数据不易达到的访问控制维。Oracle Label Security 还包括一个复杂的策略管理工具,以管理策略、标签和用户标签授权。Oracle Label Security 是顶刮刮的小粒度访问控制解决方案。  此外,Oracle9i 继续为电子商务应用和传统应用的开发提供最佳的开发平台。并且在数据库的易管理特性、互联网内容管理、电子商务应用集成和商务智能等方面也进行了很多改进。
  从OAS到 Oracle9i AS
  新的Oracle9i实际上是指Oracle9i数据库、Oracle9i Application Server和Oracle9i Developer Suite的完整集成。Oracle9i Application Server(Oracle9i AS)目前已经先于Oracle9i数据库开始在中国上市。  新的Oracle9i AS由一整套服务与实用工具组成,它们可以用来在一个分布式的环境中实施应用可伸缩性与高可靠性。图1显示Oracle9i AS 的主要元素可分成 5部分:通信、表示、商业逻辑、数据管理和系统服务。此外,Oracle9i AS还包括一套开发工具包,它没有出现在图中。  该应用服务器的主要特点包括以下几点:  在通信服务部分采用了业界应用最广的Apache服务器作为Oraclei AS的HTTP入口,同时可处理静态和动态内容。  在数据表示服务中,增加了目前最为流行的门户方式进行内容表示。在数据库管理服务中,增加了一个同Oracle9i(Oracle8i)相匹配的缓存,这是一个透明的中间层缓存解决方案,极大地提高了网站和访问数据库应用的性能和数据吞吐量。Oracle目前正在自己的网站上为此悬赏100万美元,赌采用了新的Oracle9i AS能否提高网站速度3倍以上。
  Oracle9i AS的升级路径
  Oracle9i AS 是 OAS(Oracle Application Server)的升级产品,而 OAS 是一个早期的应用服务器产品。将 OAS 中的大部分流行组件移植到新的平台是很容易的。OAS PL/SQL Cartridge 用户在向 mod_plsql 移植时基本上不会遇到什么困难。OAS 用户在将Java servlet、JSP 和EJB 等标准 Java 组件向Oracle9 iAS 平台移植时也基本上不会遇到什么困难。Oracle9i AS 对有几个 OAS 组件不支持,包括 Jweb、ECO、JCO、LiveHTML 和C cartridge。Oracle9i AS 文档中的《OAS移植》将会指示你一个简便的升级路径。  Oracle9i AS 同样也是其他 Oracle 中间层产品的升级,它们的功能已经包含在Oracle9i AS中。这些早期产品包括 Oracle Forms Server、Oracle Reports Server 和Oracle Discoverer Viewer,统一的Oracle9i AS 产品在对它们进行升级时不会有任何问题。  以上仅仅就Oracle9i数据库部分和应用服务器部分的若干重要方面进行了扼要阐述。Oracle9i数据库将于明年三月正式上市。