美文网首页Hase我爱编程
Hbae批量装载(Bulk Loading)

Hbae批量装载(Bulk Loading)

作者: 明明德撩码 | 来源:发表于2018-05-10 16:38 被阅读84次

    什么是bulk load

    HBase 有好几种方法将数据装载到表。最直接的方式即可以通过MapReduce任务,也可以通过普通客户端API。但是这都不是高效方法。
    批量装载特性采用 MapReduce 任务,将表数据输出为HBase的内部数据格式,然后可以将产生的存储文件直接装载到运行的集群中。批量装载比简单使用 HBase API 消耗更少的CPU和网络资源。

    使用BULKLoad加载海量数据样例,操作步骤如下

    • 第1步:建立student.tsv文件。
    • 第2步:编辑student.tsv文件,添加以下内容,并保存。


    • 第3步:创建一个目录


      image.png
    • 第4步:上传文件


    • 第5步:导入Hfile(1-4都是通过MapReduce 任务准备数据)

    export HBASE_HOME=/opt/sofewares/hbase/hbase-0.98.6-hadoop2
    export HADOOP_HOME=/opt/cdh5.3.6/hadoop-2.5.0-cdh5.3.6
     HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase mapredcp` ${HADOOP_HOME}/bin/hadoop jar $HBASE_HOME/lib/hbase-server-0.98.6-hadoop2.jar importtsv -Dimporttsv.columns=HBASE_ROW_KEY,info:name,info:age,info:sex,info:address,info:phone -Dimporttsv.bulk.output=hdfs://hadoop-senior.beifeng.com:8020/user/beifeng/hbase/hfileoutput student2 hdfs://hadoop-senior.beifeng.com:8020/user/beifeng/hbase/importtsv
    
    • 第6步:使用BulkLoad命令 completebulkload 完成Hfile数据装载
     HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase mapredcp` ${HADOOP_HOME}/bin/hadoop jar $HBASE_HOME/lib/hbase-server-0.98.6-hadoop2.jar completebulkload hdfs://hadoop-senior.beifeng.com:8020/user/beifeng/hbase/hfileoutput student2 
    

    相关文章

      网友评论

        本文标题:Hbae批量装载(Bulk Loading)

        本文链接:https://www.haomeiwen.com/subject/ueazrftx.html