期刊专题 | 加入收藏 | 设为首页 12年实力经营,12年信誉保证!论文发表行业第一!就在400期刊网!

全国免费客服电话:
当前位置:首页 > 免费论文 > 科技论文 > 软件开发 >

有线电视网络资源数据管理方案

1数据存储架构

根据以上试验物理架构,要求区县分公司数据库存储和备份区县自身所辖的网络数据,并向地市分公司实时同步网络资源文件数据,定时同步网络资源属性数据;地市分公司数据库服务器存储和备份市级本身和所管辖各区县的网络数据,并向省级数据库服务器实时同步网络资源文件数据,定时同步网络资源属性数据。省级中心数据库存储省、市、区三级所有数据,对应数据存储架构见第38页图2。

2有线电视网络资源管理系统数据同步

2.1数据同步的基本概念

有线电视网络资源管理系统后台数据为Oracle数据库,用以存储网络资源空间数据和属性数据。GIS数据库的同步就是各Oracle数据库中空间数据和属性数据表的同步。笔者采用Oracle数据库系统自带的高级复制方案为系统研究基础,具体包括以下几个概念。1)高级复制,是在组成分布式数据库系统的多个数据库中复制和维护数据库对象的过程。Oracle高级复制允许应用程序更新数据库的任何副本,并将这些更改自动传递到其他数据库,同时确保全局事务处理的一致性和数据完整性。2)同步复制,复制数据在任何时间、任何复制节点均保持一致。如果复制环境中的任何一个节点的复制数据发生了更新操作,这种变化会立刻反映到其他所有的复制节点。这种技术适用于那些对于实时性要求较高的商业应用中。3)异步复制,所有复制节点的数据在一定时间内是不同步的。如果复制环境中的某一个节点的复制数据发生了更新操作,这种改变将在不同的事务中被传播和应用到其他所有复制节点。4)实体化视图复制,是由一个主体站点提供源复制对象,一个实体化视图站点拷贝主站点数据。在实体化视图站点为每个复制表或视图建立一个对应的表保存相应的数据,该表只能通过Oracle复制机制进行增加、删除、修改数据的操作,可以实现快速刷新、完全刷新和强制刷新,使用快速刷新时记录主体源数据对象操作日志的表。这些不同的事务间可以间隔几秒,几分钟,几小时,也可以是几天之后。复制节点之间的数据临时是不同步的,但传播最终将保证所有复制节点间的数据一致。根据以上概念的定义,核心服务器为主站点,各节点服务器为实体化视图站点。

2.2同步方案

根据物理架构及数据库设计方案,考虑到同步时占用数据库资源较多,导致的数据库性能下降影响到用户,将同步分为G_SYS系统、G_PROPITEM属性、G_PROJECT工程3个主体组。同步时间和同步内容可根据具体需求进行调整。1)G_SYS系统主体组,该组包括用户更新系统权限表、数据字典表、设备参数表和系统配置表。该组表中同步频率低,所以同步时间设置为每周周日同步一次和手动进行同步,避免执行同步时占用数据库资源。2)G_PROPITEM属性主体组,该组包括各个地级市的业务属性信息,采用节点数据双向同步,各节点同步自己相应的业务属性数据。同步时间设置为每天23:00开始。3)G_PROJECT工程主体组,由于该组数据量少,且实时性比较高,所以同步时间设置为5min一次。

2.3同步配置步骤

