资源描述
浪潮BOSS系统组成及技术体系
..........................................................................
摘要
本文简明介绍浪潮BOSS系统组成和关键采取技术,如大型数据库技术、中间件技术、并行处理技术、IPC技术、组件技术、实时数据库技术、SAN技术等
关键词
BOSS 中间件 三层结构 实时数据库 组件 SAN
1 引言
近几年,移动通信业取得了飞速发展,多种新业务层出不穷,市场竞争猛烈,伴随加入WTO临近,这种竞争肯定会进入白热化状态,可是现存分散计费系统、业务系统、帐务系统等,不管从功效和性能上全部难以适应市场改变。为了适应市场不停发展和猛烈竞争,提升服务水平和服务质量,增强对新业务支撑能力和反应速度,满足用户需求不停改变和发展,中国移动通信企业在今年上六个月组织各省企业、各系统集成商联合制订要求了中国移动BOSS系统(Business & Operation Support System,业务运行支撑系统)业务规范和技术规范。
中国移动BOSS系统从功效上涵盖了计费、结算、帐务、业务及客服等方面,规范指出BOSS系统建设应作为一个有机整体进行统筹计划和考虑,对多种业务功效进行集中、统一计划和整合,使中国移动BOSS系统成为一体化、信息资源充足共享支撑系统。
LC BOSS是浪潮齐鲁软件企业集多年在通信领域做计费、结算、营业、帐务、客服等系统经验基础上研发成功。LC BOSS V1.0.0采取了多项计算机领域最新技术,完全满足中国移动制订BOSS系统规范,符合中国移动集团企业"三个特征、两个能力、一个综合"要求。本文拟就LC BOSS组成和使用关键技术展开介绍。
2 LC BOSS 系统架构
LC BOSS V1.0.0 是基于数据中心,三层/多层架构体系移动业务支撑系统。逻辑上BOSS系统分为基于数据中心数据层、业务逻辑层、表示接入层,见图1:
图1 BOSS系统逻辑结构
2.1 数据层
数据层几乎含盖了BOSS系统全部数据。数据层中数据是分类存放,大致可分为计费详单、统计详单、计费基础数据、用户资料、资源管理数据、营业网点资料、帐务数据、结算数据、1860/1861动态数据、用户交易数据、反欺诈数据、操作日志、统计分析数据、配置管理数据、决议支持数据、数据仓库等。这些数据是统一计划、对象命名统一、数据是冗余最小、集中存放、高度安全可靠,在其上面能够开展多种业务,它们基础上和具体应用无关,组成了BOSS系统关键--数据中心,见图2。
数据中心具体存放方法和载体,可采取SAN(Storage Area Network)技术、分布式数据库技术等。数据中心硬件可支持IBM、HP、SUN、COMPAQ等著名企业主流Unix主机系统和存放设备,数据中心中能方便地增加主机和存放设备,且设备型号和生产厂家不受限制。在大型数据库选型上,数据中心能够支持Oracle、Sybase、Informix、Db2、Sql Server等大型关系(对象)型数据库;数据中心中选择数据库即可是其中一个数据库,也能够多个数据库混合使用;即单事例数据库、并行数据库、数据库混合。从维护角度考虑,数据中心选择主机和数据库技术型号不宜太多,不然维护起来较为困难。
图2 数据中心
在图2中可见,每类数据并不是一定要建一套数据库;一类或几类数据可公用一套数据库,经过表空间和属主进行区分;一类数据能够存放于多个数据库中,但尽可能使用一套数据库以方便操作;一类数据在一个节点中无法完成处理时,推荐使用并行数据库(如Oracle OPS)或按某种规则将数据分布到多个数据库中。
不一样类型数据在阵列上使用RAID等级也可不一样,如计费详单数据不仅要求有快写速度(入库、实时累计、预付费处理),而且要求快读速度(实时累计、集中查询),存放期长,这时可选择RAID10(RAID0+1);而对于统计详单,则其关键操作为读,存放期相对较短(1~2个月),另外为节省投资考虑,可选择RAID5。
2.2 业务逻辑层
业务逻辑层,是基于数据中心BOSS系统多种业务实体存在层面。在业务层,逻辑上分为计费系统、营业系统、帐务系统、结算系统、大用户管理系统、信用度管理系统、客服系统、统计系统、综合查询系统、接口系统、反欺诈系统、催费系统、决议支持系统等,这些业务系统基于数据中心,采取面向对象思想和组件化开发。全部这些系统逻辑上是相对独立,它们或它们一部分可分布于一台或多台主机上,用户可选择其中一个或多个,也可修改或增加新业务系统,来完善自己系统。
2.3 表示接入层
在接入层,用户或操作者可经过PC机、手机终端、手持电脑等经过语音、Web/Wap界面、Gui界面等进行接入,依据权限和工作分工来完成不一样业务和操作。整个BOSS系统三层结构图3所表示:
图3 BOSS系统三层结构
2.4 BOSS子系统划分
图4 BOSS子系统划分
BOSS系统包含以上子系统,逻辑上各子系统相互独立。
采集子系统负责多种话单采集(含出访话单);
计费子系统负责话单预处理,多种话单、多种品牌、多种用户计费,处理话单级多种优惠,计费详单入库,错单、重单处理,该子系统还包含预付费用户实时扣费、高额处理、和用户级相关累计、预付费数据下发、计费稽核、内存影像实时监控等,其话单按打电话时间按号段和月份分表存放;
帐务子系统负责手机用户出帐、收费、地市间业务结算、省企业、地市企业费用平衡、代收结算等;
统计子系统包含提供多种报表所需基础统计数据,包含部分结算数据,其话单依据计费系统话单入库时间按号段和月份分表存放;
结算子系统关键处理省际漫游结算、国际漫游结算、省际漫游结算地市分摊、国际漫游结算地市分摊、省内漫游结算、漫游结算对帐、和公网结算等;
省中心前台Gui/Web界面提供管理、操作界面,以图形界面和Web界面方法提供系统管理、用户管理、参数管理,详单、报表等查询、打印等功效,它访问计费、帐务、结算、统计等系统数据;
营业子系统关键负责开户、销户、卡源管理、号源管理、收费等多种功效;
联机指令子系统负责实时停开机、和HLR、AUC等接口;
内部数据接口负责计费子系统和统计子系统和结算子系统计费后详单转发、计费子系统和营业和客服系统接口、和集团企业帐务中心接口;
流水号发生器子系统关键用来生成营业子系统、帐务子系统、客服子系统等所需要业务流水号
外部数据接口负责和银行代收费系统、缴费卡系统、短信中心、OA系统、MIS、财务系统、INTERNET服务、IP认证计费系统、ISP、ASP运行商、语音信箱平台、WAP平台、其它增值业务平台;
系统管理和监控负责操作系统、数据库、应用程序、网络、主机、存放设备等管理和监控;
客服子系统负责经过CTI、Internet、传真等技术手段等进行业务受理、查询服务、用户交费、推介咨询、申告投诉、用户提议、终端维修、信息公布和预约服务等。
2.5 系统网络示意图
图5 BOSS系统网络示意图
3 LC BOSS系统关键技术介绍
3.1大型关系(对象)数据库技术
3.1.1 数据库结构选择
依据用户数据量和硬件选择情况,数据库结构可分以下多个(以Oracle举例,Informix、Sybase、DB2等数据库类似)。
3.1.1.1 单事例数据库系统
在这种配置下,服务器上只运行一个数据库事例,各个数据库进程共用共享内存和存放系统,其处理能力和扩充能力受运行该数据库事例服务器性能限制,用户可经过增加CPU个数、增加内存等来增加数据库能力,但这些资源扩充毕竟是有限,当服务器达成最大能力无法扩充时,只能经过更换更大计算机来处理,原有投资不易得到保护,这种方法适合于数据量较小中小省份。这种方法好处是:应用软件轻易设计,管理起来方便,对中小数据量效率较高。在一期和二期计费系统中,很多省使用是这种模式(图6)。
图6 单事例数据库系统
3.1.1.2 多事例并行数据库系统
这种方法由多个节点(每个节点可简单看作一台服务器)组成,每个节点上只运行一个数据库事例,每个事例在自己节点内使用相同共享内存,全部数据库事例共享一套存放系统,其处理能力和扩充能力全部较强,用户可经过增加节点数方法来增加数据库能力,原有投资能得到很好保护,这种方法适合于数据量较大大中省份。这种方法好处是:处理能力强、易扩充、单点故障时其数据可经过其它节点来存取、管理较方便、投资保护好,可深入开发数据仓库进行数据挖掘等。其不好地方是:应用软件及对应表结构设计复杂,设计不好、各节点间锁冲突使性能极难得到应有发挥,需要对应硬件(如IBM SP等)和软件(HACMP等)来支持。在三期设计中,山东等省份采取了这种模式(图7)。
图7 多事例并行数据库系统
3.1.1.3 分布式数据库系统
这种方法和以上两种方法对比最大区分是系统有多个数据库组成,每个节点上有一个数据库,数据库间经过一定网络协议进行通讯。此种模式好处是:处理能力强、易扩充、单点故障不影响其它数据库、各节点上业务安排较灵活、能够发挥硬件最大处理能力,投资保护好,各节点机型可不一样甚至使用异种数据库等。其不利地方是:因为数据分散到多个数据库中,使用起来不方便,使应用软件设计变得复杂,管理起来麻烦,对整个系统进行统计时,各节点间通讯可能会成为瓶颈。这种方法适合于数据量较大大中省份(图8)。
图8 分布式数据库系统
3.1.1.4 混合型分布式数据库系统
混合型分布式数据库系统可看作是分布式数据库系统特例,在其节点中现有单事例数据库,也有多事例并行数据库,它吸收了以上三种方法优缺点,使设计愈加灵活,应用软件设计较麻烦。它适合于数据量大大中型省份,通常见在以后可能增加新业务,使数据量剧增和运行模式改变系统中,系统扩容改造时可考虑它,BOSS系统提议采取这种方法(图9)。
图9 混合型分布式数据库系统
浪潮BOSS系统在设计时考虑了以上模式,支持以上四种形式数据库系统,数据库管理系统可选择Oracle、Informix、Sybase、DB2等。
3.1.2 数据库设计通常关键点
数据库结构设计是否合理,对整个系统性能和功效有着很大影响,所以必需给予充足考虑。设计标准包含以下几点:
在数据库空间分配上(以oracle数据库为例,其它数据库类似):
实现入库服务器间负载平衡;
降低数据库之间I/O传输;
降低对硬盘读写I/O瓶颈;
尽可能将各类表分开;
数据和索引分开;
回滚段单独存放;
联机日志文件(online Redo Logfiles)在单独盘上;
归档日志文件(Archive Redo Logfiles)在单独盘上;
临时表空间在单独盘上;
在硬件资源利用上:
尽可能充足使用多CPU,并行化作业;
尽可能使用内存等高速资源进行通信,避免磁盘I/O
在软件设计上:
尽可能使用多进程、多线程机制,并行化运行;
使用共享内存机制进行传输;
避免锁冲突
3.1.3 数据库管理系统产品选择
目前BOSS系统中选择数据库管理系统产品关键是Oracle、Informix、Sybase三大数据库,在中国全部有一定用户。这三种产品各有千秋,全部有较强数据处理能力,有应用工具较全易维护,有Web开发能力强,用户可选择其中一个,并行环境中选Oracle较多。因为Oracle在技术上相对更有优势,中国选择Oracle移动企业越来越多。
因为BOSS系统数据量很大,常常多达多个T或几十个T,提议采取多套数据库,即采取MSMD(多服务器多数据库)分布式数据库方法,这种方法性能很好、管理风险较小。
3.2中间件技术
中间件技术是BOSS系统实现集中和三层方法关键技术,BOSS系统中使用中间件包含两类三种:一类是传输中间件或称为消息中间件,以IBM MQSeries 和BEA Tuxedo/Q(MessageQ)为代表;另一类是交易中间件,分为两种:一个为以C/C++语言为基础,以BEA Tuxedo/T和IBM Cics为代表传统交易中间件,另一个为以J2EE Java 和XML、HTML技术为依靠,以BEA Weblogic、IBM Websphere和OracleAS为代表Web应用中间件。
中间件有部分共同特征,它处理了和硬件和数据库接口问题,屏蔽了网络底层复杂繁琐编程特征,应用布署比较方便,使设计和编码人员能够专注于具体业务实施,提升了编码速度,降低了开发难度,从而软件质量有所提升。
浪潮有多年中间件开发和使用经验,开发了BOSS专用传输中间件和交易中间件。
3.2.1传输中间件
传输中间件在BOSS系统中关键话单采集中传输,计费系统中不一样节点或不一样模块间传输。传输中间件使用示意图图10以下:
图10 中间件使用
以上图10能够看出,节点一要把数据传到节点二,开发工作做是发送端应用尽管把数据打成消息包放到传输队列中,而接收端只到接收队列中取就是了。传输中间件会把数据从节点一安全传到节点二,节点一到节点二间网络协议、网络停断、操作系统不相同全由中间件本身来处理。
3.2.2交易中间件
交易中间件在应用中起着业务代理作用,在BOSS系统中关键用在营业、客服系统和大用户量查询、交易中,计费系统中也可采取交易中间件。
结合3.1.1 介绍多个数据库配置方法,交易中间件应用体系结构图11所表示:
图11 交易中间件应用体系结构
我们业务关键集中在交易中间件服务中,它使开发、升级、维护很方便。
3.3组件和插件技术
BOSS系统庞大、业务增加和改变较快,将部分业务体和技术体做成组件方法,部分组件可做成插件形式,系统灵活性和可管理行就会有很大提升。
组件技术几乎可用于BOSS各业务子系统中。
3.4并行处理步骤
并行处理技术和架构能够充足利用多机多CPU处理能力,使系统扩展性和实时对应能力增强。计费子系统并行处理架构图12所表示:
图12 计费子系统并行处理架构
3.5 IPC技术
磁盘子系统是计算机中最慢设备之一,计费系统中超大数据量又肯定要和硬盘打交道,所以硬盘常常成为制约系统性能瓶颈。我们采取了以共享内存为主进程间通信方法,兼用消息队列、Socket、管道(pipe)等IPC机制,用信号灯机制协调通讯同时及一致性,进程使用基础数据表等一次性地从数据库中加载到共享内存中,避免频繁访问数据库。这么在一台计算机内部,除了进入计费系统原始话单文件、日志文件和需传出文件外,尽可能不和硬盘打交道,部分计算机间可用Socket网络方法直接通信,这么大大提升了计费速度,我们在预处理、划价、报表累计、实时累计、预付费、反欺诈等子系统均采取了这种方法。
3.6 专用实时数据库技术
传统通用大型关系型数据库(oracle、Informix、Sybase、db2等)是基于硬存放设备(硬盘、磁盘阵列等),基于一定接口标准(如SQL92等),使用范围较广,其不少处理也在内存中进行,但数据关键存放在硬存放设备上,其处理速度和实时性有一定限制。而这里提出专用实时数据库,是其借鉴了通用数据库部分管理思想,有数据结构、表、索引、日志等,能够对表中数据进行查询、插入、更改、删除等操作,确保异常情况下数据一致性和事物完整性,但它几乎全部处理全部在内存中进行,速度极快,实时性很强,它能够经过和通用数据库接口,将数据写入到数据库中,或从数据库读到内存中,它使用范围较窄,是专用,这里只谈专为浪潮移动实时计费结算系统设计专用实时数据库。浪潮 BOSS专用实时数据库包含以下模块:
" 实时数据库RTServer进程
IPC资源建立、内存数据结构建立、数据调度、进程加载。
" 实时数据库RTLoad进程
完成数据库数据向内存中加载。
" 实时数据库RTAuth进程
负责实时数据库连接认证。
" 实时数据库RTDBW进程
将改变数据刷新到硬存放介质中。
" 实时数据库RTTI进程
统计实时数据库事务信息,方便故障时保障事务完整性。
" 实时数据库RTLOG进程
统计数据库日志信息。
" 实时数据库RTRecover进程
负责数据库事务回退。
" 实时数据库RTI进程
负责其它应用访问实时数据库接口。
" 实时数据库RTStat进程
获取实时数据库状态信息。
3.7 SAN存放技术
BOSS系统中主机和存放设备较多,生产厂家和型号也可能多个多样,怎样将这些设备互联,使系统有良好可扩充性,降低大数据量处理时网络带宽,SAN技术是良好处理方案,它做到了存放网络化,使阵列和带库类存放设备方便地互联互通。SAN连接示意图图13所表示:
图13 SAN连接示意图
作者:李朝铭 梁炎松
山东浪潮齐鲁软件产业股份
展开阅读全文