华为3GHLR数据库ORACLE脱机查询的探索
摘 要 hlr设备中存储有大量有价值的信息,但在线提取这些信息存在着很大的风险。hlr脱机查询系统满足了这一需求,通过数据库备份导入脱机系统并结合优化的查询算法,可以为市场部门决策提供极具价值的第一手数据资料。
关键词 3g hlr中央数据库 oracle sql语言 表结构
1 hlr在移动通信系统中的地位
2009年随着工业和信息化部正式发放了3张3g牌照,中国正式进入了3g时代。在3g的三种基本制式中,中国联通选用的wcdma是最具竞争力的,它是目前世界上用户最多的和技术最成熟的3g网络,全球范围内的用户达到了3.2亿。华为公司针对wcdma网络推出的hlr9820v6系列产品,随着我国3g网络的建设也得到了广泛的应用。
现阶段wcdma网络r4版本的核心网系统结构如图1所示:
与2g相同,hlr仍是m900/m1800移动通讯系统的核心数据库,存储着该hlr控制的所有注册登记
的移动用户的相关数据。在一个移动交换业务区中,所有移动用户的重要静态数据均存储在hlr中,其中包括移动用户识别号码、访问功能和用户类别等数据。hlr同时存储并提供移动用户实际漫游所在的位置区信息,以便任何入局呼叫都能取得被叫用户的的路由信息,从而接通被叫用户。
另外,3g网络的hlr设备兼容2g用户,在数据库中存储着用户访问2g或3g网络的权限。
2 hlr设备的核心组成及其重要性
hlr设备的核心在于其存储大量数据的中央数据库。华为m900/1800中央数据库硬件由两台sun服务器,一个d1000和终端集线器(terminal connectrator)组成,软件数据库采用oracle。
中央数据库在设计上采用双网双平面的体系结构,并且部件选型充分考虑了可靠性。而这种可靠性的设计更说明了hlr设备在整个移动通信网中的关键地位和作用。从hlr的作用中我们可以了解到,一旦中央数据库出现问题,hlr设备会退出服务,直接造成的影响就是所辖的几十万甚至是上百万的用户无法登录网络和接打电话。而如果故障无法在短时间内排除,其造成的经济和社会的负面影响将会是无法估量的。
因而在所有的通信规程中均明确要求,hlr的年阻断率都严格控制在30分钟以内。故hlr中央数据库的维护工作一直是从事移动交换维护工作人员最为重视和关注的。
3 hlr数据库脱机查询的需求
同时在hlr的用户数据库中又存在着大量的有待采集的信息,例如当前的开户用户数,用户开机情况,用户在各地的分布情况等等,这些信息对市场部门的决策都有重要的参考价值。
例如,市场部门比较关心的一些数据:
◆每天新入网的用户数量
市场部门通过每天对开户数进行统计,可以直接了解整体市场发展的速度;
◆开通增值业务的用户数
例如通过对比每日开通彩铃业务的用户数量的变化,业务部门可以间接的了解用户对彩铃的资费的认可程度;
◆用户在全国的漫游分布情况
信息部门通过了解用户在全国的各地的漫游情况,可以判断出高漫游区域,进而制定灵活的套餐来刺激用户的增长。如图2所示:
这一系列的有价值的资料数据都存储在hlr设备的数据库中,而如果要查询这些信息,需要对其sun平台上的oracle 数据库进行sql查询操作。但由于查询操作是直接针对正在运行的hlr底层oracle数据库的,因而在线操作存在较大的风险,是很不安全的。下列情况是在线操作潜在的风险:
◆查询操作会导致数据库系统负荷明显增加,严重时可能引起系统过载而宕机;
◆查询指令存在错误,例如误加入了修改或删除的指令,会导致数据库数据错误;
◆频繁的使用联合等耗费系统资源的sql操作,会累积导致系统资源不足。
这任意一个潜在的风险,在稳定性要求极高的hlr系统中都是不允许存在的。由此可以看出在线操作查询这些有价值的数据是没有现实意义的。
而如果可以实现建立脱机的系统,实现查询hlr用户信息的操作,将是很安全且实用的。脱机
系统是指,在一台独立的与网络没有连接的sun终端或pc机上,安装与hlr相同版本的oracle数据库,并将hlr备份的数据库文件导入脱机的oracle中,通过编写查询脚本或程序在脱机oracle进行用户数据查询。
4 hlr数据库脱机系统的实现
4.1 oracle平台和版本的确定
oracle数据库软件存在诸多版本,应用的平台也很广泛,如windows、sun(sparc)平台等。这样就为我们提供了很大的选择空间,在使用windows的pc机和使用solaris的sun机器上均可实现脱机系统的功能。
本例采用sun ultra5工作站,故仅介绍sparc平台上的脱机系统。
另外oracle的版本是向下兼容的,也就是说,oracle高版本的数据库可以兼容低版本数据库的数据。hlr数据库采用linux安装oracle依赖包oracle7版本,因而安装oracle7及以上版本的数据库均可。
本例采用对系统硬件要求比较低且性能较为优越的oracle8i作为数据库平台。
4.2 oracle系统的安装
oracle8i的安装软件在oracle上可以下载到,虽然是免费版有连接数量的限制,但由于本脱机系统同时仅存在1~2个连接故并无影响。
oracle系统的安装过程是较为复杂和繁琐的,由于篇幅的限制这里不再赘述。一般严格按照安装指导书的要求进行是可以完成安装的。
oracle安装完成后会自动创建一个数据库实例,同时在进程中可以看到ora8的存在。
4.3 脱机oracle数据恢复
oracle的数据备份一般均采用exp命令,由它导出的数据备份文件中包含有所有的数据和全部数据库表结构,就相当于将整个库完全拷贝了下来。因而在恢复数据库时,无需如同某些数据库一样,必须提前建立库并恢复库结构才可以导入数据。oracle的备份文件在导入过程中会自动根据备份时的情况首先创建或恢复数据库,然后依次将表结构和数据恢复。
数据导入使用imp命令。为解决对象之间依赖关系可能产生的问题,imp程序导入数据的顺序如表1所示:
具体的导入命令可参考如下:
#su oracle
password:
$/opt/oracle/imp user/password /databack/backup_20080404.dmp fully=y
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论