一种防止HBase中数据误删除的方法及系统的制作方法_2

文档序号:9489686阅读:来源:国知局
文件,并将误删除的所述数据文件移动到Hbase在HDFS中相对应的数据目录下;
[0062]调用所述Hbase的元数据修复命令对元数据进行修复。
[0063]其中,当要将误删除的数据文件进行恢复时,可以直接将存储文件中对应的数据文件移动到数据目录中,直接利用元数据修复命令,对数据进行修复。例如Hbase的表数据被删除时,将HDFS存储文件的目录下的Hbase表数据移动到Hbase的表数据存储区,调用Hbase修复元数据的命令对元数据进行修复。
[0064]即上述方法的具体实施过程可以是:
[0065]指定一个HDFS的存储文件也是存储目录,用于存储被用户删除的Hbase的表数据;
[0066]在crontab配置文件中添加定时任务,每间隔一定时间查看Hbase在HDFS目录下的“archive”文件夹也即缓存文件夹是否有新增文件;如果有新增文件,定时任务会将新增文件移动到用户指定的存储目录。
[0067]如果用户发现有Hbase表误删除,可以到指定目录下将表数据移动到Hbase在HDFS的相应数据目录下,然后调用Hbase的元数据修复命令对元数据进行修复。
[0068]即利用Iinux下的crontab命令建定时启动任务(5分钟以内),定期扫描Hbase数据库在HDFS目录下的“archive”文件夹,如果发现有新增文件,则将新增文件移动到HDFS的指定目录即存储文件中。当Hbase用户发现误删表之后,可以在存储文件中目录下找回丢失的数据,将丢失的数据移动到Hbase的数据存储路径下,然后调用Hbase的元数据修复命令对元数据进行修复。
[0069]基于上述任意技术方案,该方法还可以包括:
[0070]当所述存储文件中存储的数据文件的存储空间大于阈值时,提醒用户对所述存储文件中存储的数据文件进行清理。
[0071 ] 其中,考虑到随着时间的积累,如果Hbase删除的数据过多,HDFS的指定目录中的数据就会很大,需要定期的清理。阈值的设定可以由用户根据实际情况进行确定。
[0072]这里可以不再设置定时任务,因为如果设置定时清理任务,有可能会发生刚被删除的表移动到指定目录又紧着接被定时清理的情况。
[0073]清理的过程由用户确定需要删除的数据文件进行彻底删除,或者是按照时间来确定需要进行清理的数据文件。因为,时间最早的数据文件说明被删除的时间已经很长了,仍没有发现是误删除的数据文件,因此,很大可能就是需要进行删除数据文件。这里也可以由用户结合自身的实际情况确定出清理的方案。
[0074]这里不对提醒的具体形式进行限定,可以是语音提醒,也可以是灯光提醒,也可以是显示提醒等。
[0075]基于上述技术方案,本发明实施例提供的防止HBase中数据误删除的方法,利用Iinux下的crontab命令建定时启动任务(5分钟以内),定期扫描Hbase数据库在HDFS目录下的“archive”文件夹,如果发现有新增文件,则将新增文件移动到HDFS的指定目录即存储文件中。当Hbase用户发现误删表之后,可以在存储文件中目录下找回丢失的数据,将丢失的数据移动到Hbase的数据存储路径下,然后调用Hbase的元数据修复命令对元数据进行修复,并且定期对存储文件进行清理,防止存储文件占用空间大,影响正常空间的分配和使用。该方法能够防止HBase中数据误删除,大大减少HBase中数据被删除后技术人员的工作量。
[0076]本发明实施例提供了防止HBase中数据误删除的方法,通过上述方法能够防止HBase中数据误删除。
[0077]下面对本发明实施例提供的防止HBase中数据误删除的系统进行介绍,下文描述的防止HBase中数据误删除的系统与上文描述的防止HBase中数据误删除的方法可相互对应参照。
[0078]请参考图2,图2为本发明实施例所提供的防止HBase中数据误删除的系统的结构框图;该系统可以包括:
[0079]存储模块100,用于根据用户操作在HDFS目录下设定存储被删除的数据文件的存储文件;
[0080]监控模块200,用于设定监控的时间周期,按照所述时间周期,监控Hbase在HDFS目录下的缓存文件夹是否有新增的数据文件;
[0081]若有,则触发存储模块300将新增的所述数据文件存储到所述存储文件下。
[0082]可选的,所述监控模块200包括:
[0083]设定单元,用于在定时启动脚本中添加扫描监控缓存文件夹程序,并设定定时启动所述扫描监控缓存文件夹程序的时间周期;
[0084]监控单元,用于调用所述启动脚本,按照所述时间周期扫描所述缓存文件夹是否有新增的数据文件。
[0085]可选的,所述存储模块100具体用于:
[0086]将新增的所述数据文件移动到所述存储文件下。
[0087]其中,请参考图3,当用户出现HBase中数据误删除时,还包括:
[0088]移动模块400,用于在所述存储文件中确定误删除的数据文件,并将误删除的所述数据文件移动到Hbase在HDFS中相对应的数据目录下;
[0089]修复模块500,用于调用所述Hbase的元数据修复命令对元数据进行修复。
[0090]基于上述任意技术方案,请参考图4,该系统还可以包括:
[0091]提醒模块600,用于当所述存储文件中存储的数据文件的存储空间大于阈值时,提醒用户对所述存储文件中存储的数据文件进行清理。
[0092]说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0093]专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0094]结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程R0M、电可擦除可编程R0M、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
[0095]以上对本发明所提供的防止HBase中数据误删除的方法及系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
【主权项】
1.一种防止HBase中数据误删除的方法,其特征在于,包括: 根据用户操作在HDFS目录下设定存储被删除的数据文件的存储文件; 设定监控的时间周期,按照所述时间周期,监控Hbase在HDFS目录下的缓存文件夹是否有新增的数据文件; 若有,则将新增的所述数据文件存储到所述存储文件下。2.如权利要求1所述的方法,其特征在于,所述设定监控的时间周期,按照所述时间周期,监控Hbase在HDFS目录下的缓存文件夹是否有新增的数据文件,包括: 在定时启动脚本中添加扫描监控缓存文件夹程序,并设定定时启动所述扫描监控缓存文件夹程序的时间周期; 调用所述启动脚本,按照所述时间周期扫描所述缓存文件夹是否有新增的数据文件。3.如权利要求2所述的方法,其特征在于,所述将新增的所述数据文件存储到所述存储文件下包括: 将新增的所述数据文件移动到所述存储文件下。4.如权利要求3所述的方法,其特征在于,当用户出现HBase中数据误删除时,还包括: 在所述存储文件中确定误删除的数据文件,并将误删除的所述数据文件移动到Hbase在HDFS中相对应的数据目录下; 调用所述Hbase的元数据修复命令对元数据进行修复。5.如权利要求1至4任一项所述的方法,其特征在于,还包括: 当所述存储文件中存储的数据文件的存储空间大于阈值时,提醒用户对所述存储文件中存储的数据文件进行清理。6.一种防止HBase中数据误删除的系统,其特征在于,包括: 存储模块,用于根据用户操作在HDFS目录下设定存储被删除的数据文件的存储文件;监控模块,用于设定监控的时间周期,按照所述时间周期,监控Hbase在HDFS目录下的缓存文件夹是否有新增的数据文件; 若有,则触发存储模块将新增的所述数据文件存储到所述存储文件下。7.如权利要求6所述的系统,其特征在于,所述监控模块包括: 设定单元,用于在定时启动脚本中添加扫描监控缓存文件夹程序,并设定定时启动所述扫描监控缓存文件夹程序的时间周期; 监控单元,用于调用所述启动脚本,按照所述时间周期扫描所述缓存文件夹是否有新增的数据文件。8.如权利要求7所述的系统,其特征在于,所述存储模块具体用于: 将新增的所述数据文件移动到所述存储文件下。9.如权利要求8所述的系统,其特征在于,当用户出现HBase中数据误删除时,还包括: 移动模块,用于在所述存储文件中确定误删除的数据文件,并将误删除的所述数据文件移动到Hbase在HDFS中相对应的数据目录下; 修复模块,用于调用所述Hbase的元数据修复命令对元数据进行修复。10.如权利要求6至9任一项所述的系统,其特征在于,还包括: 提醒模块,用于当所述存储文件中存储的数据文件的存储空间大于阈值时,提醒用户对所述存储文件中存储的数据文件进行清理。
【专利摘要】本发明公开了一种防止HBase中数据误删除的方法,包括:根据用户操作在HDFS目录下设定存储被删除的数据文件的存储文件;设定监控的时间周期,按照所述时间周期,监控Hbase在HDFS目录下的缓存文件夹是否有新增的数据文件;若是,则将新增的所述数据文件存储到所述存储文件下;该方法能够防止HBase中数据误删除;本发明还公开了一种防止HBase中数据误删除的系统。
【IPC分类】G06F17/30, G06F21/64
【公开号】CN105243340
【申请号】CN201510796233
【发明人】房体盈
【申请人】浪潮(北京)电子信息产业有限公司
【公开日】2016年1月13日
【申请日】2015年11月18日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1