好久没有更新自己技术博客,现在开始工作了,把自己遇到的问题写到这里边来

主要把自己的问题写出来,分享给大家

sqoop 导入数据时候 有时候会遇到mysql 中有sql 中的关键字 这时候如果直接导出到hive 中会出现错误 例如下面的例子

这时候会出现错误 可以使用--query 来解决问题

例如 :

sqoop-import -D mapreduce.map.memory.mb=256 -D mapreduce.map.java.opts=-Xmx128m  --connect ''--username '' --password ''   --hive-import --hive-overwrite  --hive-database databases_name --hive-table table_name --query 'select doctor_id,uid as  uid1  from tb_doctor WHERE $CONDITIONS ' --where "1=1" --num-mappers 1 --split-by ''  --driver com.mysql.jdbc.Driver --direct  --target-dir '' -- --skip-tz-utc

当导入到mysql 中数据的时候 如果遇到主键自增的时候这个时候可以使用  --columns 加上列名

例如  --columns "type,name,user_id" 等

当sqoop 从mysql 中导入到hive 中数据库中  有时候mysql 中数据库比较大这个会出现oom 的现象 这个时候可以调节参数  例如第一个列子中这个 -D 用来指定的内存的参数  一般来调节三个参数 第一个是  -D mapreduce.map.memory.mb  用来调节整个maptask 的参数 ,-D mapreduce.map.java.opts=-Xmx128m 整个是用来调节java 中堆的内存大小    -Dmapreduce.task.io.sort.mb=64 用来制定环形缓冲区的大小 一般调节这三个参数 如果内存还不够 的话 这时候要调节yarn 中对于每一个容器的内存大小,然后相应调大maptask 的内存大小,和堆的大小和环形缓冲区的大小  大概的关系就是yarn 制定容器的大小 >maptask 制定的内存>堆内存的大小

这是为什么呢  我们知道sqoop 底层实际上 就是jdbc 和mapreduce 的封装 他只执行map的过程  所以在制定sqoop 的内存的参数的时候实际就是配置mapredcue 的参数  。所以在调节sqoop 的时候实际就是调节mapreduce 的参数。

当数据库表中数据比较大的时候这个时候会导致导出跑出异常 这个时候可以使用--query  制定导入一部分 然后到某一个分区 这个时候就可以解决这个问题 如下例子

sqoop-import -D mapreduce.map.memory.mb=6000 -D mapreduce.map.java.opts=-Xmx5120m -Dmapreduce.task.io.sort.mb=2400 --connect connection_name --username username --password password --hive-import --hive-overwrite --hive-database database_name  --hive-table table_name --query 'select uid,username from table_name  where type=8 and 1=1 and $CONDITIONS' --split-by tb_name .uid --hive-partition-key typedata --hive-partition-value 8 --num-mappers 4 --driver com.mysql.jdbc.Driver --direct --target-dir /user/hive/tb_msg_0 -- --skip-tz-utc

用--hive-partition-key  和--hive-partition-value 来制定分区    就可以减少导入的数据量 这个时候不至于导致内存不足。

转载于:https://www.cnblogs.com/qerror404/p/6906242.html

