Heim  >  Artikel  >  Datenbank  >  HBase在系统重启后丢失数据

HBase在系统重启后丢失数据

WBOY
WBOYOriginal
2016-06-07 15:28:531126Durchsuche

最近在学习 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 在写入数据的时候出现问题,而既然能有一部分写入了,很可能是另一部分文件无法写入,换句话说就是权限问题。马上查看了我设置的数据文件夹权限,果然部分不可写入。。。赶紧改了权限,果真是,只要权限设好,便是晴天。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn