hbase中自带一些数据导入、导出工具

1. ImportTsv直接导入

1.1 hbase中建表

create 'testtable4','cf1','cf2'

1.2 准备数据文件data.txt,上传到hdfs

1,tom,m
2,jack,m
3,lili,f
hadoop fs -put data.txt /user/dw_hbkal/przhang

1.3 使用命令导入

 bin/hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator=',' -Dimporttsv.columns=HBASE_ROW_KEY,cf1,cf2 testtable4 /user/dw_hbkal/przhang/data.txt

1.4 查看hbase数据

hbase(main):069:0> scan 'testtable4'
ROW COLUMN+CELL
1 column=cf1:, timestamp=1533708793917, value=tom
1 column=cf2:, timestamp=1533708793917, value=m
2 column=cf1:, timestamp=1533708793917, value=jack
2 column=cf2:, timestamp=1533708793917, value=m
3 column=cf1:, timestamp=1533708793917, value=lili
3 column=cf2:, timestamp=1533708793917, value=f
3 row(s) in 0.0300 seconds

2. ImportTsv先生成HFile,然后增量导入

2.1 创建数据文件data2.txt,并上传hdfs

1,tom,f
5,jack2,m
6,lili2,m
hadoop fs -put data2.txt /user/dw_hbkal/przhang

2.2 生成HFile

bin/hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator=',' -Dimporttsv.columns=HBASE_ROW_KEY,cf1,cf2 -Dimporttsv.bulk.output=/user/dw_hbkal/przhang/hfile_tmp testtable4 /user/dw_hbkal/przhang/data2.txt

2.3 将HFile文件导入HBase,实际是执行hdfs mv 操作

bin/hbase org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles /user/dw_hbkal/przhang/hfile_tmp testtable4

2.4 查看hdfs上cf1的hfile文件,时间戳晚一点的为生成的hfile文件

hadoop fs -ls /hbase/data/default/testtable4/ebaa89a06f73a0ecdc15b53bd88bc3a4/cf1
Found 2 items
-rwxrwxrwx 3 hdfs bdos 1170 2018-08-08 14:23 /hbase/data/default/testtable4/ebaa89a06f73a0ecdc15b53bd88bc3a4/cf1/0e80f632a7214755a8e84e9fafea36eb_SeqId_6_
-rw-r--r-- 3 hbase hbase 1065 2018-08-08 14:45 /hbase/data/default/testtable4/ebaa89a06f73a0ecdc15b53bd88bc3a4/cf1/347598bdf4e34b51909b6965fed11a99

2.5 查看hbase

hbase(main):070:0> scan 'testtable4'
ROW COLUMN+CELL
1 column=cf1:, timestamp=1533709383463, value=tom
1 column=cf2:, timestamp=1533709383463, value=f
2 column=cf1:, timestamp=1533708793917, value=jack
2 column=cf2:, timestamp=1533708793917, value=m
3 column=cf1:, timestamp=1533708793917, value=lili
3 column=cf2:, timestamp=1533708793917, value=f
5 column=cf1:, timestamp=1533709383463, value=jack2
5 column=cf2:, timestamp=1533709383463, value=m
6 column=cf1:, timestamp=1533709383463, value=lili2
6 column=cf2:, timestamp=1533709383463, value=m
5 row(s) in 0.0260 seconds

3. Export数据导出至HDFS

bin/hbase org.apache.hadoop.hbase.mapreduce.Export testtable /user/dw_hbkal/przhang/hbaseexport/testdata //testtable表数据导出到一个hdfs路径,可以设置导出的版本数量、起始时间

4. Import数据从HDFS中导入

hbase org.apache.hadoop.hbase.mapreduce.Import testtable /user/dw_hbkal/przhang/hbaseexport/testdata // hdfs数据导入testtable,导入之前test要先创建

5. CopyTable表复制

hbase org.apache.hadoop.hbase.mapreduce.CopyTable --new.name=test3 test //test中的数据复制到test3表中,复制只会考虑最新的数据

