存储文件的时候需要指定存储的路径,这个路径是HDFS的路径。而不是哪个节点的某个目录存储文件的时候需要指定存储的路径,这个路径是hdfs的路径。而不是哪个节点的某个目录。存储文件的时候需要指定存储的路径,这个路径是HDFS的路径。而不是哪个节点的某个目录。1在hbase中创建一个表
例如:create 'test','info'
2配置环境
在hadoop的安装目录下找到hadoopenvsh配置文件,将一文件加入到此配置文件中
(export HBASE_HOME=/usr/hbase
export HADOOP_CLASSPATH=$HBASE_HOME/hbase-09412jar:$HBASE_HOME/hbase-09412-testjar:$HBASE_HOME/conf:${HBASE_HOME}/lib/zookeeper-345jar:${HBASE_HOME}/lib/guava-1102jar)
以上的配置文件可以不用配置,一但配置在启动hive时就会出错,需要另加配置。
然后拷贝jar包
将hbase的hbase-09112jar拷贝到haddoop的lib下,将hbase-09412testsjar copy到hadoop的lib下
将hbase的配置文件hbase-sitexml文件拷贝到hadoop的conf下
3重新启动hadoop
4将所需要的文件上传到hdfs上,我用的eclipse上传的,大家也可以用hadoop fs -put test3dat /application/logAnalyse/test/
5在你安装的hbase的lib目录下执行一下的命令
hbase orgapachehadoophbasemapreduceImportTsv - Dimporttsvcolumns=info:userid,HBASE_ROW_KEY,info:netid test2 /application/logAnalyse/test/test3dat
或是
hbase orgapachehadoophbasemapreduceImportTsv - Dimporttsvcolumns=HBASE_ROW_KEY,cf:c1,cf:c2 -Dimporttsvseparator=, test2 /application/logAnalyse/test/test3txt
这样你去hbase执行scan 'test2'几可以看到已经有数据了向hdfs上传文件正确的shell命令是hdfsdfs-put。根据相关公开信息查询显示:向HDFS中上传任意文本文件,如果指定的文件在HDFS中已经存在,由用户指定是追加到原有文件末尾还是覆盖原有的文件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)