开发者社区> 鸿初> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

在Aliyun E-MapReduce集群上 使用sqoop高级特性

简介: sqoop简介 sqoop是什么 Sqoop是一款开源的软件工具,提供了Hadoop和关系型数据库中的数据相互转移的功能。可以将一个关系型数据库(例如 : MySQL)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。 在E-MapReduce集群中使用sqo
+关注继续查看

sqoop简介

sqoop是什么

Sqoop是一款开源的软件工具,提供了Hadoop和关系型数据库中的数据相互转移的功能。可以将一个关系型数据库(例如 : MySQL)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。

在E-MapReduce集群中使用sqoop

当前E-MapReduce还没有集成Sqoop,很快会发布下个版本默认提供sqoop组件。在E-MapReduce集群安装和常见场景的导入导出基本功能使用请参见
帮助文档-sqoop

sqoop高级特性

导入导出通用可选参数

-m

指定启动n个map来并行导入数据,默认是4个。根据数据量的大小调整作业数。

--direct

快速模式,利用了数据库自带的导入导出工具,如mysql的mysqlimport,官方说比jdbc连接的方式更快速

--as-avrodatafile

将数据导入到一个Avro数据文件中或从Avro数据文件中导出,默认是textfile

--as-sequencefile

将数据导入到一个sequence文件中或从Avro数据文件中导出

-z

指定使用压缩导入或从压缩的hdfs文件中导出。默认压缩格式是gzip

--compression-codec

配合-Z使用,指定具体压缩格式。默认压缩格式是gzip

导入import高级特性

--split-by

指定map基于哪个列的值划分范围,默认是主键。sqoop会先查询该列的最大,最小值,在最大最小值的范围内划分各map的取值范围。

条件和字段过滤

--columns

指定导入哪些字段,例如 --columns "employee_id,first_name,last_name,job_title"

--where

附加额外的sql过滤,例如–where ‘id > 2’,可以用来做增量插入的条件。

--query

提供完整的select sql,从查询结果中导入数据。在查询语句中一定要有where条件且在where条件中需要包含$CONDITIONS,并且指定--split-by 参数。示例:–query ‘select * from person where $CONDITIONS ‘ –split-by id。 map会根据 id的划分范围替换 $CONDITIONS。

增量导入

--append

将数据追加到hdfs中已经存在的目录中。使用该参数,sqoop将把数据先导入到一个临时目录中,然后重新给文件命名到正式的目录中,以避免和该目录中已存在的文件重名。

导入支持各种sql过滤,字段或时间戳增量,-append .

--incremental

mode支持append and lastmodified两种。append:按列的大小追加,对大于last-value指定的值之后的记录进行追加导入。lastmodified:最后的修改时间,追加last-value指定的日期之后的记录。

需要跟 --check-column (col)和–last-value (value) 联合使用。前者指定判断增量的列名,后者指定自从上次导入后列的最大值,大于该值的都会被导入。

导出 export高级特性

--batch

使用batch sql批量insert 数据。

insert or update

默认导出只会insert 记录进关系型数据库,如果有唯一主键冲突,则会失败。指定--update-key id,会根据该字段做update操作。将关系数据库中已经存在的数据进行更新。

更新模式下不存在也不会报错,如果期待存在就更新不存在就插入,用 --update-mode allowinsert

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
E-MapReduce集群如何使用Phoenix on HBase
E-MapReduce的emr-2.0.0以下(emr-2.0.0已默认集成Phoenix)的HBase集群中并不包含Phoenix,也没有启动yarn,下面介绍一种通过创建集群时设置的引导操作来完成集群上Phoenix的部署。
3976 0
E-MapReduce上如何升级EMR-Core
本文档将介绍如何将老集群的EMR-Core升级到最新版本 什么是EMR-Core EMR-Core是E-MapReduce集群上支持Hadoop生态组件读写OSS的依赖包。它提供一种高效地读写OSS数据的实现,并不断地在优化中。
1993 0
Elasticsearch hadoop使用示例 & 运维实战之集群规划 &presto-elasticsearch connector
在elasticsearch-hadoop的具体使用中碰到了几个问题,有必要记录一下,避免下次遇到时又要重新研究,以及用于生产的elasticsearch集群规划建议。 elasticsearch搜索功能强劲,就是查询语法复杂,presto提供了非常open的plugin机制,我改进了下原有的pre
7952 0
如何在Aliyun E-MapReduce集群上使用Zeppelin和Hue
目前Aliyun E-MapReduce支持了zeppelin和hue,在Aliyun E-MapReduce集群上可以很方便的使用zeppelin和hue。本文将详细介绍如何在Aliyun E-MapReduce玩转Zeppelin和Hue!
11141 0
hive在E-MapReduce集群的实践(一)hive异常排查入门
hive是hadoop集群最常用的数据分析工具,只要运行sql就可以分析海量数据。初学者在使用hive时,经常会遇到各种问题,不知道该怎么解决。 本文是hive实践系列的第一篇,以E-MapReduce集群环境为例,介绍常见的hive执行异常,定位和解决方法,以及hive日志查看方法。
5243 0
MapReduce高级特性
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq1010885678/article/details/51366342 计数器 ...
906 0
hive在E-MapReduce集群的实践(二)集群hive参数优化
本文介绍一些常见的集群跑hive作业参数优化,可以根据业务需要来使用。 提高hdfs性能 修改hdfs-site,注意重启hdfs服务 dfs.client.read.shortcircuit=true //直读 dfs.
6455 0
+关注
鸿初
阿里云-EMR团队成员,致力于推广开源大数据在云上的应用
文章
问答
来源圈子
更多
E-MapReduce是构建于阿里云ECS弹性虚拟机之上,利用开源大数据生态系统,包括Hadoop和Spark,为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。加入钉钉群聊阿里云E-MapReduce交流2群,点击进入查看详情 https://qr.dingtalk.com/action/joingroup?code=v1,k1,cNBcqHn4TvG0iHpN3cSc1B86D1831SGMdvGu7PW+sm4=&_dt_no_comment=1&origin=11
+ 订阅
相关文档: E-MapReduce
文章排行榜
最热
最新
相关电子书
更多
From Zero to Data Flow In Hours with Apache Nifi
立即下载
《E-MapReduce on ACK 全新发布,助力企业高效构建大数据平台》
立即下载
基于E-MapReduce梨视频推荐系统
立即下载