CN106250432A - 一种基于持久化MQ的hbase容错方法 - Google Patents

一种基于持久化MQ的hbase容错方法 Download PDF

Info

Publication number
CN106250432A
CN106250432A CN201610593021.8A CN201610593021A CN106250432A CN 106250432 A CN106250432 A CN 106250432A CN 201610593021 A CN201610593021 A CN 201610593021A CN 106250432 A CN106250432 A CN 106250432A
Authority
CN
China
Prior art keywords
hbase
data
write
persistence
fault
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610593021.8A
Other languages
English (en)
Inventor
解豪
解一豪
李�杰
房善华
衣秀
郭运艳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Software Co Ltd
Original Assignee
Inspur Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Software Co Ltd filed Critical Inspur Software Co Ltd
Priority to CN201610593021.8A priority Critical patent/CN106250432A/zh
Publication of CN106250432A publication Critical patent/CN106250432A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Hardware Redundancy (AREA)
  • Retry When Errors Occur (AREA)

Abstract

本发明特别涉及一种基于持久化MQ的hbase容错方法。该基于持久化MQ的hbase容错方法,通过在数据写入HBASE的阶段对其在MQ中进行备份,若HBASE未完成对写操作,对应的写请求便会保存在MQ中,当HBASE重启恢复时,从MQ消息队列中找到未完成操作的数据,重新进行写入即可。该基于持久化MQ的hbase容错方法,解决了HBASE因宕机造成未写入数据丢失的问题,同时将写操作的恢复单独备份在MQ中,与LOG恢复方法分开缩短了HBASE集群在宕机等异常情况发生后的恢复时间,提高了生产环境下容错能力和可靠性,保障了HBASE数据的安全,减少了额外的运维成本。

Description

一种基于持久化MQ的hbase容错方法
技术领域
本发明涉及大数据相关NOSQL技术领域,特别涉及一种基于持久化MQ的hbase容错方法。
背景技术
HBASE作为一种基于HADOOP架构体系的NOSQL数据库,已经广泛的应用在各种行业中;HBASE自身带有一套基于LOG的数据容错机制,可以对数据写入过程中出现的服务器宕机、内存溢出、网络故障等造成的异常状况进行记录,并在HBASE集群重启时通过LOG进行恢复。但HBASE的LOG机制的处理过程非常复杂,本身涉及到了拆分以及集群的数据平衡等因素,造成恢复的时间成本非常高,而且LOG的写入有数据量的限制,无法对实时写入的数据进行恢复。
市面上对HBASE的容错和备份都是基于多节点备份或HDFS的数据容灾方式实现的容错思路,本质上是在HBASE发生异常后能够及时进行重启替换为备份节点或防止以写入完成的数据因磁盘故障而造成丢失的问题,并没有考虑未写入数据丢失的情况。
针对上述问题,本发明设计了一种基于持久化MQ的hbase容错方法,对HBASE内部进行简单改进,将HBASE的RPC写入信息在消息队列中进行保存。当集群重启时,从消息队列中进行获取数据并重新写入数据库,既保证了的HBASE的恢复速度,也可以解决未写入数据的丢失问题。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的基于持久化MQ的hbase容错方法。
本发明是通过如下技术方案实现的:
一种基于持久化MQ的hbase容错方法,其特征在于:通过在数据写入HBASE的阶段对其在MQ中进行备份,若HBASE未完成对写操作,对应的写请求便会保存在MQ中,当HBASE重启恢复时,从MQ系统消息队列中找到未完成操作的数据,重新进行写入即可。
本发明基于持久化MQ的hbase容错方法,包括以下步骤:
(1)首先搭建支持持久化的MQ系统;
(2)对HBASE核心部分进行修改,在zookeeper消息接口处进行拦截,对所有的写请求进行拦截,将其加入MQ系统中,之后正常进行HBASE的后续过程;
(3)拦截HBASE异步操作的后续过程,根据当前成功完成的操作内容,从MQ系统中删除之前的加入的请求;
(4)修改HBASE的启动部分,在HBASE的LOG SPLIT操作之后增加额外操作,启动新的进程,从MQ系统消息队列中获取未完成操作的数据,通过HBASE客户端重新写入,完成操作。
所述步骤(2)中,写请求包括PUT请求和DELETE请求。
本发明的有益效果是:该基于持久化MQ的hbase容错方法,解决了HBASE因宕机造成未写入数据丢失的问题,同时将写操作的恢复单独备份在MQ中,与LOG恢复方法分开缩短了HBASE集群在宕机等异常情况发生后的恢复时间,提高了生产环境下容错能力和可靠性,保障了HBASE数据的安全,减少了额外的运维成本。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
该基于持久化MQ的hbase容错方法,通过在数据写入HBASE的阶段对其在MQ中进行备份,若HBASE未完成对写操作,对应的写请求便会保存在MQ中,当HBASE重启恢复时,从MQ系统消息队列中找到未完成操作的数据,重新进行写入即可。
该基于持久化MQ的hbase容错方法,包括以下步骤:
(1)首先搭建支持持久化的MQ系统,可以是kafka、rocketmq、activemq等;
(2)对HBASE核心部分进行修改,在zookeeper消息接口处进行拦截,对所有的写请求进行拦截(包括PUT、DELETE),将其加入MQ系统中,之后正常进行HBASE的后续过程;
(3)拦截HBASE异步操作的后续过程,根据当前成功完成的操作内容,从MQ系统中删除之前的加入的请求;
(4)修改HBASE的启动部分,在HBASE的LOG SPLIT操作之后增加额外操作,启动新的进程,从MQ系统消息队列中获取未完成操作的数据,通过HBASE客户端重新写入,完成操作。
该基于持久化MQ的hbase容错方法,解决了HBASE因宕机造成的未写入数据丢失问题,同时将写操作的恢复单独备份在MQ中,与LOG恢复方法分开缩短了HBASE集群在宕机等异常情况发生后的恢复时间,提高了生产环境下容错能力和可靠性,保障了HBASE数据的安全,减少了额外的运维成本。

