一种结构化数据异地双读写方法技术

技术编号:20866202 阅读:26 留言:0更新日期:2019-04-17 09:17
本发明专利技术提供了一种结构化数据异地双读写方法,包括如下步骤:步骤S10、将用户分为本地分组以及异地分组;步骤S20、在本地和异地的数据库服务器上分别创建数据库表,并采用奇偶分离策略分别设置主键;步骤S30、用户向业务系统发起读写数据请求,业务系统识别用户所在分组,并根据分组赋予对应的用户权限;步骤S40、用户依据权限对数据进行读写操作,并将读写操作过程中数据库表产生的数据变化日志复制到对端的数据库服务器。本发明专利技术的优点在于:实现了异地双活技术的双向复制。

【技术实现步骤摘要】
一种结构化数据异地双读写方法
本专利技术涉及信息
,特别指一种结构化数据异地双读写方法。
技术介绍
随着灾备技术的快速发展,数据复制进入了一个快速发展的阶段,尤其是针对结构化数据(例如Oracle),先后出现了RAC、ADG、OGG等技术产品:RAC用于实现Oracle的多实例集群,ADG用于实现同城双活异地灾备,OGG用于实现异地双活。伴随着各行业的核心业务对业务连续性的高要求,促进了异地双活技术的快速发展和应用,基于异地双活技术可以实现对结构化数据库的异地双活逻辑复制。但是,传统的异地双活技术存在有如下缺点:传统的异地双活技术只能实现单方向复制,一般只有主库可读写,从库只读,发生双活切换后需要手动调整复制方向,增加了业务切换的风险,与此同时也增加了业务切换的时间,影响了灾备指标(RTO)。
技术实现思路
本专利技术要解决的技术问题,在于提供一种结构化数据异地双读写方法,实现异地双活技术的双向复制。本专利技术是这样实现的:一种结构化数据异地双读写方法,所述方法包括如下步骤:步骤S10、将用户分为本地分组以及异地分组;步骤S20、在本地和异地的数据库服务器上分别创建数据库表,并采用奇偶分离策略分别设置主键;步骤S30、用户向业务系统发起读写数据请求,业务系统识别用户所在分组,并根据分组赋予对应的用户权限;步骤S40、用户依据权限对数据进行读写操作,并将读写操作过程中数据库表产生的数据变化日志复制到对端的数据库服务器。进一步地,所述步骤S10具体为:通过调度控制服务将用户分为本地分组以及异地分组。进一步地,所述步骤S20具体为:在本地的数据库服务器上创建一第一数据库表,所述第一数据库表的奇数行设置为第一主键;在异地的数据库服务器上创建一第二数据库表,所述第二数据库表的偶数行设置为第二主键。进一步地,所述第一数据库表的奇数行设置为第一主键具体为:第一数据库表的奇数行设置为第一主键,各第一主键间步长为2;所述第二数据库表的偶数行设置为第二主键具体为:第二数据库表的偶数行设置为第二主键,各第二主键间步长为2。进一步地,所述步骤S30具体为:用户向业务系统发起读写数据库服务器中的数据的请求,业务系统通过调度控制服务判断用户所在的分组并赋予用户权限。进一步地,所述权限为读写权限或者只读权限。进一步地,所述步骤S40具体为:步骤S41、若用户属于本地分组,用户依据权限对数据进行读写操作,本地的数据库服务器在读写数据的过程中,根据第一数据库表在奇数行产生第一主键,新增或者变更数据;步骤S42、数据复制程序定时扫描第一数据库表,并抓取数据变化的日志,将日志存储至缓存中;步骤S43、装载器读取缓存中的日志,并将日志转化为SQL语句,装载器通过SQL语句将数据变化的日志加载到第二数据库表的奇数行中。进一步地,所述步骤S40具体为:步骤S410、若用户属于异地分组,用户依据权限对数据进行读写操作,异地的数据库服务器在读写数据的过程中,根据第二数据库表在偶数行产生第二主键,新增或者变更数据;步骤S420、数据复制程序定时扫描第二数据库表,并抓取数据变化的日志,将日志存储至缓存中;步骤S430、装载器读取缓存中的日志,并将日志转化为SQL语句,装载器通过SQL语句将数据变化的日志加载到第一数据库表的偶数行中。进一步地,所述数据复制程序为Logmnr。本专利技术的优点在于:1、实现了异地双活技术的双向复制。2、通过第一数据库表的奇数行设置为第一主键,第二数据库表的偶数行设置为第二主键,即本地与异地的主键采用奇偶分离的策略,杜绝了数据复制过程中产生脑裂问题,即同一主键本地与异地同时做变更造成数据复制程序无法决策以哪份数据为准。3、通过本地与异地的主键采用奇偶分离的策略,实现了本地与异地两个数据库服务器同时读写操作,进而极大的提升了业务连续性指标,并且升级改造成本低廉。4、通过将各第一主键的步长设置为2,将各第二主键的步长设置为2,有效的节约了系统资源。5、通过调度控制服务将用户进行分组,实现合理有效的分配全局的负载。6、通过设置第一数据库表的偶数行为第一主键,第二数据库表的奇数行为第二主键,实现异地随时切换复制方向。附图说明下面参照附图结合实施例对本专利技术作进一步的说明。图1是本专利技术一种结构化数据异地双读写方法的流程图。图2是本专利技术一种结构化数据异地双读写方法的原理框图。具体实施方式请参照图1至图2所示,本专利技术一种结构化数据异地双读写方法的较佳实施例,包括如下步骤:步骤S10、将用户分为本地分组以及异地分组;步骤S20、在本地和异地的数据库服务器上分别创建数据库表,并采用奇偶分离策略分别设置主键;步骤S30、用户向业务系统发起读写数据请求,业务系统识别用户所在分组,并根据分组赋予对应的用户权限;通过设置用户权限,提高了数据库服务器的安全性;步骤S40、用户依据权限对数据进行读写操作,并将读写操作过程中数据库表产生的数据变化日志复制到对端的数据库服务器。所述步骤S10具体为:通过调度控制服务将用户分为本地分组以及异地分组。可按区域或者取模规则等进行分组,通过调度控制服务将用户进行分组,实现合理有效的分配全局的负载。所述步骤S20具体为:在本地的数据库服务器上创建一第一数据库表,所述第一数据库表的奇数行设置为第一主键;在异地的数据库服务器上创建一第二数据库表,所述第二数据库表的偶数行设置为第二主键。即本地与异地的主键采用奇偶分离的策略,杜绝了数据复制过程中产生脑裂问题,即同一主键本地与异地同时做变更造成数据复制程序无法决策以哪份数据为准;且实现了本地与异地两个数据库服务器同时读写操作,进而极大的提升了业务连续性指标,并且升级改造成本低廉。数据库主键,指的是一个列或多列的组合,其值能唯一地标识表中的每一行,通过它可强制表的实体完整性,主键主要是用于其他表的外键关联,以及本记录的修改与删除。所述第一数据库表的奇数行设置为第一主键具体为:第一数据库表的奇数行设置为第一主键,各第一主键间步长为2;所述第二数据库表的偶数行设置为第二主键具体为:第二数据库表的偶数行设置为第二主键,各第二主键间步长为2。通过将各第一主键的步长设置为2,将各第二主键的步长设置为2,有效的节约了系统资源。所述步骤S30具体为:用户向业务系统发起读写数据库服务器中的数据的请求,业务系统通过调度控制服务判断用户所在的分组并赋予用户权限。所述权限为读写权限或者只读权限。所述步骤S40具体为:步骤S41、若用户属于本地分组,用户依据权限对数据进行读写操作,本地的数据库服务器在读写数据的过程中,根据第一数据库表在奇数行产生第一主键,新增或者变更数据;步骤S42、数据复制程序定时扫描第一数据库表,并抓取数据变化的日志,将日志存储至缓存中;步骤S43、装载器读取缓存中的日志,并将日志转化为SQL语句,装载器通过SQL语句将数据变化的日志加载到第二数据库表的奇数行中。所述步骤S40具体为:步骤S410、若用户属于异地分组,用户依据权限对数据进行读写操作,异地的数据库服务器在读写数据的过程中,根据第二数据库表在偶数行产生第二主键,新增或者变更数据;步骤S420、数据复制程序定时扫描第二数据库表,并抓取数据变化的日志,将日志存储至缓存中;步骤S430、装载器读取缓存中的日志,并将日志转化为S本文档来自技高网...

