【发布时间】:2013-04-29 16:57:57
【问题描述】:
我正在尝试使用 sqoop 导入将一些数据从 MySQL 迁移到 HBase。这是我正在使用的命令:
sqoop import --connect jdbc:mysql://hostname/database --username username -P
--query 'SELECT * FROM logs WHERE $CONDITIONS' --split-by log_id -m 4
--hbase-table logs --column-family cf --hbase-create-table
问题是当没有增加地图时执行时间会增加。由于并行处理是随着映射器的增加而完成的,所以理想情况下执行时间实际上应该减少。
这是模式
地图数量时间(秒) 1 16 2 20 4 29 8 51 10 55 16 82 25 122从上面可以看出,当只有一个映射器时,它花费的时间最少。知道可能是什么原因吗?任何帮助将不胜感激。
我的集群由一个名称节点和两个数据节点组成。
【问题讨论】:
-
有多少数据?
-
它是一个测试环境,因此大约有 25k 条记录的小数据集,大小约为 15MB。
-
这基本上是零数据,因此您几乎肯定会被开销和数据库抖动所淹没。
标签: hadoop mapreduce hbase sqoop