首页> 中国专利> 应用于电信行业计费系统的共享数据中心

应用于电信行业计费系统的共享数据中心

摘要

本发明涉及一种应用于电信行业计费系统的共享数据中心,包括:共享数据中心服务器端,具有可动态扩展的用来存储共享数据的共享内存空间,共享内存空间可从数据库加载共享数据,加载的共享数据按指定数据结构在该共享内存空间内进行组织,共享内存空间内的共享数据根据变化自动更新,使用读写锁保证共享内存空间的读写安全;共享数据中心客户端,其提供应用程序接口供作为访问者的应用程序调用,共享内存空间映射到应用程序本身的内存空间,应用程序根据所述指定数据结构从应用程序本身的内存空间中查找共享数据。本发明针对电信行业的数据特征在存储方式和查找算法上进行优化,满足高效率查询的同时降低内存消耗。

著录项

  • 公开/公告号CN101986649A

    专利类型发明专利

  • 公开/公告日2011-03-16

    原文格式PDF

  • 申请/专利号CN201010564776.8

  • 发明设计人 李志;刘羽;

    申请日2010-11-29

  • 分类号H04L29/06(20060101);H04L12/14(20060101);

  • 代理机构44265 深圳市德力知识产权代理事务所;

  • 代理人林才桂

  • 地址 518000 广东省深圳市高新技术产业园区南区南七道T3大厦B三层

  • 入库时间 2023-12-18 01:52:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-01-15

    授权

    授权

  • 2011-05-04

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20101129

    实质审查的生效

  • 2011-03-16

    公开

    公开

说明书

技术领域

本发明涉及共享数据中心,尤其涉及一种应用于电信行业计费系统的共享数据中心。

背景技术

目前,电信行业主要采用通用内存数据库,如TimesTen、Altibase等来管理计费系统中的共享数据。在现有直接使用通用内存数据库来管理共享数据的方式下:因为采用的是通用内存数据库,所以限制了其单独针对电信行业特点进行优化;资源占用率高,内存有额外消耗,数据查询效率低且内存消耗大;启动加载速度慢,从异常中恢复时间长,不能满足电信行业需要。

发明内容

因此,本发明的目的在于提供一种应用于电信行业计费系统的共享数据中心,其可以在在满足高效率查询的同时降低内存消耗。

为实现上述目的,本发明提供一种应用于电信行业计费系统的共享数据中心,包括:共享数据中心服务器端,其具有可动态扩展的用来存储共享数据的共享内存空间,该共享内存空间可从数据库加载共享数据,加载的共享数据按方便查找的指定数据结构在该共享内存空间内进行组织,共享内存空间内的共享数据根据来源于数据库和共享数据中心客户端的共享数据变化自动更新,使用读写锁保证共享内存空间的读写安全;共享数据中心客户端,其提供应用程序接口供作为访问者的应用程序调用,所述共享内存空间映射到应用程序本身的内存空间,应用程序根据所述指定数据结构从应用程序本身的内存空间中查找共享数据。

其中,所述共享数据中心服务器端使用多级本地文件缓存实时保存共享内存空间的映像,当该共享数据中心重新启动时,可选择从该多级本地文件缓存加载共享数据至所述共享内存空间。

其中,所述读写锁使用信号灯实现。

其中,所述指定数据结构为散列、单词树或平衡二叉树中的一种或若干种。

其中,所述共享内存空间中内存的真实物理地址采用虚拟指针信息和超级块信息结合的方式表示。

综上,本发明应用于电信行业计费系统的共享数据中心针对电信行业的数据特征在存储方式和查找算法上进行优化,满足高效率查询的同时降低内存消耗;使用多级本地文件缓存,实时保存内存映像,重新启动速度很快。

附图说明

下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其他有益效果显而易见。

附图中,

图1为本发明应用于电信行业计费系统的共享数据中心的模块结构示意图;

图2为本发明应用至NGBSS中的BILLING部分的示意图。

具体实施方式

