数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle9i 数据库管理实务讲座(二)


发布日期:2022年09月15日
 
Oracle9i 数据库管理实务讲座(二)

Oraclei数据库除了延续Oracle i强大的功能之外还加入许多革命性的数据处理技术其目的在成为网际网络应用以及电子商务的最佳数据库平台究竟我们应该如何来评估一个数据库系统的优劣呢?一般来说以下几点是重要的参考依据

n 数据库可用性(Availability)

n 数据库延展性(Scalability)

n 效能表现(Performance)

n 程序开发环境

n管理的难易度

而Oraclei对于以上各项均提供了绝佳的解决方案

Oraclei数据库之高可用性与稳定性

不管是在任何环境下Oraclei都可担任执行关键性任务(missioncritical)之数据库系统在维持数据库的高可用性与稳定性方面Oraclei期望达成三个目标

Ø 提供零资料遗失之环境

Ø 针对已毁损之数据库提供快速且精准之修复技术

Ø 尽量减少数据库离线处理的需求

唯有完全符合以上三点之需求才足以称得上具备高度可运转性与稳定性之数据库系统!所以Oracle提出数项特殊技术使得Oraclei在可运转性方面的表现傲视群雄稳居电子商务应用数据库之领导地位

利用强化后的备援数据库(Standby database)与Flashback Query机制提供零资料损失之环境

Oraclei数据保护方面新增了多项功能特别是备援数据库的许多运作步骤都可以自动化例如初始化备援数据库主从数据库之间的切换以及错误移转…等简单的说主数据库内的所有资料将完整地保留在备援数据库一但主数据库发生问题系统将会立即切换至备援数据库所有资料交易不致停摆资料的一致性与完整性也不会受到影响

不过有一点要注意的是虽然主数据库可搭配备援数据库协同运作将资料遗失或毁损的情况降到最低但是身为一个数据库管理者您绝对无法预防与避免人为性错误!举例来说业务专员可能不小心删除一笔重要的客户资料或是程序设计师误删了产品价格文件诸如此类的人为性错误不胜枚举!也许有些读者心里会想数据库不是都会做备份吗?既然资料不小心被删除了再还原回来不就好了?

没错这样的想法完全正确!但是您可能不了解一般大型数据库的备份与还原(Backup & Recovery)机制(有机会的话我也会为各位详细介绍Oraclei数据库的备份机制)事实上在进行数据库的修复或是复原动作时或多或少都会影响到系统的正常运作这需视您处理的资料量多寡以及采用的备份方式而定

换句话说还原数据库也需要耗费时间!我所指的时间不仅是DBA花在重建数据库的时间也包含数据库因为受影响而停摆的时间!试想如果贵公司的数据库因为人为性错误频率过高导致系统的平均可运转性偏低这样子的数据库严格来说也不能称为好数据库(哇!那要是以这个标准来看岂不是没有一家数据库是可以用的!?请注意我所探讨的是因为人为因素所产生的问题跟数据库是哪个厂牌并没有直接关系)

为了将上述问题发生的情况降到最低Oraclei新增了一项回溯查询(Flashback query)的功能经过适当组态之后如果使用者不小心删除了重要数据即使删除指令已经被commit也可以藉由回溯查询回存特定时间点的资料

强大的数据库修复能力

以数据库的修复功能而言其实Oracle i就已经做的相当不错了但是Oraclei提供更精确的资料复原能力举例来说如果某一个table所在的磁盘区块发生毁损Oraclei全新的磁盘修复功能可以只针对毁损的区块进行修复同一个资料表的其它资料区块则依旧处于online状态不会影响其它使用者的存取!

利用快速的资料回写机制缩短数据库离线时间

万一Oraclei数据库服务器不幸发生当机情况时新的资料修复算法(twopass recovery algorithm)可以寻找出资料文件内哪些区块是需要进行读写修复的有效地缩短数据库重新上线的时间此外Oraclei也提供一些特殊的参数例如FAST_START_MTTR_TARGET可用来限制数据库平均恢复时间(即当机之后多少时间之内必须恢复上线状态)

Oraclei的高延展性

在数据库系统的延展性方面Oraclei Real Application Clusters可搭配适当组态的丛集架构(Clusters)提供企业应用程序高度的延展性与可用性藉由简单易用的单一系统管理方式Oraclei Real Application Clusters可让丛集系统内的多个节点同时存取单一数据库并利用水平延展的方式有效提升整体数据库系统之效能此外Oraclei Real Application Server还具有自我调整的能力可将数据库的负载平均分配到丛集系统中的不同节点

Oraclei Real Application Clusters 之快取融合(Cache Fusion)功能