HBase数据导入导出工具的更多相关文章

  1. HData——ETL 数据导入/导出工具

    HData是一个异构的ETL数据导入/导出工具,致力于使用一个工具解决不同数据源(JDBC.Hive.HDFS.HBase.MongoDB.FTP.Http.CSV.Excel.Kafka等)之间数据 ...

  2. pt-archiver(数据导入导出工具)

    数据导入导出工具pt-archiver 工具可以将MySQL的表数据导出到一个新表或者一个文件,也有自己的应用场景,比如数据归档,删除数据,数据合并等. 具体用法: pt-archiver [OPTI ...

  3. MySQL多线程数据导入导出工具Mydumper

    http://afei2.sinaapp.com/?p=456 今天在线上使用mysqldump将数据表从一个库导入到另外一个库,结果速度特别慢,印象中有个多线程的数据导入导出工具Mydumper,于 ...

  4. Oracle exp/imp数据导入导出工具基本用法

    一.获取帮助 exp/imp help=y 二.数据导出 1.将数据库完全导出,设置full选项exp system/manager@orcl file=d:\db.dmp full=y 2.导出数据 ...

  5. PLSQL_数据泵Datapump导入导出数据IMPDP / EXPDP(概念)(Oracle数据导入导出工具)(转)

    一.摘要 在平常备库和数据库迁移的时候,当遇到大的数据库的时候在用exp的时候往往是需要好几个小时,耗费大量时间.oracle10g以后可以用expdp来导出数据库花费的时间要远小于exp花费的时间, ...

  6. Hbase数据导入导出

    平时用于从生产环境hbase到导出数据到测试环境. 导入数据: import java.io.BufferedReader; import java.io.File; import java.io.F ...

  7. Sqoop -- 用于Hadoop与关系数据库间数据导入导出工作的工具

    Sqoop是一款开源的工具,主要用于在Hadoop相关存储(HDFS.Hive.HBase)与传统关系数据库(MySql.Oracle等)间进行数据传递工作.Sqoop最早是作为Hadoop的一个第三 ...

  8. sqlserver自带的导入导出工具,分别导入大批量mysql和oracle数据时的感受

    sqlserver自带的导入导出工具,分别导入大批量mysql和oracle数据时,mysql经常出现格式转换出错,不好导入  导入的数据量比较大时,还不如自己写个工具导入 今天在导oracle时,想 ...

  9. MySQL数据导入导出方法与工具mysqlimport

    MySQL数据导入导出方法与工具mysqlimport<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office ...

随机推荐

  1. nginx转发php文件到php-fpm服务器提示502错误

    实验将php文件转发给另一个php-fpm服务器处理的时候,出现了502错误: 检查了nginx错误日志,提示: 2019/08/25 17:54:56 [error] 4742#0: *35 rec ...

  2. SpringIOC的高级特性

    目录 1. lazy-Init延迟加载 1.1 XML方式开启延迟加载: 1.2 注解开启延迟加载: 1.3全局配置--default-lazy-init="": 应用场景: 2. ...

  3. 在FL Studio中如何做出渐入的人声效果

    当我们在拿到一段人声并想把它加入歌曲中时,如果我们发现人声没有渐入的效果,直接加入到歌曲里出现会变得很突兀的话,我们就需要用到这篇文章所介绍的方法,给人声加上一个渐入的效果. 1. 找到我们需要处理的 ...

  4. 如何在Mac上安全彻底的卸载软件?

    Mac如何卸载软件呢?通常我们的做法都是将应用程序图标移动到废纸篓中,这样就算是将mac软件卸载了,但是这样真的将软件卸载干净了吗?当然没有,一个软件并不是只有应用程序包,他还会包含很多的偏好文件等等 ...

  5. CDR中调和工具的使用方法

    CDR中的调和工具也是一个神奇的工具,和AI中的混合工具类似,可以做出很多好看的形状,下面先看下他的基本操作方法. 要了解CorelDRAW平面设计软件中的cdr调和工具怎么用,首先要知道调和工具的作 ...

  6. 下载并破解IntelliJ IDEA(2017)

    idea的下载:https://www.jetbrains.com/idea/download/#section=windows 破解链接:http://blog.csdn.net/nn_jbrs/a ...

  7. JAVA 中的Optional (臭名昭著的空指针异常(NullPointerException))

    从 Java 8 引入的一个很有趣的特性是 Optional  类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException) -- 每个 Java 程序员都 ...

  8. Contest 984

    A 先手取最大,后手取最小,答案就是第 \(\left\lceil\frac{n}{2}\right\rceil\) 小的数. 用 nth_element 可以做到 \(O\left(n\right) ...

  9. Spring mvc与springboot

    org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration: viewResolver 类路径文件 把类路径下 ...

  10. pixi.js持续渲染页面

    Pixi是一个超快的2D渲染引擎,通过Javascript和Html技术创建动画或管理交互式图像,从而制作游戏或应用. 项目地址:https://github.com/pixijs/pixi.js A ...