参见图1,其为本发明应用于电信行业计费系统的共享数据中心的模块结构示意图。本发明的应用于电信行业计费系统的共享数据中心,包括:共享数据中心服务器端1和共享数据中心客户端2,共享数据中心服务器端1与存储有共享数据的数据库3通讯连接,共享数据中心客户端2与作为访问者的应用程序5通讯连接。共享数据中心服务器端1和共享数据中心客户端2是按两者在数据共享过程中的功能命名,可以是计算机网络中的服务器端和客户端,也可以是功能模块中的服务器端和客户端,也就是说共享数据中心服务器端1和共享数据中心客户端2可以位于同一计算机上,也可以分别位于不同的计算机上。数据库3用于存储电信行业计费系统的共享数据,例如客户资料、业务规划等这些在计费过程中需要共享使用的数据,数据库3可以是现有采用TimesTen或Altibase的通用内存数据库。应用程序5指电信行业计费系统中需要访问共享数据的各类业务进程,例如设置于电信营业厅中供人操作的业务终端以及其上运行的各种业务界面,具体如批价、累帐、优惠业务等。

共享数据中心服务器端1具有可动态扩展的用来存储共享数据的共享内存空间11,该共享内存空间11可从数据库3加载共享数据,加载的共享数据按方便查找的指定数据结构在该共享内存空间11内进行组织,共享内存空间11内的共享数据根据来源于数据库3和共享数据中心客户端2的共享数据变化自动更新,使用读写锁12保证共享内存空间11的读写安全;共享数据中心客户端2,其提供应用程序接口21供作为访问者的应用程序5调用,所述共享内存空间11映射到应用程序5本身的内存空间51,应用程序5根据所述指定数据结构从本身的内存空间51中查找共享数据。也就是说,在共享数据中心服务器端1,首先开辟初始的共享内存空间11,并根据使用情况动态扩展共享内存空间11;从数据库3加载数据;对共享数据按指定数据结构在共享内存空间11内进行组织以方便查找;自动更新共享内存空间11中的数据;提供读写锁12对共享数据中心服务器端1和共享数据中心客户端2的动作进行同步。在共享数据中心客户端,提供一组应用程序接口(API)21供访问者调用;将共享内存空间11映射到应用程序5本身的内存空间51,依据指定条件从本身的内存空间51中查找数据。

本发明的共享数据中心服务器端1还可以使用多级本地文件缓存4实时保存共享内存空间11的映像,当共享数据中心重新启动时,除可选择从数据库3加载共享数据外,也可选择从多级本地文件缓存4加载共享数据至共享内存空间11。多级本地文件缓存4由共享数据中心服务器端1实现,是从数据库3加载完成后以及实时更新数据过程中,创建或修改的本地文件缓存,其方法是将共享内存空间11内部组织完成后的内存镜像DUMP(复制)到本地磁盘上,多级是表示缓存文件按时间分为基础文件、增量文件。重新启动或异常启动时首选从多级本地文件缓存4恢复数据,多级本地文件缓存4通过对文件头的校验信息保证文件的版本正确、完整性和及时性。在再次启动时优先从本地磁盘上进行加载而不是再从数据库3加载,可以避免更大的I/O开销和重新组织数据的开销。通过使用多级本地文件缓存4,实时保存内存映像,重新启动速度很快,可比第一次从数据库启动提高15至20倍。

共享内存空间11内组织共享数据的指定数据结构可以为散列、单词树或平衡二叉树中的一种或若干种。通过内置HASH(散列)、TRIE TREE(单词树)、AVL TREE(平衡二叉树)等算法,可以针对电信行业的数据特征在存储方式和查找算法上进行优化,在满足高效率查询的同时降低内存消耗。

本发明的共享数据中心还可以提供各种辅助工具,例如:1)共享内存空间查看器,用来查看共享内存中的数据情况;2)共享数据中心服务器端操作工具,用来对指定数据对象重新刷新;3)性能调试器,收集特定数据对象查询效率指标并进行分析,给出供参考的算法。

读写锁12可以使用信号灯实现,例如Linux所支持的系统5(SYSTEMV)的信号灯(semaphore)。信号灯主要用于同步或者互斥对共享资源的访问,它的发明来源于火车运行系统中的“信号灯”,利用信号灯可以实现“PV操作”这种进程间同步机制。P操作是获得资源,将信号灯的值减1,如果结果不为负则执行完毕,进程获得资源,否则进程睡眠以等待资源别的进程释放资源;V操作则是释放资源,给信号灯的值加1,释放一个因执行P操作而等待的进程。在本发明中,采用信号灯主要达到保证数据一致性的目的:1)确保任一时刻仅有一个写者在更改共享内存空间;2)确保在读共享内存空间的同一时刻没有写者在更改同一片共享内存空间;3)支持多个读者并行处理;4)确保写者优先。读写锁12由共享数据中心服务器端1创建,共享数据中心客户端2提供操作读写锁12的接口,这样客户端可以在读写前操作读写锁保证读写安全。

