>  기사  >  데이터 베이스  >  HBase在系统重启后丢失数据

HBase在系统重启后丢失数据

WBOY
WBOY원래의
2016-06-07 15:28:531091검색

最近在学习 HBase 的一些东西,发现了一些奇怪的现象,我的 HBase 下的表建好后,重启 linux,再启动 HBase 相关服务后,奇怪的事情发生了。 重启之前我建了一张有数个列族的blogtable表,现在我用list命令查看,发现表还在的。但是当我scan ‘blogtable’的

最近在学习 HBase 的一些东西,发现了一些奇怪的现象,我的 HBase 下的表建好后,重启 linux,再启动 HBase 相关服务后,奇怪的事情发生了。

重启之前我建了一张有数个列族的blogtable表,现在我用list命令查看,发现表还在的。但是当我scan ‘blogtable’的时候发现提示说没有这个表。。。

实际上 hbase 中是有一个 hbase.rootdir 变量的。默认 <code class="varname">hbase.rootdir 是指向 <code class="filename">/tmp/hbase-${user.name} ,也就说你会在重启后丢失数据(重启的时候操作系统会清理<code class="filename">/tmp目录)则数据会丢失。但是我在配置 hbase 的时候明明有配置它,按理说数据不应该丢失。实际上嘛,数据好像也不是完全没有,因为 list 命令还可以看到 blogtable 存在过的痕迹。

综上所述我得出了结论,很可能是 hbase 在写入数据的时候出现问题,而既然能有一部分写入了,很可能是另一部分文件无法写入,换句话说就是权限问题。马上查看了我设置的数据文件夹权限,果然部分不可写入。。。赶紧改了权限,果真是,只要权限设好,便是晴天。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.