背景
由于新需求需要新建hbase表,将hdfs中给定的目录下的文件导入到hbase表中,一种格式的文件(多种格式可能需要合并吧,目前没有这个需求,但是也可以分多次导入到hbase中吧,除非rowkey的构成需要多个文件,目前没有这种需求)。
下面总结一下,写这个工具的过程和遇到的一些坑。
1.调研有什么样的方式导入
网上查了有很多种方式,比如数据少可以直接读取插入,或者bulkload,在这不介绍没中方式的优缺点,详细的可以看
https://www.ibm.com/developerworks/cn/opensource/os-cn-data-import/index.html
介绍了导入到hbase的几种方式
最后选择的是bulkload的方式,下面介绍一下代码和过程
2.格式化原始数据
1. 数据获取
首先是原始数据的获取,我们是从hdfs中直接获取的文件,文件是采用deflate压缩的,但是我们不需要自己去解压,java api还是非常好用,会根据压缩的格式获取解压的方法具体代码如下:
读取压缩的