码迷,mamicode.com
首页 > 数据库 > 详细

sqoop从mysql导入到hdfs

时间:2014-07-28 15:01:03      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:blog   使用   os   文件   数据   io   ar   line   

1、mysql
 -- 创建数据库
 create database logs;
 -- 使用
 use logs;
 -- 创建表
 create table weblogs(
  md5 varchar(32),
  url varchar(64),
  request_date date,
  request_time time,
  ip varchar(15)
 );
 -- 从外部文本文件加载数据
 load data infile ‘/path/weblogs_entries.txt‘ into table weblogs fields terminated by ‘\t‘ lines terminated by ‘\r\n‘;
 -- 查询
 select * from weblogs;
 -- 将mysql数据导出到hdfs

  sqoop import -m 1 --connect jdbc:mysql://hadoop:3306/logs --username root --password root --table weblogs --target-dir /data/weblogs/import
 --target-dir 决定了数据将存储在hdfs的哪个目录下
 默认情况下,sqoop导入的数据将会按主键进行分割, 有多少个主键,就会有多少个输出文件(一定要控制好)。若不包含主键,必须指定-m 或者--split-by参数决定导入的数据如何分割。每个mapper将产生一个独立的文件。导入文件的默认分割符号“,”,
 ,可以通过--fields-terminated-by ‘\t‘ 指定其他的分割符号
 sqoop import -m 1 --connect jdbc:mysql://hadoop:3306/logs --username root --password root --table weblogs --target-dir /data/weblogs/import --fields-terminated-by ‘\t‘

 sqoop import --connect jdbc:mysql://hadoop:3306/logs --username root --password root --table weblogs --split-by md5 --target-dir /data/weblogs/import
 --as-avrodatafile 将数据导入为avro文件
 --as-sequencefile 导入为序列化文件
 -z或--compress 在导入的过程中对数据进行压缩,默认gzip
 --compression-codec <CODEC类> 使用hadoop支持的任何压缩方式类
 --direct 指示sqoop直接使用数据库支持的本地导入导出工具,更快(此时必须使用-m指定mapper的数量,否则若使用--split-by的话会报错,mysqldump terminated status with 2)
 sqoop import --direct -m 1  --connect jdbc:mysql://hadoop:3306/test --username root --password root --table weblogs  --target-dir /data/weblogs/person

 


 use mysql
 select host,user from user;

 

sqoop从mysql导入到hdfs,布布扣,bubuko.com

sqoop从mysql导入到hdfs

标签:blog   使用   os   文件   数据   io   ar   line   

原文地址:http://www.cnblogs.com/jsunday/p/3872794.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!