Claims (3)

1.一种基于持久化MQ的hbase容错方法,其特征在于:通过在数据写入HBASE的阶段对其在MQ中进行备份,若HBASE未完成对写操作,对应的写请求便会保存在MQ中,当HBASE重启恢复时,从MQ系统消息队列中找到未完成操作的数据,重新进行写入即可。
2.根据权利要求1所述的基于持久化MQ的hbase容错方法,其特征在于包括以下步骤:
(1)首先搭建支持持久化的MQ系统;
(2)对HBASE核心部分进行修改,在zookeeper消息接口处进行拦截,对所有的写请求进行拦截,将其加入MQ系统中,之后正常进行HBASE的后续过程;
(3)拦截HBASE异步操作的后续过程,根据当前成功完成的操作内容,从MQ系统中删除之前的加入的请求;
(4)修改HBASE的启动部分,在HBASE的LOG SPLIT操作之后增加额外操作,启动新的进程,从MQ系统消息队列中获取未完成操作的数据,通过HBASE客户端重新写入,完成操作。
3.根据权利要求2所述的基于持久化MQ的hbase容错方法,其特征在于:所述步骤(2)中,写请求包括PUT请求和DELETE请求。
CN201610593021.8A 2016-07-26 2016-07-26 一种基于持久化MQ的hbase容错方法 Pending CN106250432A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610593021.8A CN106250432A (zh) 2016-07-26 2016-07-26 一种基于持久化MQ的hbase容错方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610593021.8A CN106250432A (zh) 2016-07-26 2016-07-26 一种基于持久化MQ的hbase容错方法

Publications (1)

Publication Number Publication Date
CN106250432A true CN106250432A (zh) 2016-12-21

Family

ID=57603645

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610593021.8A Pending CN106250432A (zh) 2016-07-26 2016-07-26 一种基于持久化MQ的hbase容错方法

Country Status (1)