Oraclei之快取融合功能可集合丛集中各节点的高速缓存以满足数据库之需求换句话说查询指令可由本地端的高速缓存或是其它节点的高速缓存获取所需的资料降低磁盘读取的机会因为本地端节点可以由丛集数据库中任何节点得到所需的资料在进行更新资料时将不需要为了同步化资料而产生额外的磁盘读写动作磁盘读写动作只会发生在高速缓存内找不到所需资料或是资料交易需被确认(Commit)时这种建置方式可以有效地扩大数据库高速缓存的工作范围减少磁盘读写动作且大幅提升数据库之作业能力

可延展的连线作业状态管理功能(Session State Management)

Oraclei新的分享式内存配置功能Java联机支持能力的改进以及多执行绪服务器之增强功能等特性都可以大幅减少每一位Oraclei数据库使用者所需占用的内存空间您可预期的是Oraclei将允许您在同样的硬件环境上服务更多的数据库使用者并执行更多的应用程序!

Oraclei数据库之效能提升

Oracle数据库的效能表现一直以来都是在水准之上最适合担任企业内部执行关键性任务之数据库服务器Oraclei为了在现今网际网络与电子商务环境中能够完成更严苛的数据处理要求数项特定的数据处理引擎也经过最佳化的调整

改良后的PL/SQL引擎可针对PL/SQL指令选择最佳的执行计划

之前版本的PL/SQL引擎利用CostBased Optimization的算法来决定执行计划(execution plan)主要是以系统I/O处理资源作为衡量的标准而在Oraclei中另加入了CPUCost与MemoryCost的最佳化算法使得PL/SQL引擎可利用最佳的执行计划处理资料不仅速度较快系统资源的使用也更有效率!

先进的资料I/O动作

在I/O处理方面Oraclei使用自我微调式的直接读写方式存取资料(self tuning direct I/O)在索引上则是利用预先抓取(prefetching)以及忽略/扫描(skip/scan)的方式进行索引值之搜寻无论是资料仓储环境或是线上交易系统都可大幅提升资料读写之效能特别是在超大型资料仓储系统(GB以上)的分析环境Oraclei 数据库也拥有相当令人激赏的表现

超大型资料仓储环境下各数据库系统之评比

资料来源Transaction Processing Performance Council(月)

更佳的Java虚拟机器

Oraclei内建的Java虚拟机器拥有下列特点

Ø 改良后的垃圾回收机制(garbage collection)能够更有效率地管理内存

Ø 更佳的Java语言原生编译技术可以更快速地编译Java程序

Ø 增强式对象分享功能可提升Java程序的执行效率

此外JDBC与SQLJ的效能提升也同时改善了中介层以及客户端的Java应用程序执行效率

新增的网络通讯协议可提升联机时之效能

Oraclei的网络服务新增了一项虚拟接口(Virtual InterfaceVI)通讯协议对于应用程序服务器与后端Oraclei数据库之间的联机大约有%之效能提升VI与TCP/IP最大的不同点在于VI是专为丛集运算环境特别设计的精简型通讯协议其运作原理是利用高速的网络硬设备来分担资料讯息传递之负荷让CPU可以专注于更重要的资料运算动作

Oraclei数据库之开发环境

为了无限提升程序设计师的研发能力Oracle已将开发企业级应用程序所需具备的一切工具整合在新的开发工具套件(Oracle Internet Developer SuiteOracle iDS)之内Oracle iDS包含数种功能强大之开发工具如Forms DeveloperDesignerJDeveloperReports DeveloperDiscover以及Portal

Oracle iDS具备以下特点

n 建立在JavaXML以及CORBA等网际网络标准之上

n 适合各种研发方式例如商业逻辑组件开发可视化模型建构

n 提供轻松建置企业入口网站之解决方案

例如Oracle Portal就可从企业应用软件的层面整合各式信息快速建置出具个人化功能的企业入口网站

而在快速开发应用程序方面Oracle JDeveloper i是一个整合式的可视化Java开发环境且支持JEE与XML可提供Java程序设计师快速开发出Java AppletsJSPsServletsEJB等 Java应用程序除此之外JDeveloper i也可搭配BI Beans(Business Intelligence Beans)与Oraclei OLAP Service建构出高效能的资料仓储分析系统

Oraclei JDeveloper % Java开发工具

Oraclei数据库之管理工具

在Oraclei内提供一套图形接口的数据库管理工具 — Oracle Enterprise Manager(OEM)Oraclei Enterprise Manager主要的核心应用程序如下Oracle Enterprise Security ManagerOraclei TextOracle Real Clusters ManagementOracle Spatial Index AdvisorOracle Directory ManagerOracle

上一篇:让我们干净彻底的卸载Oracle

下一篇:Oracle DBA 常用 Script 第二部分(Tuning)