http://afy.itpub.net/post/468/23822
RAC软件结构可以分为四部分:
操作系统相关的软件(Operating System-Dependent);
RAC共享磁盘部分;
RAC中特别的后台进程和实例进程;
全局缓冲区服务和全局队列服务。
Operating System-Dependent(OSD):
RAC通过操作系统相关的软件来访问操作系统和一些于CLUSTER相关的服务进程。OSD软件可能由Oracle提供(windows平台)或由硬件厂商提供(unix平台)。
OSD包括三个自部分:
The Cluster Manager(CM):集群监视器监视节点间通信,并通过interconnect来协调节点操作。同时还提供CLUSTER中所有节点和实例的统一视图。CM还控制CLUSTER的成员资格。
The Node Monitor(节点监视器):节点监视器提供节点内各种资源的状态,包括节点、interconnect硬件和软件和共享磁盘等。
The Interconnect。
Real Application Cluster Shared Disk Component:
RAC中这部分组件和单实例Oracle数据库中的没有什么区别。包括一个或多个控制文件、一系列联机重做日志文件、可选的归档日志文件、数据文件等。
在RAC中使用服务器参数文件会简化参数文件的管理,可以将全局参数和实例特定的参数存储在同一个文件中。
Real Application Cluster-Specific Daemon and Instance Processes:
包含两部分:
The Global Service Daemon(GSD):在每个节点上都运行一个全局服务后台进程,用于接收客户端如DBCA、EM等发出的管理消息,并完成相应的管理任务,比如实例的启动和关闭。
RAC中特别的实例进程:
Global Cache Service Processes(LMSn):控制到远端实例的消息的流量,管理全局数据块的访问。还用于在不同实例的缓冲区之间传递BLOCK的映射。
Global Enqueue Service Monitor(LMON):监视全局队列和集群间的资源交互,执行全局队列的恢复操作。
Global Enqueue Service Daemon(LMD):管理全局队列和全局资源访问。对于每个实例,LMD管理来自远端的资源请求。
Lock Processes(LCK):管理除Cache Fusion以外的资源请求,比如library和row cache的请求。
Diagnosability Daemon(DIAG):在实例中捕获进程失败的诊断数据。
The Global Cache and Global Enqueue Service:
全局缓存服务(GCS)和全局队列服务(GES)是RAC的集成组件,用于协调对共享数据库和数据库内的共享资源的同时访问。
GCS和GES包括以下特性:
应用透明性;
分布式结构的全局资源目录:只要还存在一个节点,即使出现一个或多个节点失败,GCS和GES仍然可以保证全局资源目录的完整性;
资源控制:GCS和GES会选择一个实例来管理所有的资源信息,这个实例叫做resource master。GCS和GES会根据数据访问方式阶段性的评估和修改resource master。这种方式会减少网络流量和资源获取时间;
GCS和GES与CM之间的交互:GCS和GES独立于CM。但同时GCS和GES依赖于CM提供的各个节点上实例的状态信息。一旦无法取得某个实例的信息,则Oracle会马上关闭没有响应的实例,来保证整个RAC的完整性。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-84458/,如需转载,请注明出处,否则将追究法律责任。