CSV数据如下:
id | first_name | last_name |
---|---|---|
1 | shen | teng |
2 | ma | dongmei |
创建HBase表
- 登录到服务器
ssh root@xxx.xxx.xxx.xxx
- 切换到hbase用户
root> su - hbase
- 进入到Hbase Shell
hbase> hbase shell
- 创建表
hbase(main):001:0> create 'test_hbase', 'temp'
- 确认表是否创建成功
hbase(main):001.0> list
执行exit退出Hbase Shell
加载数据
放CSV数据到HDFS上
- 首先通过scp命令上传到集群上
snow>scp hbase.csv root@xxx.xxx.xxx.xxx:/home/hbase
- 放CSV数据到HDFS上
hbase> hdfs dfs -copyFromLocal hbase.csv /tmp
- 执行impporttsv命令加载数据到hbase表中
hbase> hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator=, -Dimporttsv.columns="HBASE_ROW_KEY,temp.first_name,temp.last_name" test_hbase /tmp/hbase.csv
- 确认数据是否加载成功
hbase(main):001:0> scan 'test_hbase'
注意:
- Importtsv命令会产生大量的日志,确保有足够的空间在/var/logs目录下,最好能够挂载到单个的目录下。