2.3.1数据库环境同步节点数据库配置见表1。其中,设置节点ID为防止各个节点数据同步时产生的主键数据冲突,导致同步失败;设置全局数据库名为保证分布式系统中各个数据库之间相互链接通信。2.3.2同步环境在建立主服务器和各节点服务器的同步环境之前,先要确保主服务器和各节点服务器已安装了Oracle数据库,并且每一个节点服务器都要与主服务器能相互访问。首先在主服务器上建立3个主体组,并将相应的数据库表加入对应的组中,再在各节点服务器上建立对应的视图组,将数据从主服务器上下载到节点服务器,并设置每个节点服务器和每个刷新组的同步时间,同时导入同步表外的其他数据库信息,如空间索引、函数、存储过程及不同步的信息。2.3.3同步机制主服务器和节点服务器的同步,采用增量数据同步的方式,即节点服务器只提交从上次同步完成后到目前所修改的内容,并且属性及关联数据只同步各自节点的数据,只要主服务器节点数据不进行更改,一般情况下,如实际上未发生操作,只需要节点服务器提交同步的时间。这样的分类在同步时效率就会很高,并且减少了网络传输的负载。2.3.4同步脚本生成与执行2.3.4.1同步脚本生成以省级节点服务器为例,连接省级节点,创建复制管理员并授予相应的权限,然后注册市级节点服务器,之后定时清除延迟事务队列并用传播方将延迟事务推入其他主体站点或者实体化视图站点,最后为实体化视图站点建立复制代理,创建复制代理用户并授予视图接受方权限。在以上环节工作过程中,使用CatvSysMainTe-nance程序生成对应的同步脚本,SYS表及PRO-JECT表设置对应的主体组、刷新组,PROPITEM表设置对应的主体组、刷新组和节点ID,即可生成相应的同步脚本。2.3.4.2同步脚本执行1)数据库初始化设置脚本执行。一是数据库设置全局数据库名脚本;二是数据库定时作业队列数修改;三是修改数据库全局名。2)执行市公司脚本。执行市公司脚本《core_master_rep.sql》文件会创建3个主体组并执行对应的G_PROJECT_MASTER.sql,G_PROPITEM_MAS-TER.sql,G_SYS_MASTER.sql文件。3)执行分公司脚本。顺序执行JCP_node_rep_rs.sql,G_SYS_MVALL.sql,G_PROJECT_MVALL.sql,G_PROPITEM_MVALL3.sql。4)导入数据库。该操作主要是对未设置同步的函数、存储过程及不同步表的配置,并删除加入复制组中的表。5)配置SYS_SETTING表IP地址及数据库服务名。6)执行CALLALLTABLE_SETFIELDDEFAULT(‘GLOBAL_NODEID’,3);3为分公司节点ID。该函数可更新分公司节点数据库表字段GLOB-AL_NODEID默认值。7)执行更新空间元数据表脚本和重建空间索引脚本。

3数据同步时的冲突解决方案

3.1在同一台节点服务器上所产生的数据冲突

在同一台节点服务器上,所连接的各个客户端在GIS系统中所进行的数据添加、删除和修改都有可能产生冲突。例如,两台或多台客户端对同一个设备的网络资源数据进行操作,就属于典型的数据冲突。在此过程中,每一台客户端所进行的操作都以事务的方式提交到节点服务器,按照事务提交的先后次序,如果出现了以上现象,系统会自动处理,如果是新设计的数据就不会存在冲突,因为归档冲突是由于拆改设计存在多版本数据。由于设计过程中设计到同一个资源设备,到归档状态时就有可能产生操作冲突。如果采用锁定方式,由于设计过程跨度较长,就会对资源数据进行长时间锁定,此时设计人员在整理拆改资源数据时,会发现并发性能不好。

3.2设计多版本归档解决方案

为了避免锁机制存在的各种问题,可以采用基于多版本并发控制思想的无锁事务机制。这是因为锁机制是一种预防性的,读会阻塞写,写也会阻塞读,当锁定粒度较大,时间较长时并发性能就不会太好;而MVCC是一种后验性的,读不阻塞写,写也不阻塞读,等到提交时才检验是否有冲突,由于没有锁,所以读写不会相互阻塞,从而大大提升了并发性能。MVCC的一种简单实现是基于有条件更新的思想,即只有在资源数据满足更新条件的情况下才将数据更新为新值,否则,返回错误报告信息。为了避免条件太大所带来的性能问题,可以为每条数据项增加一个整型的版本号字段,由资源数据维护该版本号,每次数据有更新就增加版本号;设计数据在进行归档条件更新时,通过版本号来更新取代具体的值。

3.3不同的节点服务器之间所产生的数据冲突

在不同的节点服务器上是有可能对同一对象进行操作的,只要具有修改同一数据的权限,也会存在数据冲突的问题。对于不同节点服务器之间所产生的冲突,只能在节点服务器分别和核心服务器同步时,同步较晚的那台节点服务器才会暴露出数据冲突的问题,对于这种冲突,系统不能按照先后次序进行自动事务覆盖处理,需要具体情况具体分析。当出现冲突时系统会提示冲突相关信息,此时系统管理员应根据冲突信息进行判别和取舍处理。目前所有网络资源的操作只在节点服务器上进行,而且设计数据以任务为单位,只能有一个用户可以打开进行操作;建筑物数据也按区域进行了划分,每个分公司只能修改所辖区域内的建筑物数据。根据这种方式不会出现数据冲突,因此要解决不同的节点服务器之间所产生的数据冲突,就要避免在不同的节点服务器上对同一对象进行修改。

作者:石慧 单位:太原有线电视网络有限公司


    更多软件开发论文详细信息: 有线电视网络资源数据管理方案
    http://www.400qikan.com/mflunwen/kjlw/rjkf/192334.html

    相关专题:医学论文发表网站 北京警察学院


    上一篇:谈工民建工程施工的造价控制管理
    下一篇:没有了

    认准400期刊网 可信 保障 安全 快速 客户见证 退款保证


    品牌介绍