我在原生文件系统上使用HBase并创建了几个表。现在我配置了HDFS并希望HBase使用它。我开始使用Namenode和Datanode,但是我无法找到可以告诉HBase使用HDFS的设置。
我认为它可能会在重启时启动HDFS,所以我这样做了(stop-hbase + start-hbase),但我仍然能够看到我之前在本机文件系统上创建的表。
如何告诉HBase使用HDFS?
答案 0 :(得分:4)
在$ HBASE_HOME / conf / hbase-site.xml hbase.rootdir
中定义HBase持久存在的文件系统/目录。看到:
http://hbase.apache.org/book/config.files.html#hbase_default_configurations
我假设您要在伪分布式模式下配置HBase。如果是这样,请在hbase-site.xml
:
<configuration>
...
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
...
</configuration>
在这种情况下,HBase将使用HDFS中的 / hbase 目录。