Sqoop的使用(Mysql To HBase)

最近需要将mysql的数据整合到HBase中,原本使用MapReduce,自己制作job将mysql的数据导入,

查阅资料过程中,发现了开源工具sqoop(关系性数据库与HDFS,HBASE,HIVE等)互相导入的工具,

于是准备尝试使用,看是否能够满足目前数据转移的需求。

sqoop import --connect jdbc:mysql://192.168.100.**/database --username user -P --table information --hbase-table information --column-family info --hbase-row-key market,label --columns market,label,name,py --hbase-create-table -m 1

--hbase-row-key market,label这个命令可以产生market_label格式的rowkey

问题1:

ERROR security.UserGroupInformation: PriviledgedActionException ...

导致这个问题,主要是权限问题,使用的user没有在目标路径下创建有权限的文件夹

sudo -u hdfs hadoop fs -mkdir /user/user

sudo -u hdfs hadoop fs -chown user:user /user/user

(/user文件夹是在sqoop没有指明文件路径情况下的默认路径)

问题2:

Could not insert row with null value for row-key column:

这个问题,可能是由于使用的问题,在columns中需要指明row-key用到的列

时间: 2024-10-17 08:01:25

Sqoop的使用(Mysql To HBase)的相关文章

分布式爬虫系统设计、实现与实战:爬取京东、苏宁易购全网手机商品数据+MySQL、HBase存储

[TOC] 1 概述 在不用爬虫框架的情况,经过多方学习,尝试实现了一个分布式爬虫系统,并且可以将数据保存到不同地方,类似MySQL.HBase等. 基于面向接口的编码思想来开发,因此这个系统具有一定的扩展性,有兴趣的朋友直接看一下代码,就能理解其设计思想,虽然代码目前来说很多地方还是比较紧耦合,但只要花些时间和精力,很多都是可抽取出来并且可配置化的. 因为时间的关系,我只写了京东和苏宁易购两个网站的爬虫,但是完全可以实现不同网站爬虫的随机调度,基于其代码结构,再写国美.天猫等的商品爬取,难度不

聊聊MySQL、HBase、ES的特点和区别

互联网时代各种存储框架层出不穷,眼花缭乱,比如传统的关系型数据库:Oracle.MySQL:新兴的NoSQL:HBase.Cassandra.Redis:全文检索框架:ES.Solr等.如何为自己的业务选取合适的存储方案,相信大家都思考过这个问题,本文简单聊聊我对MySQL.HBase.ES的理解,希望能和大家一起探讨进步,有不对的地方还请指出. MySQL:关系型数据库,主要面向OLTP,支持事务,支持二级索引,支持SQL,支持主从.group replication架构模型(本文全部以Inn

sqoop命令,mysql导入到hdfs、hbase、hive

1.测试MySQL连接 bin/sqoop list-databases --connect jdbc:mysql://192.168.1.187:3306/trade_dev --username 'mysql' --password '111111' 2.检验SQL语句 bin/sqoop eval --connect jdbc:mysql://192.168.1.187:3306/trade_dev --username 'mysql' --password '111111' --quer

从hbase到hive,以及sqoop转到mysql解析

https://blog.csdn.net/qq_33689414/article/details/80328665 hive关联hbase的配置文件 hive和hbase同步https://cwiki.apache.org/confluence/display/Hivehttps://cwiki.apache.org/confluence/display/Hive/HBaseIntegration 1.在hive的配置文件增加属性:hive-site.xml <property> <n

多种字符集并存情况下sqoop从MySQL导入HBase中文乱码解决

最近在做binlog日志采集同步到数据平台的事.刚开始需要借助sqoop将从库数据表数据初始化到hbase中,整个过程都需要自动化进行,尽量减少人为干预.但是,由于历史原因,线上存在两种字符集格式的数据库(表),而导入到hbase的数据我们需要统一采用utf-8格式存储.sqoop直接导入的话,没法控制中文字符转码工作.所以需要对sqoop源码进行简单改动支持这种方式. 大体思路是,通过定义一个接口可以从InformationSchema库的tables中获取某个表的table-collatio

MySQL to Hbase 数据的抽取

一个简单粗暴的方法从MySQL数据库抽取数据到Hbase实现的过程: rowKey利用MySQL表的主键ID特性作为HBASE的id code: #### #!/usr/bin/env python #coding=utf-8 import sys reload(sys) sys.setdefaultencoding('utf-8') import MySQLdb import datetime,time sys.path.append('/usr/lib/python2.6/site-pack

Hadoop+Hive(MySQL)+Hbase+zookeeper

一.hadoop安装 虚拟机(centos7) Master:192.168.0.228 Slave:192.168.0.207 软件 apache-hive-1.2.1-bin.tar.gz hadoop-2.6.0-cdh5.4.8.tar.gz jdk-8u65-linux-x64.tar.gz mysql-connector-java-5.1.31-bin.jar hbase-0.98.15-hadoop2-bin.tar zookeeper-3.4.6.tar 1.关闭防火墙 Syst

用sqoop抽取oracle 表到hbase的例子

sqoop import \-Doraoop.disabled=true \--connect jdbc:oracle:thin:@"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=XX.XX.XX.XX)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=edw)))" \--username ****\--password  ****\--table SDI.OGG_SP_HT_28

使用sqoop将MySQL数据库中的数据导入Hbase

使用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