技术频道

Oracle产品在电力行业中的应用

  摘要:

  某地区电力地调系统需要将实时收集的数据写入数据库,在超过设定值的时间后,实时数据库中的数据会转入历史数据库中。在此系统中,历史数据库需要承担的功能为:存储系统所有的数据信息,并且提供数据给系统中所有配置、监控、查询模块调用。

  方案特点:

  通过同类产品的仔细比较,最终决定选择实施Oracle RAC,这是因为Oracle RAC产品有以下一些优势,可以更好的承担此种工作条件:

  Oracle RAC以高性能、高可用性和高扩充性为目标,可充分利用多处理器平台的工作能力,在应用环境中可提供更快的响应时间与更大的事务吞吐量。支持多个Oracle实例在多个节点访问一个单独的共享的Oracle数据库。这个相同的数据库被所有节点共享,这些节点具有一致的数据文件和控制文件,却有不同的SGA、日志文件和回滚段。

  正常情况下,每个节点有自己的内存,可以支持用户访问。系统还提供了很高的有效性和可伸缩性,在需要增加系统处理能力时,可以通过向集群中增加更多的节点,增加所支持用户的数量。正常情况下,2台服务器都可以提供服务,不浪费硬件设备和资源,同时,可以互相分担部分业务,做到负载平衡,更好地发挥双机运行的效果和可靠性。

  方案实施(系统配置):

  此方案采用两台主机连接共享磁盘部分,双机使用并行工作模式,使用相同的挂接名称连接共享磁盘,物理连接如下图所示:

按此在新窗口浏览图片


  在这个配置中,每一个节点依靠同一个数据库完成并行处理,显著提高了系统的性能和处理能力。这种方式要求集群中的每一个节点都要协同维护共享数据的一致性和完整性。

  随着负载的增加,系统管理员可以向集群中增加节点(外扩),以提高系统响应客户端数据库访问的处理能力。这种配置提供高可用性是因为当一个节点发生故障时,剩余的节点依然可以保障对数据库的连续访问能力。

  内部连接采用高带宽的通讯机制,以确保集群中的节点可以快速交换信息和同步数据。

  下图显示了此两节点的集群中的数据库运行情况。每一个节点都运行数据库的一个实例。一个数据库实例包含一组ORACLE进程和用于缓存的全局共享区域(SGA)。

按此在新窗口浏览图片


  这个两节点的集群包括以下组成部分:

  LGWR.日志写入进程将每一个对数据库的处理在REDO日志中写入一条REDO记录。

  DBWR.数据库写入进程将改变的数据块写入数据文件。

  SGA. 全局共享区域(SGA)是一种用于缓存数据块、恢复日志缓冲区、目录信息和共享SQL池(结构化查询语言)的内存结构。

  Cache Fusion.缓存融合技术,这种结构允许多个服务器实例在共享缓存中安全的执行应用请求。

  GCS.全局缓存服务是RAC这种缓存功能应用结构的一个组成部分。它使用很多后台进程,例如利用全局缓存服务进程和全局对列服务进程来同步访问数据库。

  Cluster Manager.集群管理器依赖于操作系统的组件,提供通用的、整个集群范围内的集群成员关系的视图,并用来搜索和追踪节点成员关系的状态。它同时还会检测在集群内各种资源的状态(例如节点、内部连接硬件、共享磁盘和ORACLE实例),并且在状态改变的时候通知注册进程。

  在此方案中,Oracle9i™ 实时应用集群(RAC)具有很多关键的特性来增强集群数据库环境的性能、扩展性、和管理特性:

  缓存融合技术(Cache Fusion)允许同步访问缓存

  并行执行请求以提高性能

  负载平衡分散客户连接请求

  故障应用切换以保证应用的运行

  Oracle 工具提供管理性能

  [结束语]:

  我公司在结合电力行业的应用如南瑞OPEN2000和PBS等系统中,推广搭建在Oracle的数据库平台上的方案已得到行业的充分认可并广泛使用。其中典型的有:嘉兴配网自动化项目,湖北十堰电网调度自动化系统,广东丰田项目,惠南集控站600AU项目,黄岩集控站XP1000项目等。

文章版权归西部工控xbgk所有,未经许可不得转载。