sqoop 使用笔记相关推荐

  1. sqoop-使用文档

    该项目已退役.详情请参阅其 阁楼页面. 文档主页 Sqoop 用户指南 (v1.4.7) Sqoop 用户指南 (v1.4.7) 目录 一.简介 2. 支持的版本 3. Sqoop 发布 4. 先决条 ...

  2. Hadoop学习笔记—18.Sqoop框架学习

    Hadoop学习笔记-18.Sqoop框架学习 一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数据 ...

  3. Hadoop之Sqoop框架学习(笔记19)

    一.Sqoop基础:连接关系型数据库与Hadoop的桥梁 1.1 Sqoop的基本概念 Hadoop正成为企业用于大数据分析的最热门选择,但想将你的数据移植过去并不容易.Apache Sqoop正在加 ...

  4. Linux、hbase、hive、shell、sqoop笔记总结+一键开启关闭脚本

    Linux笔记 pwd------查看当前目录 cd------切换目录ls------查看当前目录下的目录及文件 ls-l或ll------长格式查看当前文件 ls-a------查看当前隐藏文件 ...

  5. 大数据学习笔记45:Sqoop - 数据迁移工具

    文章目录 一.Sqoop概述 二.下载.安装和配置Sqoop 1.下载sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz 2.将sqoop-1.4.7.bin__hadoop-2 ...

  6. sqoop完整版学习笔记

    sqoop 1.安装 1.1.修改配置文件 1.2.将mysql驱动包拷入 2.Mysql to HDFS 2.1.查询Mysql所有数据库 2.2.查询指定数据库中所有数据表 2.3.全量导入mys ...

  7. Hadoop学习笔记—20.网站日志分析项目案例(一)项目介绍

    Hadoop学习笔记-20.网站日志分析项目案例(一)项目介绍 网站日志分析项目案例(一)项目介绍:当前页面 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edis ...

  8. Hadoop学习笔记系列文章导航

    一.为何要学习Hadoop? 这是一个信息爆炸的时代.经过数十年的积累,很多企业都聚集了大量的数据.这些数据也是企业的核心财富之一,怎样从累积的数据里寻找价值,变废为宝炼数成金成为当务之急.但数据增长 ...

  9. 执行sqoop 用shell_Mysql和Hive之间通过Sqoop进行数据同步

    文章回顾 理论 大数据框架原理简介 大数据发展历程及技术选型 实践 搭建大数据运行环境之一 搭建大数据运行环境之二 本地MAC环境配置 CPU数和内存大小 查看CPU数 sysctl machdep. ...

最新文章

  1. 最新Java面试题答案
  2. Windows文件系统过滤驱动开发教程(0,1,2)
  3. Linux下Redis-3.0.7版本的安装以及Redis主备的部署(二)
  4. 1的个数 itoa函数使用
  5. Prism学习笔记(三):对Prism中模块化程序的理解。
  6. MQTT-SN协议乱翻之消息格式
  7. 3皮卡丘眨眼代码_眨眼检测调研以及活体检测应用
  8. P2611-[ZJOI2012]小蓝的好友【Treap,扫描线】
  9. Qt中常用的QChar QByteArry QString数据类型转换方法
  10. Mule ESB File Connector轮询单个文件的实现(3)
  11. 【C++】演讲比赛流程管理系统
  12. SDK和DDK ?
  13. PHPWAMP自定义php版本的方法
  14. 【Unity3D-Mirror多人坦克大战】子弹及其开火位置的生成、子弹开火逻辑(四)
  15. jquery下载及怎么选择版本
  16. 修改数据库单参数对应的值 前端+php
  17. 开店经验|如何开一家精品咖啡馆
  18. 除了Micrsoft Office和WPS,有没有免费好用的office软件?
  19. windows邮箱无法登录腾讯企业邮箱
  20. 计算机视觉方向博后,直播回顾 | 深圳大学龚元浩:比几何流快一万倍的曲率滤波算法(附博后招聘)...

热门文章

  1. vb 字符串长度_学习VB编程第5天 基础知识需要一点点积累
  2. 北京大学生物信息学学习(3动态规划进行2序列比对的原理 )
  3. matlab 离散点求导_Matlab的离散点曲线导数曲率数值模拟方法
  4. 识别中文_中文场景文字识别大赛官方baseline
  5. 软件调试第二版卷一硬件基础 pdf_2020全球C++及系统软件技术大会,C++之父领衔...
  6. Stanford机器学习---第4讲. 神经网络的表示 Neural Networks representation
  7. 基于隐马尔可夫模型的有监督词性标注
  8. 运动目标跟踪(三)--搜索算法优化搜索方向之Meanshift
  9. OpenCV系统学习(基本了解完)
  10. 51单片机redefinition_lcd12864程序在keil中出现好多重新定义,尝试了很多办法都改不了,求助大家了...