热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:使用sqoop将mysql数据导入到hive(import)

篇首语:本文由编程笔记#小编为大家整理,主要介绍了使用sqoop将mysql数据导入到hive(import)相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了使用 sqoop 将mysql数据导入到hive(import)相关的知识,希望对你有一定的参考价值。



Sqoop 将mysql 数据导入到hdfs(import)


1.创建mysql表


CREATE TABLE `sqoop_test` (
`id`
int(11) DEFAULT NULL,
`name` varchar(
255) DEFAULT NULL,
`age`
int(11) DEFAULT NULL
) ENGINE
=InnoDB DEFAULT CHARSET=latin1

插入数据

 


2.hive 建表


hive> create external table sqoop_test(id int,name string,age int)
> ROW FORMAT DELIMITED
> FIELDS TERMINATED BY \',\'
> STORED AS TEXTFILE
> location \'/user/hive/external/sqoop_test\';
OK
Time taken:
0.145 seconds

 


3.使用sqoop将mysql数据导入到hdfs


sqoop import --connect jdbc:mysql://localhost:3306/sqooptest --username root --password 123qwe --table sqoop_test --columns id,name,age --fields-terminated-by , --delete-target-dir --target-dir /user/hive/external/sqoop_test/ -m 1

--delete-target-dir:如果目标目录存在则删除。


