hbase安装在ubuntu虚拟机上,分配了20G的硬盘,但是数据保存到3千万的时候就报错说打不开文件了。机器重启之后报错说没有空间了。可是之前查看的时候数据才1.5G,为了弄清楚问题,了解了一下hbase的保存。

大部分空间被archive这个文件夹占用了,顺便了解一下所有文件夹的作用

1./.tmp
这个目录用来存储临时文件,当对表进行操作的时候,首先会将表移动到该目录下,然后再进行操作。

2./MasterProcWALs

暂时没找到具体的说明

3./WALs

被HLog实例管理的WAL文件。

4./archive

存储表的归档和快照,HBase 在做 Split或者 compact 操作完成之后,会将 HFile 移到archive 目录中,然后将之前的 hfile 删除掉,该目录由 HMaster 上的一个定时任务定期去清理。

5./corrupt

存储HBase做损坏的日志文件,一般都是为空的。

6./data

hbase 的核心目录,系统会预置两个 namespace 即:hbase和default。/data/hbase 存储了存储了 HBase 的 namespace、meta 两个系统级表。namespace 中存储了 HBase 中的所有 namespace 信息,包括预置的hbase 和 default。/data/default/ 存储所有用户数据表/data/default/表名。

7./hbase.id

存储集群唯一的 cluster id 号,是一个 uuid。

8./hbase.version

同样也是一个文件,存储集群的版本号,貌似是加密的,看不到,只能通过web-ui 才能正确显示出来。

9./oldWALs

当/WALs 中的HLog文件被持久化到存储文件中,不再需要日志文件时,它们会被移动到/oldWALs目录。

转载:https://www.jianshu.com/p/f82aafd7b381

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