【技术保护点】
1.一种结构化数据异地双读写方法,其特征在于:所述方法包括如下步骤:步骤S10、将用户分为本地分组以及异地分组;步骤S20、在本地和异地的数据库服务器上分别创建数据库表,并采用奇偶分离策略分别设置主键;步骤S30、用户向业务系统发起读写数据请求,业务系统识别用户所在分组,并根据分组赋予对应的用户权限;步骤S40、用户依据权限对数据进行读写操作,并将读写操作过程中数据库表产生的数据变化日志复制到对端的数据库服务器。

【技术特征摘要】
1.一种结构化数据异地双读写方法,其特征在于:所述方法包括如下步骤:步骤S10、将用户分为本地分组以及异地分组;步骤S20、在本地和异地的数据库服务器上分别创建数据库表,并采用奇偶分离策略分别设置主键;步骤S30、用户向业务系统发起读写数据请求,业务系统识别用户所在分组,并根据分组赋予对应的用户权限;步骤S40、用户依据权限对数据进行读写操作,并将读写操作过程中数据库表产生的数据变化日志复制到对端的数据库服务器。2.如权利要求1所述的一种结构化数据异地双读写方法,其特征在于:所述步骤S10具体为:通过调度控制服务将用户分为本地分组以及异地分组。3.如权利要求1所述的一种结构化数据异地双读写方法,其特征在于:所述步骤S20具体为:在本地的数据库服务器上创建一第一数据库表,所述第一数据库表的奇数行设置为第一主键;在异地的数据库服务器上创建一第二数据库表,所述第二数据库表的偶数行设置为第二主键。4.如权利要求3所述的一种结构化数据异地双读写方法,其特征在于:所述第一数据库表的奇数行设置为第一主键具体为:第一数据库表的奇数行设置为第一主键,各第一主键间步长为2;所述第二数据库表的偶数行设置为第二主键具体为:第二数据库表的偶数行设置为第二主键,各第二主键间步长为2。5.如权利要求3所述的一种结构化数据异地双读写方法,其特征在于:所述步骤S30具体为:用户向业务系统发起读写数据库服务器...

【专利技术属性】
技术研发人员:林振天陈又咏张均成蔡清远白海滨袁宝峰
申请(专利权)人:福建亿榕信息技术有限公司国网信息通信产业集团有限公司国网信通亿力科技有限责任公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1