A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1,bulkloading 批量导入工具

     1.1,环境准备

           1)新建文本数据  music1.txt,music2.txt

                 music1.txt:

                 编号(rowkey)    歌名(song)   歌手(singer)   歌手性别(gender)     节奏 (ryghme)      客户端(terminal)

                 1_song1_2016      song1                 singer1                  man                               slow       ios

                 2_song1_2017      song2                 singer2                  man                               slow       pc

            2)新建表 musicrecored 表(播放记录表)

                 列簇只有一个 info

            3)新建表 namelist 表(歌曲播放统计表)

                 列簇只有一个 details

      1.2,hbase 集成到 hadoop 中(集群每一个节点都需要配置)

            1)将 hbase 核心配置文件 hbase-site.xml 添加到 hadoop主目录/etc/hadoop/下

            2)将 hbase 的库(hbase主目录下lib目录)配置到 hadoop 的环境(hadoop-env.sh)中

                  export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/home/hduser/hbase-1.2.0/lib/*

            3)利用新建的 musicrecored 表测试集成是否成功

                  在 hbase 主目录/lib/中有 hbase-server***.jar 内有 hbase 提供的工具类 rowcounter 主要用于测试利用 mapreduce 统计 hbase 表中记录总数,命令如下:

                  $>hadoop  jar  hbase主目录/lib/hbase-server*.jar   rowcounter   musicrecord (表名)

       1.3,概念

             bulkloading 批量导入分成两部完成的:

             第一部分将需要导入的文本转化为 HFILE(分布式文件)格式的文件;

             第二部分将 HFILE 文件关联到 hbase 的表

       1.4,导入数据过程

             1)hdfs 上文本数据生成 HFILE 数据文件(importtsv)

                   语法: $>hadoop  jar  hbase-server*.jar  importtsv  -D  importtsv.bulk.output=HFILE位置  -D  importtsv.columns=HBASE_ROW_KEY,info:song,info:singer,info:gender,info:ryghme,info:terminal  表名  hdfs输入文件路径

                   样例:$>hadoop  jar  hbase-server*.jar  importtsv  -D  importtsv.bulk.output=/output/m1  -D  importtsv.columns=HBASE_ROW_KEY,info:song,info:singer,info:gender,info:ryghme,info:terminal  musicrecord  /input/music.txt

             2)将生成的 HFILE 文件与 hbase 库表关联(completebulkload)   

                   语法: $>hadoop  jar  hbase-server*.jar  completebulkload  HFILE位置  表名  

                   样例:$>hadoop  jar  hbase-server*.jar  completebulkload  /output/m1/  musicrecord


1 个回复

正序浏览
奈斯
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马