❶ 如何將hbase表的數據導出到本地文件中
1 HBase本身提供的介面
其調用形式為:
1)導入
./hbase org.apache.hadoop.hbase.maprece.Driver import 表名 數據文件位置
其中數據文件位置可為本地文件目錄,也可以分布式文件系統hdfs的路徑。
當其為前者時,直接指定即可,也可以加前綴file:///
而當其偉後者時,必須明確指明hdfs的路徑,例如hdfs://mymaster:9000/path
2)導出
./hbase org.apache.hadoop.hbase.maprece.Driver export 表名 數據文件位置
同上,其中數據文件位置可為本地文件目錄,也可以分布式文件系統hdfs的路徑。
另外,該介面類還提供了一些其它的方法,例如表與表之間的數據拷貝,導入tsv文件等,可回車鍵查看
2 hadoop提供的工具(hadoop tool interface)
使用該工具的話,需要首先配置hadoop-env.sh,否則在執行時會提示缺少jar包或者class文件。
1)配置
切換到hadoop安裝目錄下,
vim hadoop-env.sh,加以下語句
export HADOOP_CLASSPATH="hbasejar包路徑:zookeeper的jar包路徑:hbase的config目錄"
2)使用
導入:
hadoop jar /../hbase/hbase-*.jar import mytest /export/mybakup
導出:
hadoop jar /../hbase/hbase-*.jar import mytest /import/mybackup
直接將數據導出到hdfs目錄中,當不指定file前綴時。
另外:
export,fs的參數為hdfs上的路徑時,該路徑必須不能已經存在,否則會報錯。
import的表必須是hbase中已經創建好的,否則會報錯。
❷ HBase配置文件詳解(一)
HBase使用與Hadoop相同的配置系統,所有配置文件都位於 conf/ 目錄中,需要保持群集中每個節點的同步。
在對HBase進行配置,即編輯hbase-site.xml文件時,確保語法正確且XML格式良好。我們可以使用 xmllint 檢查XML格式是否正確,默認情況下, xmllint 重新流動並將XML列印到標准輸出。如果檢查格式是否正確,並且只在存在錯誤時才列印輸出,可以使用以下命令:
當在完全分布式環境下運行HBase時,在對HBase配置文件進行修改後,確保將 /conf/ 目錄下的配置文件同步到集群其他節點上,可以使用 rsync 、 scp 或其他安全機制將配置文件復制到其他節點上。(對於大多數配置,伺服器需要重新啟動配置才能生效)