获取读锁的具体过程可如下所示:

1)判断写操作排队锁是否为零,如果不为零则阻塞等待写结束。

2)获取读锁(读者数量加一)。

3)读操作。

4)释放读锁(读者数量减一)。

获取写锁的具体过程可如下所示:

1)写操作排队锁加一。

2)读者数量是否为零,如果不为零则阻塞等待。

3)获取写锁。

4)写操作。

5)释放写锁。

6)写操作排队锁减一。

共享内存空间11中内存的真实物理地址采用虚拟指针信息和超级块信息结合的方式表示。虚地址由三部分组成:块、页、页内偏移,使用SUPERBLOCK(超级块)来保存寻址相关的必要基础数据(内存块数、内存块首地址、页表),采用这样的寻址方法是提高内存使用率、减少内存碎片及动态扩展共享内存段的基础。

共享内存空间11的寻址方法具体说明如下:

1、采用虚拟指针,通过虚拟指针配合SUPER BLOCK(超级块)中的信息可以确定其指向的真实物理地址。

2、在共享内存空间11中对数据进行组织,可能应用到各种各样的数据结构,如数组、平衡二叉树、HASH表,TRIE树等。举例来说,平衡二叉树每个节点需要两个指针指向左右两个节点,其节点定义可能是如下形式:

Struct node

{

TDATA data;

vaddr left;

vaddr right;

}

其中left和right两个成员的类型就是虚拟指针。其他数据结构,包括数组在共享内存空间11内部也是靠虚拟指针表示其地址的。

3、虚拟指针由8个字节共64个BIT构成,前8个BIT表示内存块序号(一个共享内存空间11可能由多个内存块构成),其后24个BIT用于表示页序号(一个内存块由N个页构成),最后32个BIT用于表示页内偏移。

4、在SUPER BLOCK(超级块)中记录了该共享内存空间11包含几个内存块,每个内存块的首地址,每个内存块包含多少个内存页,内存页的大小(一个内存块中内存页的大小是固定的)。

5、虚拟指针信息+超级块信息=真实物理地址,从而完成在共享内存空间11内部寻址的过程。

6、该寻址算法被封装在底层,所有涉及共享内存空间11的操作都会应用到。在共享数据中心服务器端1来说,加载数据、组织索引都会用到虚拟寻址;在共享数据中心客户端2来说,不论读写,在查询定位时都会用到虚拟寻址;只要涉及到共享内存空间11内部数据的操作都会经过虚拟寻址。

如图2所示,其为本发明具体应用至NGBSS(New Generation BusinessSupport System,新一代运营支撑系统)中的BILLING(计费)部分的示意图,现有的NGBSS中的BILLING部分均可以采用图2所示的架构实现。共享数据中心10从包括业务规划31和客户资料32的数据库中加载客户资料和业务规则(包括三户资料、套餐规则等)至由只读内存区111和读写内存区112组成的共享内存空间,并进行索引组织。计费部分的运行调度框架50下包括采集、向导、批价、累帐、优惠、信控、出帐等业务进程,这些业务进程内建共享数据中心客户端(以对象实例的形式体现),通过共享数据中心客户端对象提供的接口22访问共享数据中心10内的数据,对数据进行包括数据更新和数据获取在内的读写操作。使用数据40作为存储多级本地文件缓存的数据库,实时保存内存映像,使得共享数据中心10重新启动速度很快。在此具体应用中,共享数据中心10还提供了共享数据中心工具包13,其由独立的一系列辅助功能模块构成,包括数据定制、数据刷新、数据持久、快速恢复、业务调整、调试工具、性能分析及服务调整等模块,本身不介入业务主流程,主要目的是提供便利的人机界面。

综上,本发明应用于电信行业计费系统的共享数据中心针对电信行业的数据特征在存储方式和查找算法上进行优化,满足高效率查询的同时降低内存消耗;使用多级本地文件缓存,实时保存内存映像,重新启动速度很快。

以上所述,对于本领域的普通技术人员来说,可以根据本发明的技术方案和技术构思作出其他各种相应的改变和变形,而所有这些改变和变形都应属于本发明后附的权利要求的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号