侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

头疼的heart beat

2023-12-17 星期日 / 0 评论 / 0 点赞 / 121 阅读 / 701 字

1. 场景分析: 从业务DB mysql 导入到hive, 如果Mysql单表的数据量过大,Sqoop会长时间处于heart beat(心跳)状态。 原因: sqoop先执行默认的boundary-q

1. 场景分析: 从业务DB mysql 导入到hive, 如果Mysql单表的数据量过大,Sqoop会长时间处于heart beat(心跳)状态。

原因: sqoop先执行默认的boundary-query操作, 获取Mysql表中ID的最大和最小值,为后续切片使用。

SELECT MIN(id), MAX(id) FROM (select id,xxoo from [big_table] a where  (1 = 1) ) AS t1

上面的语句采用子查询,性能太差, 而且会生成临时中间表。

解决方案: 增加--boundary-query 参数, 修改语句

SELECT MIN(`id`), MAX(`id`) FROM `hdtool_orders` WHERE gmt_create >='${start}' and gmt_create <'${end}'

广告 广告

评论区