hbase的bulk loading代码和执行方法

bulk loading的优缺点这里就不再赘述,在本博客的其他文章已经进行过详细的分析:

 Hbase Bulk Loading与HBase API方式分析和对比


bulk loading的过程主要分为两部分,一部分为数据生成,一部分为数据加载。

我们先来看看执行bulk loading的执行过程,然后再分析代码。下面是一个执行bulk loading的完整shell脚本:

CLASSPATH=./bulkload.jar:/etc/yarn1/conf:/etc/hdfs1/conf:/etc/hbase/conf:/usr/lib/hadoop/lib/*:/usr/lib/hadoop/.//*:/usr/lib/hadoop-hdfs/./:/usr/lib/hadoop-hdfs/lib/*:/usr/lib/hadoop-hdfs/.//*:/usr/lib/hadoop-yarn/lib/*:/usr/lib/hadoop-yarn/.//*:/usr/lib/hadoop-mapreduce/lib/*:/usr/lib/hadoop-mapreduce/.//*:/contrib/capacity-scheduler/*.jar
TABLE_NAME=CZSJ_hbase
RECORD_COUNT_FILE=/tmp/data1
RECORDS_PER_REGION=/tmp/output

echo "Start bulk load at `date`"
start=`date +%s`

echo "create hbase table=========="
hbase shell << EOF
    disable 'CZSJ_hbase'
    drop 'CZSJ_hbase'
    create 'CZSJ_hbase', 'cf', {SPLITS_FILE => 'region_start_row_info'}
EOF

jars=`ls ./lib`
for jar in $jars
do
    CLASSPATH="$CLASSPATH:./lib/$jar"
done

CLASSPATH=/usr/lib/hadoop/conf:/usr/lib/hbase/conf:$CLASSPATH
java -cp $CLASSPATH com.learn.hbasebulkload.HFileGenerator $TABLE_NAME $RECORD_COUNT_FILE $RECORDS_PER_REGION
java -cp $CLASSPATH com.learn.hbasebulkload.HFileLoader $TABLE_NAME $RECORDS_PER_REGION
hdfs dfs -rmr $RECORDS_PER_REGI
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值