四川移动BOSS系统Sybase解决方案


(来源:转载自Sybase中国网站,http://www.sybase.com.cn/cn/content/industry/an_tel_scyd.htm)

  随着我国通信事业的高速发展,各种新兴电信业务不断涌现,用户数量与需求大大提高,为了提高电信企业的管理效率,降低企业的经营成本,为整个网络的高效维护提供一个可靠的数据库平台,成为电信企业迅速发展的重要基石。

  为了规范移动BOSS(Business Operation Support System)系统的建设,中国移动通信集团公司日前提出了新的BOSS系统规范和要求。 新规范将BOSS系统划明确了两级、三层的体系结构,突出了BOSS系统的三个特征、两个能力和一个综合分析(三个特征:个性化、社会化、信息化;两个能力是指:系统实时性和对新业务的支持能力)。

  按中国移动BOSS建设要求,四川BOSS系统将进行改造,在原先分散方式的基础上建设一个集中的数据中心系统,该项目建设完成后将至少满足全省未来3年内市场发展的需要,即:至2003年底建立一个完备的业务支撑系统,能满足面向全省各类移动用户及互联网用户的950万用户的需要(包括移动互联网中的41万固定网拨号上网、428户专线用户以及11.5万CSD方式移动拨号上网用户、25万GPRS用户及41万IP用户)。

  思 路
  首先保证BOSS系统中每个支撑子系统的高效、稳定运转,遵循BOSS系统的“接入平台——业务平台——数据平台”三层体系结构;其次,在此基础上,实现数据的有效集中、统一管理;运用成熟的、面向行业的解决方案,迅速实施基于数据仓库的决策支持系统,该系统划分为分析型客户关系管理(CRM)和关键业务指标分析(BPA)两大部分,CRM将作为前台客户服务系统的后台支撑,实现为客户提供多样化和个性化服务的目标;为适应未来电子商务的需求,在BOSS基本业务运营支撑系统之上,采用一个先进的、开放的平台,既能充分融入四川移动现有资源,保护已有投资,又能集成未来的电子商务应用和新技术。

  方 案
  1.Sybase产品配置方案
根据《四川移动BOSS系统技术规范》的三层体系结构要求,Sybase将按BOSS系统的数据平台、业务平台和接入平台分别进行产品配置。
  1.1 数据平台
  数据平台是BOSS系统对业务数据进行统一组织、集中管理的平台,分为数据子层和服务子层两层。在数据平台上,Sybase提供强大的数据存储服务器Adaptive Server Enterprise(以下简称ASE),并可按照应用需求组成双机或多机高可用群集系统,挂接后台磁盘阵列或SAN,保证系统能以7 x 24小时不间断运行,满足系统连续可用性要求。但从系统的性能、可用性、应用编程难度、风险、投资、利旧等方面考虑,Sybase建议四川移动BOSS系统采用双机高可用群集方案。
  · 双机高可用群集体配置


双机Cluster:服务器端自动Failover

  如上图所示,在硬件HA Cluster的基础之上,在两台主机上分别安装ASE构成双机高可用群集,ASE之间构成伙伴服务器关系,以Active/Active模式并行工作,共享后台磁盘设备上的数据。如果其中一台主机(Primary Server)出现故障,服务器端能够实现自动失败转移,把原本挂接在Primary Server上的磁盘设备转移到Companion Server上。当Primary Server故障恢复之后,磁盘设备能失败回转到Primary Server上。

  但仅有服务器端的失败转移还不能实现完整的7 x 24小时不间断运行,客户端也必须能够实现自动的失败转移,否则原本挂接在Primary Server上的客户端连接必须重新进行连接。Sybase ASE提供自动的客户端失败转移机制,如下图所示,当Primary Server出现故障之后,客户端连接能够自动地转移到Companion Server上,保证客户端的不间断运行。并且,Primary Server故障恢复之后,客户端连接也能实现自动的失败回转。

双机Cluster:客户端自动Failover

  1.2 业务平台
  业务平台是四川BOSS系统业务处理的逻辑平台,它由若干业务函数和业务过程组成,通过对数据平台服务子层原子服务的调用访问业务数据,实现不同的功能模块,满足不同的业务需求。

  在业务平台,Sybase通过Enterprise Application Server(以下简称EA Server)来承载各种业务逻辑组件。EA Server是现今唯一一个支持所有主要组件模型的工具,可以同时支持ActiveX、COM、Java、C++ 和CORBA ,并且在最新的版本中更进一步地支持原有的PowerBuilder组件和Enterprise Java Beans (EJBs)。

  另外,EA Server可以支持多种客户类型。客户端可以用HTML、JavaScript、Java、ActiveX、PowerBuilder工具开发或同时利用几种工具组合开发,并可使原有的应用程序可以完美的被移植到新的应用环境中。

  1.3 接入平台
  接入平台是BOSS系统与外部进行数据交换的平台,由接入逻辑构成。接入逻辑分为界面逻辑和接口服务。在接入平台,Sybase提供PowerSoft系列产品,用于快速完成系统开发,实现界面逻辑及接口服务。

  2. 与BOSS系统紧密相关的Sybase技术特性
  2.1 数据大集中后如何保证系统的高性能?
  四川移动BOSS系统对数据库服务器的高性能提出了毋庸置疑的要求,在同等的硬件配置条件下,Sybase通过数据库软件本身的优化机制,提供更高的系统性能,为用户提供一个低成本、高效率的企业级数据库服务器。Sybase的优化机制体现在以下几方面:

  · 并行查询改善了响应时间
  ASE可将一个查询分解为多个扫描任务,在系统有足够的工作进程资源时,多个进程同时运行扫描任务,由一个协调进程协调它们之间的通讯并合并结果集,然后将结果返回客户端。该方法对于BOSS系统中的决策支持型应用和混合型应用具有优良的可伸缩性和运行性能。

  · 并行实用程序提高了数据可用性
  实用命令是管理和使用ASE的可执行工具。四川移动BOSS系统是在原有计费系统和三系统基础上的集中化改造工程,BOSS系统在进行数据初始化工作时,并行块拷贝命令bcp将实现数据从旧系统向新系统的快速加载。由于计费系统和三系统已使用Sybase数据,同构数据库之间的数据加载更降低了系统的风险。

  · 分区表增强了并行处理能力
  在ASE中,数据库对象的存储单位是页,页链将多个页连接成表,所以将一个表分区实际就是为一个表建立多个页链,分区可增加并行查询的并行度,可使块拷贝采用并行方式,可使表的I/O分布在多个数据库设备上,从而提高查询速度,并且为表的插入提供了多个插入点,提高并行插入的速度。
  分区表技术和并行技术的结合,将为BOSS系统的大量初始化数据加载、大数据量查询提供有机的性能保证。

  · 混合工作负载的优化
  一般来说,数据库应用有联机事务处理(OLTP)和决策支持系统(DSS)两种类型,前者具有事务短小,量大,并发性要求高,实时性强的特点;后者具有涉及数据量多,运行频率低,占用资源时间长,实时性要求低的特点。通常企业级数据库的应用大都是面向多用户并且两种应用类型混合的大型系统,被称“混合负载”。

  四川移动BOSS系统是一个典型的混合负载系统,必须满足用户数和应用需求的不断增长,还要考虑Internet引起的不可预计的需求。Sybase ASE在不增加硬件投资的前提下,从数据库软件本身进行优化,通过逻辑内存管理器、逻辑进程管理器、资源控制器的管理,为系统提供了可预计的高性能,降低了成本。

  · 丰富的锁机制
  ASE 通过数据页锁(Data-Page Locking)、数据行锁(Data-Row Locking)、所有页锁(All-Page Locking)三种类型的锁机制来保证系统的并发性和性能。

  · 异步预读取功能大大提高了查询速度
  异步预读取是ASE在数据存取方面优化性能的一种机制,即在查询所采用的访问模式可确定或可预测的前提下,在访问数据页之前,先对数据页发出多个并发的物理读请求,这样在需要访问数据页时,它们已经在缓存中,显著提高了查询速度。

  · 可调整的大块I/O技术通过减少物理I/O来改善性能
  在ASE中,缓存池允许缓存来进行大I/O读取,大小可为4K、8K、16K,这样一次就可以读取多个数据页。由于绝大多数I/O时间用于执行排队、搜索和定位,因此大I/O可显著提高表扫描的性能。
  BOSS系统中象详单查询、报表操作这样的大数据量事务,便可使用大块I/O来提高系统性能。

  · 元数据缓冲区管理提高了系统性能
  元数据是指关于数据的数据,如ASE的系统表sysindexes、sysobjects、sysdatabasees中的用户表、对象(包括存储过程、触发器、视图、规则和缺省等)、数据库等即为元数据。元数据缓冲区就是针对这些元数据的保留的内存区,驻留在ASE内存的内核和服务器结构部分,与命名缓存是相对独立的。系统可直接从缓冲区中读取元数据,由此提高了性能。

  · Housekeeper任务提高CPU功能
  在ASE检测到没有用户任务在处理时,Housekeeper任务自动开始将对数据库的修改从缓冲区写到磁盘中,充分利用了CPU,减少事务处理时对缓冲区的清理,缩短了恢复时间。

  2.2 如何为BOSS系统提供连续可用性?
  
可用性是四川移动BOSS系统最重要的要求之一。BOSS系统需要尽可能的降低意外停机的时间,同时还需要通过对数据库维护和调优的增强降低计划停机的时间,Sybase ASE 则为四川移动BOSS系统提供了高度的可用性保证。

  · 连续的数据库可用性
  ASE支持服务器高可用性,减少了意外停机时间,在Sybase建议四川移动BOSS系统采用的双机高可用群集方案中,两个服务器是对称的,称为伙伴(Companion)服务器,它们之间有共享的SCSI 或 fibre-channel 磁盘,两个服务器可以访问对方的磁盘,两个服务器互为备份,当其中一个服务器意外停机时,所有与该服务器连接的用户自动连接到另外的服务器上,当服务器恢复正常后,原先连接的用户自动连回原数据库。在两个服务器都正常时,用户可以访问任一台服务器。Sybase ASE支持HP、SUN和IBM Cluster 等所具备的均衡负载的能力,能够同时在多台机器上启动多个ASE,管理相同的数据库设备,以提高整体的工作效率,同时起到互为备份的作用。
  Sybase的连续可用性方案可支持业界领先的Veritas 公司的集群解决方案和EMC公司的专有商务持续解决方案。

  · 实时的数据库维护和调优
  ASE在支持联机数据库维护管理方面是业界的领先者,在数据库的监测、管理和维护各环节都为用户提供了统一、方便、易用的管理工具,为四川移动BOSS系统的可用性提供了充分保证。

  2.3 如何实现BOSS系统的数据和应用集成?
  由于四川移动BOSS系统包括多个支撑子系统,会出现数据分割和应用分割的情况,因此BOSS系统在集成性上会涉及数据集成、应用集成两方面,分别表现在BOSS系统数据平台的数据子层和服务子层。

  · 数据子层
在数据子层上,可使用ASE的组件集成服务(简称为CIS)将其他数据库上的数据集成到本地的环境中,也可使用复制服务器(Replication Server),或使用复制服务器加上事件代理(EVENT BROKER)和消息代理(MESSAGE BROKER)等中间产品实现数据的自动传输转换。

  · 服务子层
  在服务子层上,实现对业务数据的直接访问和控制原子服务有多种方式:
  1.由存储在数据子层(数据库系统)上的存储过程来实现;
  2.用其他过程语言(如C语言)编写的方法,这种方式称为扩展存储过程。
  3.采用组件技术提供对业务数据的直接访问和控制,如采用CORBA、EJB、ActiveX等标准编写对数据库的访问组件。

  预期效果
  四川移动BOSS系统的建设是一项极富挑战性的工程,Sybase对该系统中的计费、营业、帐务系统的整体结构都进行了精心设计,包括对主机、阵列、网络结构的优化配置等,增强了实时性处理,支持全程化实时性处理和个性化服务,为系统的安全、稳定运行、易于维护创造了条件。此外,Sybase在以往的“四川移动集中计费系统”项目中经受住了集中环境下大用户并发、大数据量访问等问题的考验,证明了Sybase的实力,同时也积累了很多经验,Sybase将全力将这些经验应用到四川移动BOSS系统的建设中。