之前在学习importTSV我们准备两份数据

这两份数据在导入hbase后,数据还是存在的,我们如果想要实现和hive中类似"剪切"的功能该怎么办?这种可以跨过先写入memstore,直接将数据转换为storefile文件。

我们来操作

第一步:转换为Hfile

执行语句

/opt/bigdata/hadoop-2.7.3/bin/yarn jar /opt/bigdata/hbase-1.2.1/lib/hbase-server-1.2.1.jar importtsv -Dimporttsv.columns=HBASE_ROW_KEY,f1:name,f2:age,f3:addr,f1:location -Dimporttsv.bulk.output=/testHfile stu_info_importtsv /importTSVData/stu_info_out

会生成一个新的目录

生成内容

/testHfile

这个时候,在

/hbase/data/default/stu_info_importtsv/1ba134e9102fdfb6a6c34c5785a69692

下我们可以看到f1,f2,f3

我们接下来只需要将/testHfile/f1下的文件移动到/hbase/data/default/stu_info_importtsv/1ba134e9102fdfb6a6c34c5785a69692/f1就可以了

第二步:将Hfile导入到hbase表中 completebulkload (hdfs上做了移动文件的操作)

执行语句

/opt/bigdata/hadoop-2.7.3/bin/yarn jar /opt/bigdata/hbase-1.2.1/lib/hbase-server-1.2.1.jar completebulkload /testHfile stu_info_importtsv

速度很快

发现在

/hbase/data/default/stu_info_importtsv/1ba134e9102fdfb6a6c34c5785a69692/f1

已经出现了

而在/testHfile/f1已经没有数据了

在hbase中看下数据

我们可以合并这两个文件吗?

可以使用

major_compact 'stu_info_importtsv'

查看下,发现已经合并了

我们再在网页上查看下

我们手动做一下split操作

split 'stu_info_importtsv' ,'202001061344'

发现已经手动切割了,上下限也有了

这边也是两个了

第二步像hive的load加载,IO消耗比较低,减少了client和节点之间的RPC通信

将批量的文件先转换为Hfile,可以批量导入hbase中(底层还是封装好的java程序)

bulkload方式还是可以用代码实现的

创建一个类

导入的包

编写Map

Run方法

编写执行方法

创建表

create 'student','info'

查看下数据,是否存在

/opt/bigdata/hadoop-2.7.3/bin/hdfs dfs -text /importTSVData/stu_info_out

运行代码,查看生成的数据

HDFS上也存在

导入hbase_HBase基础学习之bulkload了解相关推荐

  1. MySQL基础学习③数据库准备工作,导入官方employees数据库

    文章目录 1.前言 2.构建步骤 2.1 测试数据库文件下载 2.2 在test_db文件里打开cmd 2.3 导入成功 3. employees数据库 -- 职工雇佣信息 3.1 employees ...

  2. ue5新手零基础学习教程 Unreal Engine 5 Beginner Tutorial - UE5 Starter Course

    ue5新手零基础学习教程 Unreal Engine 5 Beginner Tutorial - UE5 Starter Course! 教程大小解压后:4.96G 语言:英语+中英文字幕(机译)时长 ...

  3. java基础学习整理(一)

    java基础学习整理(一) lesson1: D0s命令: 1.回到根目录,>cd \ 2.复制命令行下的内容,右击标记所要复制的内容,这样就已经复制好了,右击粘贴就可以了. 3.查看,设置环境 ...

  4. Python科学计算之Pandas基础学习

    Python科学计算之Pandas基础学习 导入Pandas 我们首先要导入我们的演出明星--Pandas. 这是导入Pandas的标准方式.显然,我们不希望每时每刻都在程序中写'pandas',但是 ...

  5. python 内存溢出能捕获吗_从0基础学习Python (19)[面向对象开发过程中的异常(捕获异常~相关)]...

    从0基础学习Python (Day19) 面向对象开发过程中的=>异常 什么是异常 ​ 当程序在运行过程中出现的一些错误,或者语法逻辑出现问题,解释器此时无法继续正常执行了,反而出现了一些错误的 ...

  6. 零基础学习hadoop到上手工作线路指导(中级篇)

    2019独角兽企业重金招聘Python工程师标准>>> 此篇是在零基础学习hadoop到上手工作线路指导(初级篇)的基础,一个继续总结. 五一假期:在写点内容,也算是总结.上面我们会 ...

  7. python基础代码的含义_Python基础学习篇

    原标题:Python基础学习篇 1.编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是unicode 字符串. 当然你也可以为源码文件指定不同的编码:# -*- codi ...

  8. Python3 基础学习笔记 C09【文件和异常】

    CSDN 课程推荐:<8小时Python零基础轻松入门>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python:轻松入门& ...

  9. Python3 基础学习笔记 C08 【类】

    CSDN 课程推荐:<8小时Python零基础轻松入门>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python:轻松入门& ...

最新文章

  1. spring依赖注入单元测试:expected single matching bean but found 2
  2. SVM-SMO算法python实现
  3. quartz(6)--集群
  4. Python入门之中文乱码
  5. php5 php4,自动实现php4和php5环境的切换......
  6. 轉Excel的一種簡單方法
  7. 5绘制收银台程序_进来学知识了:实操之C/C++的绘制
  8. 51Nod 1256 乘法逆元 Label:exgcd
  9. 第一次面试且失败的经历
  10. 国考地市级各题型分值分布(数量关系10题,其他题型同省级试题相同,共130题)——仅供参考
  11. 计算机作业动画flash,计算机动画设计:Flash
  12. MATLAB 信号处理仿真入门实验
  13. 计算机科学与专业大学排名,计算机科学与技术专业大学排名
  14. python实现指纹识别毕业论文_指纹识别系统设计毕业论文+开题报告+翻译及原文+设计源码...
  15. 错误Illegal invocation;使用jquery的ajax上传文件报错Illegal invocation
  16. 深度测评小程序跨端开发框架
  17. java 移动短代支付_运营商支付/短代支付的市场前景如何?
  18. 怎么在windows笔记本使用html,笔记本上快捷键用不了 笔记本电脑上音量键用不了了...
  19. js判断扑克牌同花顺
  20. 本体(Ontology)综述

热门文章

  1. xdf文件转换成pdf在线_在线PDFtodoc转换器智能转换PDF文件
  2. matlab 如何读数据文件,详解如何在python中读写和存储matlab的数据文件(*.mat)
  3. Jupyter Notebook命令行启动报错: DLL load failed
  4. 【并查集】noi2001食物链
  5. sessionStorage与clone方法在项目中的应用
  6. 归并排序Merge sort(转)
  7. CVPR 2021 论文/代码分类汇总!持续更新中!
  8. 八千字长文深度解读,迁移学习在强化学习中的应用及最新进展
  9. CVPR 2019 | Adobe提出新型超分辨率方法:用神经网络迁移参照图像纹理
  10. 南邮linux期末考试试题,南邮操作系统试卷及答案.doc