EFdeMacBook-Pro:bin FengZhen$ sqoop import --connect jdbc:mysql://localhost:3306/sqooptest --username root --password 123qwe --table sqoop_test --columns id,name,age --fields-terminated-by , --delete-target-dir --target-dir /user/hive/external/sqoop_test/ -m 1
Warning: /Users/FengZhen/Desktop/Hadoop/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/../hcatalog does not exist! HCatalog jobs will fail.
Please
set $HCAT_HOME to the root of your HCatalog installation.
Warning:
/Users/FengZhen/Desktop/Hadoop/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/../accumulo does not exist! Accumulo imports will fail.
Please
set $ACCUMULO_HOME to the root of your Accumulo installation.
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding
in [jar:file:/Users/FengZhen/Desktop/Hadoop/hadoop-2.8.0/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding
in [jar:file:/Users/FengZhen/Desktop/Hadoop/hbase-1.3.0/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http:
//www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
17/09/13 11:12:19 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6
17/09/13 11:12:19 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
17/09/13 11:12:19 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.
17/09/13 11:12:19 INFO tool.CodeGenTool: Beginning code generation
17/09/13 11:12:19 INFO manager.SqlManager: Executing SQL statement: SELECT t.* FROM `sqoop_test` AS t LIMIT 1
17/09/13 11:12:19 INFO manager.SqlManager: Executing SQL statement: SELECT t.* FROM `sqoop_test` AS t LIMIT 1
17/09/13 11:12:19 INFO orm.CompilationManager: HADOOP_MAPRED_HOME is /Users/FengZhen/Desktop/Hadoop/hadoop-2.8.0
17/09/13 11:12:21 INFO orm.CompilationManager: Writing jar file: /tmp/sqoop-FengZhen/compile/1a0c4154ffefb21d4af720813dd0b3fc/sqoop_test.jar
17/09/13 11:12:21 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
17/09/13 11:12:22 INFO tool.ImportTool: Destination directory /user/hive/external/sqoop_test deleted.
17/09/13 11:12:22 WARN manager.MySQLManager: It looks like you are importing from mysql.
17/09/13 11:12:22 WARN manager.MySQLManager: This transfer can be faster! Use the --direct
17/09/13 11:12:22 WARN manager.MySQLManager: option to exercise a MySQL-specific fast path.
17/09/13 11:12:22 INFO manager.MySQLManager: Setting zero DATETIME behavior to convertToNull (mysql)
17/09/13 11:12:22 INFO mapreduce.ImportJobBase: Beginning import of sqoop_test
17/09/13 11:12:22 INFO Configuration.deprecation: mapred.job.tracker is deprecated. Instead, use mapreduce.jobtracker.address
17/09/13 11:12:22 INFO Configuration.deprecation: mapred.jar is deprecated. Instead, use mapreduce.job.jar
17/09/13 11:12:22 INFO Configuration.deprecation: mapred.map.tasks is deprecated. Instead, use mapreduce.job.maps
17/09/13 11:12:22 INFO client.RMProxy: Connecting to ResourceManager at localhost/127.0.0.1:8032
17/09/13 11:12:24 INFO db.DBInputFormat: Using read commited transaction isolation
17/09/13 11:12:24 INFO mapreduce.JobSubmitter: number of splits:1
17/09/13 11:12:24 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1505268150495_0008
17/09/13 11:12:25 INFO impl.YarnClientImpl: Submitted application application_1505268150495_0008
17/09/13 11:12:25 INFO mapreduce.Job: The url to track the job: http://192.168.1.64:8088/proxy/application_1505268150495_0008/
17/09/13 11:12:25 INFO mapreduce.Job: Running job: job_1505268150495_0008
17/09/13 11:12:35 INFO mapreduce.Job: Job job_1505268150495_0008 running in uber mode : false
17/09/13 11:12:35 INFO mapreduce.Job: map 0% reduce 0%
17/09/13 11:12:41 INFO mapreduce.Job: map 100% reduce 0%
17/09/13 11:12:41 INFO mapreduce.Job: Job job_1505268150495_0008 completed successfully
17/09/13 11:12:41 INFO mapreduce.Job: Counters: 30
File System Counters
FILE: Number of bytes read
=0
FILE: Number of bytes written
=156817
FILE: Number of read operations
=0
FILE: Number of large read operations
=0
FILE: Number of write operations
=0
HDFS: Number of bytes read
=87
HDFS: Number of bytes written
=26
HDFS: Number of read operations
=4
HDFS: Number of large read operations
=0
HDFS: Number of write operations
=2
Job Counters
Launched map tasks
=1
Other local map tasks
=1
Total time spent by all maps
in occupied slots (ms)=3817
Total time spent by all reduces
in occupied slots (ms)=0
Total time spent by all map tasks (ms)
=3817
Total vcore
-milliseconds taken by all map tasks=3817
Total megabyte
-milliseconds taken by all map tasks=3908608
Map
-Reduce Framework
Map input records
=3
Map output records
=3
Input split bytes
=87
Spilled Records
=0
Failed Shuffles
=0
Merged Map outputs
=0
GC time elapsed (ms)
=33
CPU time spent (ms)
=0
Physical memory (bytes) snapshot
=0
Virtual memory (bytes) snapshot
=0
Total committed heap usage (bytes)
=154140672
File Input Format Counters
Bytes Read
=0
File Output Format Counters
Bytes Written
=26
17/09/13 11:12:41 INFO mapreduce.ImportJobBase: Transferred 26 bytes in 18.6372 seconds (1.3951 bytes/sec)
17/09/13 11:12:41 INFO mapreduce.ImportJobBase: Retrieved 3 records.

 

可在hdfs看到传入的数据


EFdeMacBook-Pro:jarfile FengZhen$ hadoop fs -ls /user/hive/external/sqoop_test
Found
2 items
-rw-r--r-- 1 FengZhen supergroup 0 2017-09-13 11:12 /user/hive/external/sqoop_test/_SUCCESS
-rw-r--r-- 1 FengZhen supergroup 26 2017-09-13 11:12 /user/hive/external/sqoop_test/part-m-00000

 

可在hive中查看数据。


hive> select * from sqoop_test;
OK
1 fz 13
3 dx 18
2 test 13
Time taken:
1.756 seconds, Fetched: 3 row(s)

使用sqoop将hive数据导出到mysql(export)



推荐阅读
  • 从接触DataX起就有一个疑问,它和Sqoop到底有什么区别,昨天部署好了DataX和Sqoop,就可以对两者进行更深入的了解了。两者从原理上看有点相似,都是解决异构环境的数据交换 ... [详细]
  • 【数据结构与算法】——快速排序
    Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql)间进行数据的传递,可以将一个关系型数据库(例如:MySQL,O ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • WhenIusepythontoapplythepymysqlmoduletoaddafieldtoatableinthemysqldatabase,itdo ... [详细]
  • 本文介绍了在MFC下利用C++和MFC的特性动态创建窗口的方法,包括继承现有的MFC类并加以改造、插入工具栏和状态栏对象的声明等。同时还提到了窗口销毁的处理方法。本文详细介绍了实现方法并给出了相关注意事项。 ... [详细]
  • MapReduce工作流程最详细解释
    MapReduce是我们再进行离线大数据处理的时候经常要使用的计算模型,MapReduce的计算过程被封装的很好,我们只用使用Map和Reduce函数,所以对其整体的计算过程不是太 ... [详细]
  • 本文_大数据之非常详细Sqoop安装和基本操作
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了大数据之非常详细Sqoop安装和基本操作相关的知识,希望对你有一定的参考价值。大数据大数据之 ... [详细]
  • 怎么快速学好大数据开发?
    新如何学习大数据技术?大数据怎么入门?怎么做大数据分析?数据科学需要学习那些技术?大数据的应用前景等等问题,已成为热门大数据领域热门问题,以下是对新手如何学习大数据技术问题的解答! ... [详细]
  • MySQL数据 实时同步到KafkaBinlog canal、Maxwell、Kafka Connect 实现MySQL增量同步
    一、需求分析早期业务借助Sqoop将Mysql中的数据同步到Hive、hdfs来进行数据分析,使用过程中也带来了一些问题:虽然Sqoop支持增量同步但还属于粗粒度的离线同步,无法满 ... [详细]
  • 电话号码的字母组合解题思路和代码示例
    本文介绍了力扣题目《电话号码的字母组合》的解题思路和代码示例。通过使用哈希表和递归求解的方法,可以将给定的电话号码转换为对应的字母组合。详细的解题思路和代码示例可以帮助读者更好地理解和实现该题目。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 本文介绍了如何将CIM_DateTime解析为.Net DateTime,并分享了解析过程中可能遇到的问题和解决方法。通过使用DateTime.ParseExact方法和适当的格式字符串,可以成功解析CIM_DateTime字符串。同时还提供了关于WMI和字符串格式的相关信息。 ... [详细]
author-avatar
寻找冄己靉
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有