记一个sqoop导入缓慢问题

本文记录了一次使用SQoop从MySQL导入大量数据至HDFS的过程,面对执行效率低下问题,作者尝试了多种方法进行优化,包括调整yarn和map内存配置等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

折腾近一周,来回调yarn 和map内存
情景描述:
16G4核*4机器搭了一个集群,部署hdfs MR hive zookeeper 等一些组件。欲搭建一个离线数仓。
有4,5年历史数据存在mysql中,欲将mysql导入hdfs。采用sqoop将Mysql数据lzo压缩导入hdfs。

优化过sqoop中sql后,导入速度还是异常缓慢。sql部分已经没法优化了,mysql大表查询慢我认了。
不知是机器性能问题还是什么,sqoop从查询到map过程在执行巨慢。4台机器安装完组件后,yarn可调度节点分别为(5.6G ,8.6G ,11G ,12G)3核 *4 yarn的container 我调整为min 4G max 12G。map所需内存设置成12G.

本来计划写一个sqoop脚本,内部调用所有表查询sql。由于mysql表字段没有自增id,使用sqoop脚本没法-m 和-split-by 。然后将脚本拆开,拆成12个shell脚本。妄图达到并发效果。然后每次跑一天partition ,14~15mins跑完12个脚本。也就是一天追96天数据。太慢了。当我尝试调整yarn 和map ,同样12个脚本所需时间没有更少,已经达到最快。

当我的Map所需内存大于yarn节点支持内存,虽然执行脚本速度快,但是数据不会插入hdfs。

今日记录此问题,期待有缘人能破除此问题。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值