Oracle 数据库方案RAC.docx
- 文档编号:18616134
- 上传时间:2023-08-20
- 格式:DOCX
- 页数:10
- 大小:22.72KB
Oracle 数据库方案RAC.docx
《Oracle 数据库方案RAC.docx》由会员分享,可在线阅读,更多相关《Oracle 数据库方案RAC.docx(10页珍藏版)》请在冰点文库上搜索。
Oracle数据库方案RAC
Oracle数据库设计方案
2013-8-15
1项目背景
2数据库解决方案
Oracle数据库无论从技术成熟度还是从市场占有率来看均具有无以伦比的优势,已成为广大用户的首选,不仅满足以上原则,而且:
OracleDatabase提供了全球首个专为企业网格计算提供动力的软件基础平台架构。
OracleDatabase充分利用了硬件在网格计算上的革新,让用户可以在这些标准的硬件组件上非常轻松的安装和配置数据库。
OracleDatabase不但是网格资源、网格服务和网格存储的使用者,而且是企业数据提供者,在其中都充分利用了网格计算的三个特性。
OracleDatabase把OracleDatabase使用硬件组件-包括计算资源和存储资源-的方式虚拟化,对于在企业网格环境中的不同数据库自动提供集群存储和集群计算资源。
作为一个企业数据供应者,OracleDatabase提供了相关的技术,通过这些技术可以让数据库管理员为网格用户和网格应用进行资源汇总、虚拟管理和数据的供应。
同时,在一个企业级的网格环境中,对于安全、高可用性、自我依赖性和可管理性都有很高的要求。
OracleDatabase提供了很多卓越的优势来简化用户对企业级网格的管理和操作。
根据客户应用需求,推荐使用Oracle如下产品:
产品
说明
配置
备注
OracleDBEE
Oracle企业版数据库
OracleRAC
真正应用集群
OraclePartitioning
数据库分区
2.1OracleDatabaseEE11g
2.1.1Oracle11gDBEnterpriseEdition数据库核心概述
OracleDatabase11g是为企业级网格计算(管理企业信息最灵活和最经济、最高效的方式)而设计的数据库具有无限可伸缩性与高可用性,并可在集群环境中运行商业软件的互联网数据库,具有400多个领先的数据库功能,在集群技术、高可用性、商业智能、安全性、系统管理等方面都实现了新的突破。
2.1.2Oracle数据库管理软件功能
自动存储管理
自动存储管理(ASM)使存储虚拟化,并且提供了轻松的数据库存储供应。
此外,您现在能够使用标准、低成本、模块化的组件来存储所有的Oracle数据。
您可以使用单个ASM来为多个Oracle数据库管理存储。
ASM仅要求您管理少量的磁盘组,而不是管理许多数据库文件。
一个磁盘组是一组磁盘设备的集合,ASM将其作为单个逻辑单元来管理。
您可以定义一个特别的磁盘组作为数据库的默认磁盘组,Oracle自动为该数据库分配存储资源,以及创建或删除与该数据库相关的文件。
ASM还提供了一些存储技术方面的优势—如镜像或逻辑卷管理器(LVM)。
类似于这些技术,ASM使您能够从单独磁盘设备的集合中创建单一磁盘组。
它可以跨磁盘组中的所有设备均衡到该磁盘组的I/O。
还执行条带划分和镜像存储来改善I/O性能和数据可靠性。
无论何时当存储配置发生变化时,ASM都将自动再均衡数据库的存储资源。
更精简的初始化参数
Oracle数据库服务器提供了大量的初始化参数,以在不同环境中使其运行最优。
在这些参数中,只有少数需要显式地设为系统默认值,因为其余的参数在绝大多数情况下已经足够。
Oracle数据库11g中这些初始化参数被分为基础和高级两大类。
管理员可将日常的交互活动限定于28组基础参数来完成。
高级参数被保留用于使专家型的系统管理员调整Oracle的数据库性能,以满足特殊环境下的一些特殊需求。
因此,Oracle数据库11g提供了一种集简单性和灵活性的最佳组合—其简单性指可以被作为嵌入式数据库使用;其灵活性指可以满足甚至最具挑战性的需求。
超大数据库支持
OracleDatabase11g现在支持容纳8Exabytes(1EB=1024PB,1PB=1024TB,)数据的单个数据库。
这实际上消除了对合并数据库最大容量限制。
还可以将数据存储在更大的文件中,从而减少大型数据库中的文件数。
此外,BigfileTablespace简化了大型数据库中数据文件的管理,使得与拥有大量数据文件相关的可伸缩性问题最小化,并且利用如自动存储管理和OracleManagedFiles之类的特性简化了存储管理。
ORACLE跨平台的可传输表空间
OracleDatabase11g现在支持异种可传输表空间。
这个特性允许抽出表空间,用RMAN进行转换(如果需要),然后在不同平台间进行传输(如从Solaris或HP/UX到Linux)。
许多用户正使用这个特性来将他们的数据库移植到Linux上。
作为可传输表空间使用的示例,如果观察典型企业中的财务应用程序,您会发现平常它的工作负载非常轻。
每小时会有几次插入或者更新操作。
但在季度末,它需要大量的资源来生成报表。
您能做的是,在平常,在比较强大的资源上运行这个应用程序。
在季度末,使用可传输表空间特性将数据转移到更强大的资源上,并在那里进行处理。
自驱式数据库
OracleDatabase11g提供了一种新的自驱式数据库特性。
这个特性利用了OracleTransportableTabelspace和OracleStream,为您提供了一种轻松的方法可以在分布式硬件资源之间共享处理。
此外,它提供了一种有效的方法将您的应用程序移植到网格上。
利用单个命令,您可以从一个数据库中取出一系列的表空间,将表空间传输给另一个数据库,重新定义表空间格式(如果第二个数据库是在一个不同的OS上),然后将表空间插入到第二个数据库中。
在此期间,第一个数据库可能会发生一些变化。
OracleStream将已开始捕获这些变化,然后将这些变化与第二个数据库同步。
所有这些都利用单个命令来完成。
如果第二个数据库在网格上,您刚刚所做的就是通过单个命令将应用程序移植到网格中。
通过简单地将连接串重新嵌入到第二个数据库中,可以在以后将所有运行在第一个数据库上的应用程序移植到第二个数据库中。
ORACLEDATAPUMP数据泵
为保证向Oracle数据库中高速加载以及从Oracle数据库中高速卸载数据和元数据,Oracle数据库11g引入了一项新功能:
数据泵。
它可以自动管理和安排批量的、并行的加载和卸载,以实现最大吞吐量,大大地改善了数据输入和输出数据库时的性能。
数据泵的基础架构可通过L/SQL套件的DBMS_DATAPUMP随时实现。
这一技术是Oracle新的数据移动实用工具—DataPumpExport和DataPumpImport—的基础,与Oracle原来的Export和Import相比,性能大大提高。
因此,客户的数据转移应用程序就可通过使用数据泵来完成。
Oracle数据库11g通过下述四个方面来实现:
新的命令行输入和输出客户端(expdp&impdp),这是一个基于Web的企业管理器导入/导出界面和客户界面,以及用于处理复杂数据挖掘模式的自定义数据移植界面。
数据泵也是Oracle服务器中其他几项主要功能的基础。
包括基于流的复制、逻辑备用和可传输的表空间。
分布式SQL、网关和分布式事务
不是总有可能合并或者共享信息。
数据中心的限制或者地理上分散的资源可能阻碍实现此要求。
此外,还可能因为安全性问题。
您可能不希望第二个数据库上的用户看到整个数据集。
或者不能有效地移动数据—例如,您可能有一个一兆兆位的数据集,并且它很少被访问。
OracleDatabase11g提供了一种极其强大的联合技术来帮助您解决这些问题。
利用这些技术,可以把数据留在原处,并按需要访问数据。
Oracle分布式SQL允许网格用户有效地访问和集成存储在多个Oracle和非Oracle数据库中的数据。
网关利用分布式SQL向网格用户提供透明的远程数据访问,从而依靠其它任何数据库运行它们的应用程序,且无需对应用程序作任何代码修改。
在不同数据存储器之间进行集成数据和管理事务的同时,Oracle数据库智能地优化执行计划,从而以最有效的方式访问数据。
OracleXA功能允许网格用户在多个资源之间(如原有的应用程序和第三方应用系统)协调分布式事务。
此外,OracleDatabase11g还提供了外部表格和Bfile特性,它们让您在文件系统上保留数据,同时通过Oracle数据库API为网格用户提供访问。
外部表格为您提供了到文件中结构化数据的SQL访问。
Bfile提供到文件中非结构化数据的只读访问。
自我管理的数据库
Oracle数据库11g的自我管理基础架构包括四大组件:
自动工作负载仓库、自动维护任务基础架构、服务器生成告警和顾问框架。
性能的故障诊断和排除
构建于AWR捕捉的数据之上,Oracle数据库11g包括一项自动诊断功能,名为“自动数据库诊断监测”(ADDM)。
ADDM使Oracle数据库11g可以诊断自身的性能并确定对发现的问题如何进行解决。
ADDM在每一AWR数据捕捉后自动运行,并对该数据进行性能检测。
ADDM检测到的一些常见故障如下:
●CPU瓶颈
●不良的连接管理
●过多的句法分析
●锁争用
●IO容量
●低于Oracle内存结构的容量大小,如PGA、缓冲器缓存和记录缓冲器等。
●高负载的SQL语句
●高PL/SQL和Java时间
●高检测点负载,如小规模的日志文件、过多的MTTR设置
●RAC的特定问题
内存自动管理
内存是一项宝贵的系统资源,管理员常常为如何更好地优化其使用而花费大量时间。
Oracle数据库11g中针对内存管理的一大主要自我管理功能即为:
自动共享内存管理。
该功能对Oracle数据库中共享内存进行自动化管理,将管理员从人工配置共享内存组件的工作中解放出来。
在Oracle数据库11g中,系统管理员只需使用一新的参数MEMORY_TARGET,指定某一实例可用的内存数量。
然后数据库服务器就可自动在不同组件中按要求分配内存。
自动共享内存管理功能基于数据库内部的高级启发式技术,可以监测内存分配并根据工作负载需求进行变化。
2.2Oracle分区
2.2.1Oracle分区概述
分区能够将表、索引或按索引组织的表进一步细分为小块。
这些数据库对象的小块称为分区。
每个分区都有自己的名称,还可以选择自己的存储特性。
从数据库管理员的角度来看,分区后的对象具有多个小块,这些小块既可以集中管理,也可以单独管理。
这就使管理员在管理分区后的对象时具有相当大的灵活性。
但是,从应用程序的角度来看,分区后的表与未分区的表完全相同;在使用SQLDML命令访问分区后的表时,无需任何修改。
2.2.2Oracle分区优势
使用分区提高可管理性
通过Oracle分区,可将表和索引分成更多、更小的可管理单元,从而使数据库管理员能以“分而治之”的方式管理数据。
使用分区,维护操作可集中在表的特定部分。
例如,数据库管理员可以压缩表中包含(例如)2006年数据的单个分区,而不是压缩整个表。
对于整个数据库对象的维护操作,可以在每个分区的基础上进行,从而将维护工作分解成更容易管理的小块。
利用分区提高可管理性的一个典型用法是支持数据仓库中的“滚动视窗”加载进程。
假设数据库管理员每周都要向表中加载新数据,则可以对该表进行范围分区,使每个分区包含一周的数据。
这样,加载进程就只需添加新的分区。
添加一个分区的操作比修改整个表的效率高很多,因为数据库管理员不需要修改任何其他分区。
使用分区的另一个优势是,在移除数据时可以删除整个分区,与单独删除每一行相比,这个操作非常高效、快速。
使用分区提高性能
通过限制要检查或要操作的数据量,分区提供了许多性能优势。
这些特性包括:
分区修整:
分区修整(又称为分区清除)是使用分区提高性能的最简单、最有价值的手段。
分区修整通常能够将查询性能提高几个数量级。
例如,假设某个应用程序包含一个存储订单历史记录的ORDERS表,并且该表已按周进行了分区。
查询一周的订单只需访问ORDERS表的一个分区。
如果该表包含两年的历史记录,则这个查询只需要访问一个分区而不是104个分区。
仅仅由于分区修整的作用,该查询的执行速度有可能快100倍。
分区修整能与所有其他Oracle性能特性协作。
Oracle公司将把分区修整技术与索引技术、连结技术或并行访问方法结合使用。
分区智能联接:
分区可以通过称为分区智能联接的技术提高多表联接的性能。
如果两个表要联接在一起,并且至少有一个表要用联接键来分区,则可以使用分区智能联接。
分区智能联接可将联接表的大型联接分解成“相同”数据集的较小联接。
这里,“相同”的定义是在联接两端包含完全相同的分区键值集,从而确保只有这些“相同”数据集的联接才会产生结果,并且无需考虑其他数据集。
Oracle可以使用已经进行(物理)同类分区的表进行联接,或者在运行时透明地重新分配(相当于“重新分区”)一个表来创建与其他表的分区相匹配的分区
类型相同的数据集,从而在较短的时间内完成整个联接。
这就为串行和并行执行带来了显著的性能改善。
使用分区提高可用性
分区的数据库对象具有分区独立性。
该分区独立性特点是高可用性策略的一个重要部分。
例如,如果分区表的一个分区不可用,但该表的所有其他分区仍然保持联机并可用。
那么,应用程序可以继续对该分区表执行查询和事务处理,只要不访问那个不可用的分区,这些数据库操作都能够成功运行。
数据库管理员可以指定各分区存放在不同的表空间里,从而允许管理员在每个单独分区上执行备份和恢复操作(独立于表的其他分区)。
因此,在发生灾难的情况下,可以只为数据库恢复包含活动数据的分区,之后在方便的时间内再恢复其他分区中的非活动数据。
这样,就减少了系统停机时间。
此外,分区还可以减少计划停机时间。
由于分区改善了性能,这使数据库管理员能够在相对较小的批处理窗口中完成大型数据库对象的维护操作。
2.3OracleRAC数据库集群
2.3.1OracleRAC集群概述
OracleRealApplicationClusters(RAC)允许Oracle数据库在一个服务器池中以不变的方式运行任何打包或自定义的应用程序。
这提供了最高级别的可用性和最灵活的可伸缩性。
如果服务器池中的某台服务器发生故障,Oracle数据库仍可在其余服务器上继续运行。
如果您需要更多处理能力,只需再向池中添加一台服务器,而无需用户脱机。
为了保持低成本,即使最高端的系统也可以使用标准的商用部件构建。
OracleRealApplicationClusters为Oracle的私有云架构提供了基础。
OracleRAC技术可为这一低成本硬件平台提供支持,使其能够提供优质的服务,并达到或超出昂贵的大型SMP计算机所能提供的可用性和可伸缩性等级。
通过显著降低管理成本和提供出色的管理灵活性,OracleRAC为私有云提供了强有力的支持。
除此之外,OracleRAC11g第2版还支持客户构建动态私有云基础架构。
2.3.2OracleRAC的优势
高可用性
OracleRealApplicationClusters11g为数据中心的高可用性奠定了基础。
它也是Oracle最高可用性架构不可或缺的一部分,为实现数据中心的最高可用性提供了最佳实践。
OracleRealApplication还为高可用性数据管理提供了以下至关重要的关键特性:
可靠性
Oracle数据库以其可靠性而著称。
OracleRealApplicationClusters消除了数据库服
务器单点故障问题,从而使可靠性更上一层楼。
如果一个实例发生故障,服务器池中的其
余实例仍将保持运行状态。
OracleClusterware可监视所有Oracle进程,并能立即重启任何
生故障的组件。
恢复能力
Oracle数据库包含的许多特性有助于数据库轻松地从各类故障中恢复。
如果OracleRAC数据库中的一个实例出现故障,服务器池中的另外一个实例将察觉到这一故障,随后自动进行故障恢复。
利用快速应用程序通知(FAN)、快速连接故障切换(FCF)和透明应用程序故障切换(TAF)这三个功能,应用程序可以轻松地掩藏组件故障,使用户无法察觉。
错误检测
OracleClusterware可自动监视OracleRAC数据库和其他Oracle进程(ASM、监听器等),并快速诊断环境中的问题。
它还经常能在用户察觉之前自动完成故障恢复。
利用快速应用程序通知(FAN),应用程序即可在集群组件出现故障时立即得到通知,以便在故障显现之前重新发布事务。
持续运行
OracleRealApplicationClusters可在计划内和计划外停机期间提供持续的服务。
如一台服务器(或一个实例)出现故障,数据库仍将保持运行状态,应用程序仍可访问数据。
大多数数据库维护操作均可在不停机的情况下完成,并对用户保持透明。
许多其他的维护任务都可以通过滚动方式完成,从而能最大限度地减少(甚至避免)应用程序停机。
快速应用程序通知和快速连接故障切换可帮助应用程序满足对服务级别的要求。
可伸缩性
OracleRealApplicationClusters提供了独一无二的应用程序伸缩技术。
过去,当数据库服务器容量不足时,我们会使用容量更大的新服务器取而代之。
随着服务器容量的增加,其成本也日益攀升。
但OracleRAC为数据库提供了增加容量的其他方法。
原先运行于大型SMP服务器上的应用程序可迁移到小型服务器池中。
或者,您也可以选择保留对现有硬件的投资,在服务器池中添加新的服务器(或创建一个服务器池)来增加容量。
通过OracleClusterware和OracleRAC向服务器池中添加服务器时并不需要停机,并且,一旦启用新的实例,应用程序就可立即享有新增的容量。
服务器池中的所有服务器必须使用同一操作系统和相同版本的Oralce软件,但不必具备相同的容量。
如今,根据自己的需要选择服务器池的客户通常会选用特性不同(略有差别)的服务器。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 数据库方案RAC 数据库 方案 RAC