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. 教你用Camtasia制作精美片头

    大家都知道在视频播放中,如果有一个令人印象深刻的精彩开头,整个视频的内容都能因此得到不少升华.所以有一个好的片头对于视频的制作来说十分重要.今天我们就来讲一下用Camtasia制作片头的方法. 首先, ...

  2. 【VUE】4.配置axios发起请求

    1.配置axios 1. 前端请求后端接口进行数据交互的时候,需要配置axios 2. 导入axios包, main.js import axios from 'axios' 3. 挂载到原型配置上, ...

  3. SpringBoot的条件注解源码解析

    SpringBoot的条件注解源码解析 @ConditionalOnBean.@ConditionalOnMissingBean 启动项目 会在ConfigurationClassBeanDefini ...

  4. 【ACwing 93】【模版】非递归实现组合型枚举——模拟递归

    (题面来自ACwing) 从 1~n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案. 输入格式 两个整数 n,m ,在同一行用空格隔开. 输出格式 按照从小到大的顺序输出所有方案,每行1个 ...

  5. Git基本操作(一)

    Git 使用(一) - git init 初始化仓库 - git status 仓库状态 - git add filename 单个文件加入暂存 - git add. 全部加入暂存 - git com ...

  6. 面经手册 · 第20篇《Thread 线程,状态转换、方法使用、原理分析》

    作者:小傅哥 博客:https://bugstack.cn Github:https://github.com/fuzhengwei/CodeGuide/wiki 沉淀.分享.成长,让自己和他人都能有 ...

  7. 第7.15节 Python中classmethod定义的类方法详解

    第7.15节  Python中classmethod定义的类方法详解 类中的方法,除了实例方法外,还有两种方法,分别是类方法和静态方法.本节介绍类方法的定义和使用. 一.    类方法的定义 在类中定 ...

  8. 第11.13节 Python正则表达式的转义符”\”功能介绍

    为了支持特殊元字符在特定场景下能表示自身而不会被当成元字符进行匹配出来,可以通过字符集或转义符表示方法来表示,字符集表示方法前面在<第11.4节 Python正则表达式搜索字符集匹配功能及元字符 ...

  9. ATT&CK 实战 - 红日安全 vulnstack (一) 环境部署

    靶场描述: 红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习.视频教程.博客三位一体学习.另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环.后续也会搭建真实APT实 ...

  10. metasploit魔鬼训练营靶机环境搭建(第二章)

    环境搭建,书上已经很详细了,路由转发的那个鼓捣了好久都没弄好,菜的啊 所以先往书后面继续学习,不停留在配置环境上了. backtrack没有下载,使用的kali linux 其他的都是一样的 百度网盘 ...