oracle数据库同步内存数据,内存数据库与Oracle数据库的数据同步设计与实现

0引言数据库技术诞生于20世纪60年代末70年代初,是随着计算机技术的发展而产生的一种计算机应用技术,其主要目的是有效地管理和存取大量的数据资源。数据库技术主要研究如何存储、使用和管理数据[1]。传统的数据库是用磁盘进行存储的,在数据库存取的过程中需要频繁地对磁盘进行读写操作,而磁盘的“输入/输出(I/O)”一直是计算机硬件性能中最薄弱的环节[2-4],随着计算机网络技术和信息技术的发展,需要存储的信息越来越多,对数据的访问实时性要求越来越高,传统的以磁盘存储的物理数据库越来越不能满足实时性和并发性的要求[2,5]。虽然采用磁盘阵列的方式在一定程度上能够增加数据库访问的“I/O”吞吐量,但是磁盘阵列的价格比较昂贵且磁盘阵列性能也存在极限,内存数据库虽然能够解决实时性和并发性问题[2-7],但是内存数据库的存储容量有限,故内存数据库与传统商业数据库混合服务的组网方式逐渐流行起来,成为一种既能保证数据库访问的实时性和并发性又能大容量存储的经济性解决方案。这种解决方案一般只将访问频度比较高的实时信息和关键性数据存储在内存中,传统的商业数据库中存储系统的全部信息,兼作内存数据库数据的“固化版本”[4-7],这就引入了内存数据库与商业数据库的同步问题。文章以Oracle数据库为例,提出了一种可靠的内存数据库与Oracle数据库的数据同步机制,能够快速有效地保证内存数据库与Oracle数据库的数据一致性。1数据库同步设计内存数据库与Oracle商业数据库组合的组网方式一般是部署一台Oracle数据库服务器和一台或多台内存数据库。Oracle数据库存储所有的数据信息,也被称为后台数据库(下文简称后台),内存数据库是Oracle数据库的“工作版本”,存储实时的业务信息,也称为前台数据库(下文简称前台)。下面以一台Ora-cle数据库服务器和两台内存数据库作负载均衡的混合组网数据库系统为例说明数据库同步设计。内存数据库与Oracle数据库混合组网部署如图1所示。图1内存数据库与Oracle数据库组网部署图内存数据库与Oracle数据库的同步主要有以下3种方式:(1)前台内存数据库数据加载:内存数据库与Oracle数据库混合组网的数据库系统上电时,内存数据库需要从Oracle数据库加载全部业务数据,即全库同步。(2)前台向后台数据同步:当前台内存数据库处理业务时会产生一些新数据或数据变更,这些新数据或数据变更需要同步到后台Oracle数据库进行固化。(3)后台向前台数据同步:由于本设计前台采用两台负载均衡的内存数据库,当一台内存数据库处理业务产生新数据或数据变更后,将其同步到后台Oracle数据库,需要后台向前台另一台前台内存数据库同步;另外系统网管在后台配置的数据也需要同步到前台。实现上述三种同步需要在后台Oracle数据库服务器和两台前台内存数据库服务器部署数据同步模块。前台数据库服务器的数据同步模块负责在上电时向后台请求加载业务数据、将前台产生的新数据向后台同步并处理来自后台的数据同步请求;后台数据库服务器的数据同步模块负责处理前台上电的加载请求、处理来自前台的数据同步请求并将后台的新数据按照一定的规则推送到前台。前台内存数据库和后台Oracle数据库同步信息交互图如图2所示。图2前后台数据库同步信息交互图设计中前台数据同步模块不直接对后台数据库进行存取,实现了前台对后台Oracle数据库访问的隔离,通过数据同步请求实现前台对外置的后台数据库的数据查询、插入、更新和修改等数据库操作请求,两台前台内存数据库服务之间的数据同步亦是通过前后台数据库同步实现。前台内存

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值