zoukankan      html  css  js  c++  java
  • BulkLoad加载本地文件到HBase表

    BulkLoad加载文件到HBase表

    1、功能

    将本地数据导入到HBase中

    2、原理

    BulkLoad会将tsv/csv格式的文件编程hfile文件,然后再进行数据的导入,这样可以避免大量数据导入时造成的集群写入压力过大。

    1、tsv格式的文件:字段之间以制表符	分割
    2、csv格式的文件:字段之间以逗号,分割

    3、作用

    1. 减小HBase集群插入数据的压力
    2. 提高了Job运行的速度,降低了Job执行时间

    4、案例

    Step1、配置临时环境变量

    $ export HBASE_HOME=/opt/modules/cdh/hbase-0.98.6-cdh5.3.6/
    $ export HADOOP_HOME=/opt/modules/cdh/hadoop-2.5.0-cdh5.3.6
    $ export HADOOP_CLASSPATH=`${HBASE_HOME}/bin/hbase mapredcp`

    Step2、创建一个新的HBase表

    $ bin/hbase shell
    
    hbase(main):001:0> create 'fruit_bulkload','info'

    Step3、将tsv/csv文件转化为HFile (别忘了要确保你的fruit格式的文件fruit.tsv在input目录下)

    $ /opt/modules/cdh/hadoop-2.5.0-cdh5.3.6/bin/yarn jar 
    
    /opt/modules/cdh/hbase-0.98.6-cdh5.3.6/lib/hbase-server-0.98.6-cdh5.3.6.jar importtsv 
    
    -Dimporttsv.bulk.output=/output_file 
    
    -Dimporttsv.columns=HBASE_ROW_KEY,info:name,info:color 
     
    fruit hdfs://hadoop-senior01.itguigu.com:8020/input_fruit

    Step4、把HFile导入到HBase表fruit_bulkload

    上一步完成之后,你会发现在HDFS的根目录下出现了一个output_file文件夹,里面存放的就是HFile文件,紧接着:把HFile导入到HBase表fruit_bulkload

    $ /opt/modules/cdh/hadoop-2.5.0-cdh5.3.6/bin/yarn jar 
    
    /opt/modules/cdh/hbase-0.98.6-cdh5.3.6/lib/hbase-server-0.98.6-cdh5.3.6.jar 
    
    completebulkload /output_file fruit_bulkload

    Step5、查看使用bulkLoad方式导入的数据

    hbase(main):001:0> scan ‘fruit_bulkload’
    

      

  • 相关阅读:
    Python第三方库之openpyxl(3)
    python的openpyxl的使用笔记
    openpyxl模块(excel操作)
    openpyxl
    OpenPyXl的使用
    python操作Excel模块openpyxl
    re,xpath,BeautifulSoup三种方法爬取古诗词网上诗歌
    python爬虫demo01
    ffmpeg录制报错
    解决ffmpeg执行报错“ffmpeg: error while loading shared libraries: libavdevice.so.58: cannot open shared object file: No such file or directory”的问题
  • 原文地址:https://www.cnblogs.com/alexzhang92/p/10938820.html
Copyright © 2011-2022 走看看