工作中可能会有对HBase的复杂操作,我们现在对HBase的操作太简单了。复杂操作一般用HBaseScan操作,还有用框架对HBase进行复杂操作,iparler,sharker。
我们说HBase是数据库,数据库是用来查询数据的,那么我们的数据怎么进入HBase呢,可以通过put,但是put有点儿慢,通常我们的数据都是位于hdfs中,我们期望
把hdfs中的数据导入到HBase中,进行查询,下面就讲如何把HDFS中的数据导入到HBase,我们使用m/r导入,这也就是我们说的批量导入-BatchImport

代码在PPT32、33、34--以电信日志为例做的。

HBase表的创建:只有一个列族cf(共10多列,都放在这一个列簇中 )
create 'wlan_log','cf'
如何定义行键,在我们的HBase设计中,行键的设计是个关键,如何设计行键,要考虑一个因素,我们对数据的查询如果只是按行查询的话,我们只能依赖于行键,
我们经常要查询的字段,一定要设计到行键中,我们这里经常用到的字段 是,手机号和时间,所以我们要把这两列放到我们的行键中。如何放呢?把他俩连到一起就行了,所以这里是手机号(msidn)和时间连在一起,我们中间加一个冒号隔开。msidn:yyyyMMddHHmmss

接下来看代码(执行代码之前,需要先创建表):
代码自己自己看吧,有几个要点,注意一下:
1.以前的reduce继承的是Reducer类,现在继承的是TableReducer类,这个类是属于HBase中的一个类,我们就是通过这个类把我们在reduce拿到
的数据写入到HBase中
2.在main函数中,需要设置Zookeeper,需要设置表名,还需要设置超时
configuration.set()
configuration.set()
configuration.set()
2.在设置job的输出类型时:job.setOutputFormatClass(TableOutputFormat.class);
以前是:job.setOutputFormatClass(TextOutputFormat.class);

转载于:https://www.cnblogs.com/mrxiaohe/p/6512482.html

Hbase笔记:批量导入相关推荐

  1. 幕布笔记批量导入到anki

    幕布是款亲测好用的大纲笔记,而anki是款flash card工具. 大段时间可将笔记整理到幕布,碎片时间则可以抽查记忆. 功能:支持三层大纲制作,比如 以下代码可直接使用 import org.js ...

  2. HBase结合MapReduce批量导入

    Hbase是Hadoop生态体系配置的数据库,我们可以通过HTable api中的put方法向Hbase数据库中插入数据,但是由于put效率太低,不能批量插入大量的数据,文本将详细介绍如何通过MapR ...

  3. ubuntu导入python的包_在ubuntu环境下怎么利用python将数据批量导入数据hbase

    斯蒂芬大帝 能够单条导入就能够批量导入配置 thriftpython使用的包 thrift个人使用的python 编译器是pycharm community edition. 在工程中设置中,找到pr ...

  4. java hdfs导入hbase_使用BulkLoad批量导入数据到HBase中

    说明 BulkLoad将数据批量导入HBase中.支持通过命令行和API两种操作方式. 命令行包含如下两个步骤: ImportTsv CompleteBulkLoad 准备工作 在HDFS创建临时目录 ...

  5. MySQL深入学习——第六章 查询优化批量导入操作学习笔记

    一.SQL优化-优化实战 1.尽量全值匹配 CREATE TABLE `staffs`(id int primary key auto_increment,name varchar(24) not n ...

  6. HBase应用:数据批量导入说明

    一.概述 HBase 本身提供了很多种数据导入的方式,目前常用的有三种常用方式: 使用 HBase 原生 Client API . 使用 HBase 提供的 TableOutputFormat,原理是 ...

  7. excel宏转txt替换强制换行符_三个步骤学会用EXCEL批量导入anki题库

    Anki真的是个好用到不想推荐给朋友的软件,本人最近准备刷个新题库,找了一上午找不到原来教我EXCEL导入anki的网页,为了防止我自己过段时间又忘了应该怎么导入,我写了这个教程,写都写了,就顺手发出 ...

  8. HBase笔记整理(二)

    [TOC] HBase笔记整理(二) 逻辑结构 RowKey第一位ColumnFamilyColumnQuiauervalue(TimeStamps)Cell 物理结构 HMaster -----&g ...

  9. c# mysql 批量导入_C#:MySql批量数量导入

    现在对数据库(以MySql为例)的操作大多会封装成一个类,如下例所示: namespace TESTDATABASE { public enum DBStatusCode { ALL_OK, MySq ...

  10. HBase数据大批量导入方式总结和对比

    HBase数据导入 1. 背景 在实际生产中,海量数据一般都不是直接存储在HBase中,这时候就需要一个数据导入到HBase的步骤 上一篇博客讲述了可以通过java api的方式或者shell 客户端 ...

最新文章

  1. python大一知识点串讲_python-前20天的着重知识点
  2. QT的QMessageAuthenticationCode类的使用
  3. vmware安装minimal centos报错/etc/rc5.d/s99local : line
  4. gentoo实体机安装显卡驱动和解决多媒体播放问题
  5. Codeforces 510 E. Fox And Dinner
  6. 【图像配准】基于matlab GUI光流场模型图像配准【含Matlab源码 831期】
  7. c语言转化音乐格式转换器安卓版,音频提取格式转换
  8. SPN线性密码分析【附code】
  9. 世界药林:首款PRCP抑制剂奥拉帕利已经批准4种适应症
  10. c语言编计分秒时的程序,用c语言编写程序,用于c51单片机四位共阴数码管显示,显示分秒的计时器。...
  11. android车载无线充apple,绿联车载无线充电器,手机支架款安卓苹果双快充模式
  12. eclipse 是用来写客户端的,MyEclipse 是用来写服务器端的,谐音记忆法,My 买,买服务器这样就好记了。
  13. Power BI数据建模
  14. 学51单片机,总是感觉学不会该怎么办呢?
  15. 编译原理大作业-PL0语言编译器
  16. 『津津乐道播客』#134. 不是纹个皮皮虾你就能叫黑涩会了(嘉宾:索大)
  17. python中一个函数调用另一个函数中的变量
  18. 迅为iMX6UL开发板多路串口开发平台接口详解
  19. C语言典型代码---SSDP设备发现
  20. 上行受阻,主流币种陷高位震荡——陀螺财经周报第九期

热门文章

  1. 如何在 Mac 上自定 Safari 浏览器窗口?
  2. 如何在 Mac 上使用剪贴板?
  3. Mac新手使用技巧——设置Finder(访达)快捷键
  4. JetBrains 快捷键技巧:IntelliJ IDEA 中,你完全不需要鼠标的 10 种情况
  5. Odoo与ERP传统软件有什么不同?
  6. LINUX 下安装git
  7. [HDU 1003] Max Sum
  8. 树莓派(RespberryPi)安装手记
  9. Java JDBC中的Statement和PreparedStatement
  10. 不是我吹,这款神仙 IDEA 插件你真没用过!