hbase数据导入】的更多相关文章

hbase数据导入: 参考http://blog.csdn.net/hua840812/article/details/7414875,在把代码copy下来后,发现运行总是报错: java.io.IOException: Type mismatch in key from map: expected org.apache.hadoop.hbase.io.ImmutableBytesWritable, recieved org.apache.hadoop.io.LongWritable: 原因是m…
一.概述 HBase官方提供了基于Mapreduce的批量数据导入工具:Bulk load和ImportTsv.关于Bulk load大家可以看下我另一篇博文. 通常HBase用户会使用HBase API导数,但是如果一次性导入大批量数据,可能占用大量Regionserver资源,影响存储在该Regionserver上其他表的查询,本文将会从源码上解析ImportTsv数据导入工具,探究如何高效导入数据到HBase. 二.ImportTsv介绍 ImportTsv是Hbase提供的一个命令行工具…
一.概述 HBase本身提供了非常多种数据导入的方式,通常有两种经常使用方式: 1.使用HBase提供的TableOutputFormat,原理是通过一个Mapreduce作业将数据导入HBase 2.还有一种方式就是使用HBase原生Client API 这两种方式因为须要频繁的与数据所存储的RegionServer通信.一次性入库大量数据时,特别占用资源,所以都不是最有效的.了解过HBase底层原理的应该都知道,HBase在HDFS中是以HFile文件结构存储的,一个比較高效便捷的方法就是使…
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 -Di…
平时用于从生产环境hbase到导出数据到测试环境. 导入数据: import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.…
一. Hive数据迁移 场景:两个Hadoop平台集群之间Hive表迁移. 基本思路:Hive表元数据和文件数据export到HDFS文件,通过Distcp将HDFS迁移到另一个集群的HDFS文件,再通过import在新Hive中建表: 1.Hive数据导出 此步骤在原平台执行将Hive表元数据和文件数据export到平台HDFS文件 1) 获得hive表的元数据信息 ret=$(hive -e 'show tables;' | grep -v _es | grep -v _hb | grep…
前言: 作为Hadoop生态系统中重要的一员, HBase作为分布式列式存储, 在线实时处理的特性, 备受瞩目, 将来能在很多应用场景, 取代传统关系型数据库的江湖地位. 本篇博文重点讲解HBase的数据导入, 描述三种方式, Client API, Bulkload, 以及Hive Over HBase. *). Client API实现借助HBase的Client API来导入, 是最简易学的方式. Configuration config = HBaseConfiguration.crea…
目录: hdfs 命令操作本地 hbase Azure HDInsight HBase表数据导入本地 hbase hdfs命令操作本地hbase: 参见  HDP2.4安装(五):集群及组件安装 , 创建本地 hbase集群后,使用hadoop hdfs 命令在访问 hbase 存储数据时,数据在hdfs文件中的路径依赖于 hbase-site.xml 配置中hbase.rootdir参数,默认如下图: hdp2.4默认的目录地址为: hdfs://mycluster/apps/hbase/da…
需要分别从Oracle和文本文件往HBase中导入数据,这里介绍几种数据导入方案. 1.使用importTSV导入HBase importTSV支持增量导入.新数据插入,已存在数据则修改. 1.1.首先将待导入文本test_import.txt放到hdfs集群 文本格式如下(从网上找的虚拟话单数据).逗号分隔,共13个字段,其中第1个字段作为rowkey. 1,12026546272,2013/10/19,20:52,33分18秒,被叫,13727310234,北京市,省际,0,32.28,0.…
Sqoop将mysql数据导入hbase的血与泪(整整搞了大半天)  版权声明:本文为yunshuxueyuan原创文章.如需转载请标明出处: https://my.oschina.net/yunshuxueyuan/blogQQ技术交流群:299142667 一. 问题如何产生 庞老师只讲解了mysql和hdfs,mysq与hive的数据互导,因此决定研究一下将mysql数据直接导入hbase,这时出现了一系列问题. 心酸史: 二. 开始具体解决问题 需求:(将以下这张表数据导入mysql)…
一.说明 随着HBase在重要的商业系统中应用的大量增加,许多企业需要通过对它们的HBase集群建立健壮的备份和故障恢复机制来保证它们的企业(数据)资产.备份Hbase时的难点是其待备份的数据集可能非常巨大,因此备份方案必须有很高的效率.Hbase备份方案必须既能够伸缩至对数百TB的存储容量进行备份,又能够在一个合理的时间内完成数据恢复的工作.HBase和Apache Hadoop系统提供了许多内置的机制,可以快速而轻松的完成PB级数据的备份和恢复工作. 二.方法 HBase是一个基于LSM树(…
hive表的数据源有四种: hbase hdfs 本地 其他hive表 而hive表本身有两种: 内部表和外部表. 而hbase的数据在hive中,可以建立对应的外部表(参看hive和hbase整合) 内部表和外部表 区别:删除时,内部表删除hadoop上的数据:而外部表不删,其数据在外部存储,hive表只是查看数据的形式,看时从外部读入数据: 内部表:CREATETABLE tab(column1 STRING, column2 STRING); 外部表:用EXTERNAL 关键字,且必须在表…
原创不易,如需转载,请注明出处https://www.cnblogs.com/baixianlong/p/10700700.html,否则将追究法律责任!!! 一.需求: 1.将以下这张表(test_goods[id,goods_name,goods_price])数据导入Hbase 由此,编写如下sqoop导入命令 sqoop import -D sqoop.hbase.add.row.key=true --connect jdbc:mysql://192.168.1.9/spider --u…
首先,解决talend连接hbase的问题: 公司使用的机器是HDP2.2的机器,上面配置好Hbase服务,在集群的/etc/hbase/conf/hbase-site.xml下,有如下配置: <property> <name>zookeeper.znode.parent</name> <value>/hbase-unsecure</value> </property> 这个配置是决定, Hbase master在zookeeper中…
使用sqoop将MySQL数据库中的数据导入Hbase 前提:安装好 sqoop.hbase. 下载jbdc驱动:mysql-connector-java-5.1.10.jar 将 mysql-connector-java-5.1.10.jar 拷贝到 /usr/lib/sqoop/lib/ 下 MySQL导入HBase命令: sqoop import --connect jdbc:mysql://10.10.97.116:3306/rsearch --table researchers --h…
我们可以有很多方式可以把数据导入到hbase当中,比如说用map-reduce,使用TableOutputFormat这个类,但是这种方式不是最优的方式. Bulk的方式直接生成HFiles,写入到文件系统当中,这种方式的效率很高. 一般的步骤有两步 (1)使用ImportTsv或者import工具或者自己写程序用hive/pig生成HFiles (2)用completebulkload把HFiles加载到hdfs上 ImportTsv能把用Tab分隔的数据很方便的导入到hbase当中,但还有很…
Hive集成HBase可以有效利用HBase数据库的存储特性,如行更新和列索引等.在集成的过程中注意维持HBase jar包的一致性.Hive与HBase的整合功能的实现是利用两者本身对外的API接口互相进行通信,相互通信主要是依靠hive_hbase-handler.jar工具类. 整合hive与hbase的过程如下: 1.将HBASE_HOME下的 hbase-common-0.96.2-hadoop2.jar 和 zookeeper-3.4.5.jar 拷贝(覆盖)到HIVE_HOME/l…
HBase本身提供了很多种数据导入的方式,通常有两种常用方式: 使用HBase提供的TableOutputFormat,原理是通过一个Mapreduce作业将数据导入HBase 另一种方式就是使用HBase原生Client API 本文就是示范如何通过MapReduce作业从一个文件读取数据并写入到HBase中. 首先启动Hadoop与HBase,然后创建一个空表,用于后面导入数据: hbase(main):006:0> create 'mytable','cf' 0 row(s) in 10.…
Apache HBase是一个分布式的.面向列的开源数据库.它能够让我们随机的.实时的訪问大数据.可是如何有效的将数据导入到HBase呢?HBase有多种导入数据的方法.最直接的方法就是在MapReduce作业中使用TableOutputFormat作为输出.或者使用标准的客户端API,可是这些都不是很有效的方法. Bulkload利用MapReduce作业输出HBase内部数据格式的表数据,然后将生成的StoreFiles直接导入到集群中. 与使用HBase API相比,使用Bulkload导…
最近朋友公司在做一些数据的迁移,主要是将一些Hive处理之后的热数据导入到HBase中,但是遇到了一个很奇怪的问题:同样的数据到了HBase中,所占空间竟增长了好几倍!详谈中,笔者建议朋友至少从几点原因入手分析: HBase中的数据相对于Hive中的数据会新增一些附加信息导致磁盘占用的增加,比如布隆过滤器 Hive中的数据是否进行过压缩,比如snappy,压缩比还是很高的 row key和列族都会占据一定的空间,当数据量较大时,仅二者就会占据很多不必要的空间 建议将相同查询场景下的几个常用的列的…
方案一:Hive关联HBase表方式 适用场景:数据量不大4T以下(走hbase的api导入数据) 一.hbase表不存在的情况 创建hive表hive_hbase_table映射hbase表hbase_table,会自动创建hbase表hbase_table,且会随着hive表删除而删除,这里需要指定hive的schema到hbase schema的映射关系: 1.建表 CREATE TABLE hive_hbase_table(key int, name String,age String)…
一.说明: 将关系型数据库中的数据导入到 HDFS(包括 Hive, HBase) 中,如果导入的是 Hive,那么当 Hive 中没有对应表时,则自动创建. 二.操作 1.创建一张跟mysql中的im表一样的hive表im: sqoop create-hive-table \ --connect jdbc:mysql://192.168.200.100:3306/yang \ --username root \ --password 010209 \ --table im \ --hive-t…
HBase 数据的插入可以使用Java API 来写Java 程序逐条倒入,但是不是很方便.利用Hive自带的一个Jar包,可以建立Hive和HBase的映射关系 利用Hive 的insert可以将批量数 据导入到HBase中,还可以通过 Hql 语句进行查询. 具体的配置方法如下: 1.把hive-hbase-handler-0.9.0-cdh4.1.2.jar (CDH5 默认在 /usr/lib/hive/lib下)  cp到hbase/lib 下 (CDH5 默认在 /usr/lib/h…
Sqoop是一款开源的工具,主要用于在Hadoop相关存储(HDFS.Hive.HBase)与传统关系数据库(MySql.Oracle等)间进行数据传递工作.Sqoop最早是作为Hadoop的一个第三方模块存在,后来被独立成为了一个Apache项目.除了关系数据库外,对于某些NoSQL数据库,Sqoop也提供了连接器. 一.Sqoop基础知识 Sqoop项目开始于2009年,可以在Hadoop相关存储与传统关系数据库之间进行数据导入导出工作.Sqoop会开启多个MapReduce任务来并行进行数…
前置条件 已经成功安装配置Hadoop和Mysql数据库服务器,如果将数据导入或从Hbase导出,还应该已经成功安装配置Hbase. 下载sqoop和Mysql的JDBC驱动 sqoop-1.2.0-CDH3B4.tar.gz :http://archive.cloudera.com/cdh/3/sqoop-1.2.0-CDH3B4.tar.gz mysql-connector-java-5.1.28 安装sqoop [hadoop@appserver ~]$ tar -zxvf sqoop-1…
HBase使用客户端API动态创建Hbase数据表并在Hbase下导出执行                       ----首先感谢网络能够给我提供一个开放的学习平台,如果没有网上的技术爱好者提供的帮助,很难学好hbase. 一.hbase简介        官方:HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群.        自己的理解:hbase其实就是一个在…
目录 目录 1.什么是 Sqoop? 2.下载应用程序及配置环境变量 2.1.下载 Sqoop 1.4.7 2.2.设置环境变量 2.3.设置安装所需环境 3.安装 Sqoop 1.4.7 3.1.修改 Sqoop 配置文件 3.1.1.修改配置文件 sqoop-env.sh 3.1.2.修改配置文件 configure-sqoop 3.2.查看 Sqoop 版本 4.启动和测试 Sqoop 的数据导入.导出 4.1.Sqoop 通过 Hive 导入数据到 Sqoop 4.2.Sqoop 通过…
因为rowkey一般有业务逻辑, 所以不可以直接使用rowkey进行分页, startkey, endkey 想要使用SQL语句对Hbase进行查询,需要使用Apache的开源框架Phoenix. 安装 1, 下载phonenix http://mirrors.cnnic.cn/apache/phoenix/ 注意下载版本对应的phonenix 2, 解压 解压后, 将 phoenix-core-4.5.2-HBase-1.1.jar 拷贝至hbae各个节点的lib目录下 3, 重新启动hbae…
下载 wget http://mirror.bit.edu.cn/apache/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 解压 tar -zxf sqoop-1.99.7-bin-hadoop200.tar.gz 将mysql-connector-java-5.1.39.jar拷贝到sqoop1的lib目录 [root@host ~]# cp mysql-connector-java-5.1.39.jar /root/sqoop1/sqoo…
有时,数据可以容易的存储在hive中,但是要导入到hbase里,可以不用写MR程序来操作,可以使用hive on hbase方式来创建相应的表关联关系来将hive中的数据导入到对应的hbase的表里,如下描述: 可以参考 hive与hbase关联表 1 .首先创建一张临时hive 内表: create table testh(rowkey int,record1 string,record2 string,record3 string,record4 string,record5 string,…