Country Link
CN (1) CN106250432A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110704244A (zh) * 2019-09-29 2020-01-17 苏州浪潮智能科技有限公司 一种磁盘离线处理方法、装置、设备及可读存储介质
CN112311812A (zh) * 2020-11-20 2021-02-02 北京百家科技集团有限公司 一种服务系统、方法、装置、计算机设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103379021A (zh) * 2012-04-24 2013-10-30 中兴通讯股份有限公司 实现分布式消息队列的方法及系统
CN103986694A (zh) * 2014-04-23 2014-08-13 清华大学 分布式计算机数据存储系统中多副本一致性的控制方法
CN104424283A (zh) * 2013-08-30 2015-03-18 阿里巴巴集团控股有限公司 一种数据迁移的系统和数据迁移的方法
CN104657502A (zh) * 2015-03-12 2015-05-27 浪潮集团有限公司 基于Hadoop对海量数据进行实时统计的系统和方法
CN104679888A (zh) * 2015-03-17 2015-06-03 浪潮集团有限公司 一种数据同步的装置及方法
CN104820670A (zh) * 2015-03-13 2015-08-05 国家电网公司 一种电力信息大数据的采集和存储方法
CN105608223A (zh) * 2016-01-12 2016-05-25 北京中交兴路车联网科技有限公司 针对kafka的Hbase数据库的入库方法和系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103379021A (zh) * 2012-04-24 2013-10-30 中兴通讯股份有限公司 实现分布式消息队列的方法及系统
CN104424283A (zh) * 2013-08-30 2015-03-18 阿里巴巴集团控股有限公司 一种数据迁移的系统和数据迁移的方法
CN103986694A (zh) * 2014-04-23 2014-08-13 清华大学 分布式计算机数据存储系统中多副本一致性的控制方法
CN104657502A (zh) * 2015-03-12 2015-05-27 浪潮集团有限公司 基于Hadoop对海量数据进行实时统计的系统和方法
CN104820670A (zh) * 2015-03-13 2015-08-05 国家电网公司 一种电力信息大数据的采集和存储方法
CN104679888A (zh) * 2015-03-17 2015-06-03 浪潮集团有限公司 一种数据同步的装置及方法
CN105608223A (zh) * 2016-01-12 2016-05-25 北京中交兴路车联网科技有限公司 针对kafka的Hbase数据库的入库方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CHEN ZHANG AND XUE LIU: ""HBaseMQ: A Distributed Message Queuing System on Clouds with HBase"", 《2013 PROCEEDINGS IEEE INFOCOM》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110704244A (zh) * 2019-09-29 2020-01-17 苏州浪潮智能科技有限公司 一种磁盘离线处理方法、装置、设备及可读存储介质
CN110704244B (zh) * 2019-09-29 2023-01-10 苏州浪潮智能科技有限公司 一种磁盘离线处理方法、装置、设备及可读存储介质
CN112311812A (zh) * 2020-11-20 2021-02-02 北京百家科技集团有限公司 一种服务系统、方法、装置、计算机设备及存储介质

Similar Documents

Publication Publication Date Title
US7627728B1 (en) System and method for efficient generation of application snapshots
US9098439B2 (en) Providing a fault tolerant system in a loosely-coupled cluster environment using application checkpoints and logs
US8874508B1 (en) Systems and methods for enabling database disaster recovery using replicated volumes
TWI554875B (zh) 基於資源存取模式預測、診斷應用程式故障並從應用程式故障恢復
US20110213753A1 (en) Systems and Methods for Managing Application Availability
US9098454B2 (en) Speculative recovery using storage snapshot in a clustered database
US10565071B2 (en) Smart data replication recoverer
US11221927B2 (en) Method for the implementation of a high performance, high resiliency and high availability dual controller storage system
WO2014206581A1 (en) Replication for on-line hot-standby database
CN104427002A (zh) 集群系统及用于在集群系统中提供服务可用性的方法
CN103516736A (zh) 分布式缓存系统的数据恢复方法及装置
WO2016061956A1 (zh) 分布式文件系统的数据处理方法及分布式文件系统
US7373542B2 (en) Automatic startup of a cluster system after occurrence of a recoverable error
US7823153B1 (en) System and method for detecting and logging in-line synchronization primitives in application program code
CN108469996A (zh) 一种基于自动快照的系统高可用方法
US9195528B1 (en) Systems and methods for managing failover clusters
WO2017014814A1 (en) Replicating memory volumes
CN111708488A (zh) 一种基于分布式内存盘的Ceph性能优化的方法和设备
CN106250432A (zh) 一种基于持久化MQ的hbase容错方法
CN103297264A (zh) 一种云平台故障恢复方法和系统
CN109582497A (zh) 一种基于动态数据增量快速应急启动方法
US11226875B2 (en) System halt event recovery
CN105871987A (zh) 数据写入的高可用系统及方法
CN115408039A (zh) 一种超融合系统的虚拟机系统升级不中断控制方法及系统
CN105988885A (zh) 基于补偿回滚的操作系统故障自恢复方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20161221