Hive 尝试使用Sqoop将数据从DB2提取到Hbase非常慢
提前谢谢 我一直在尝试使用SQOOP将数据从DB2导入HBase表,这甚至需要很长时间来启动map和reduce。我一直只能看到映射0和减少0 我可以在DB2中使用相同的命令,结果比我预期的要快得多。但当我将其导入HBASE时。需要很长时间(10小时)。在DB2中创建了一个示例数据(150条记录),并尝试导入到HBASE,但所用时间相同Hive 尝试使用Sqoop将数据从DB2提取到Hbase非常慢,hive,db2,hbase,sqoop,Hive,Db2,Hbase,Sqoop,提前谢谢 我一直在尝试使用SQOOP将数据从DB2导入HBase表,这甚至需要很长时间来启动map和reduce。我一直只能看到映射0和减少0 我可以在DB2中使用相同的命令,结果比我预期的要快得多。但当我将其导入HBASE时。需要很长时间(10小时)。在DB2中创建了一个示例数据(150条记录),并尝试导入到HBASE,但所用时间相同 sqoop import --connect jdbc:db2://{hostname}:50001/databasename --username user
sqoop import --connect jdbc:db2://{hostname}:50001/databasename --username user --password pass --hbase-create-table --hbase-table new_tbl --column-family abc --hbase-row-key=same --query "select a,b,c,d,e concat(a,e) from table_name where \$CONDITIONS AND a>='2018-08-01 00:00:01' and b<='2018-08-01 00:00:02'" -m 1
在Sqoop方面,我也尝试过调整查询以及一些小配置
-M4在记录中创建了一些不一致性
-移除过滤器(时间戳(a,b))仍需较长时间(10小时)
HBASE性能测试结果非常好
HBase Performance Evaluation
Elapsed time in milliseconds=705914
Row count=1048550
File Input Format Counters
Bytes Read=778810
File Output Format Counters
Bytes Written=618
real 1m29.968s
user 0m10.523s
sys 0m1.140s
除非显示示例数据和数据类型,否则很难给出建议。只有当您在映射器之间公平分配记录时,额外的映射器才能正确有效地工作。如果表中有可用的主键,可以将其作为拆分列提供,映射程序将平均分配工作负载,并开始以平衡模式获取切片。在运行时,您还可以从日志本身中看到分割密钥分布和记录计数 如果您的群集没有足够的内存来存储资源,则可能需要较长的时间,而且有时由于无法分配内存来运行它,群集会长时间处于提交模式
您可以先尝试使用HDFS作为存储位置,查看性能并查看作业详细信息,以了解MapReduce行为,而不是尝试使用HBase 阅读这篇关于按列拆分的文章
HBase Performance Evaluation
Elapsed time in milliseconds=705914
Row count=1048550
File Input Format Counters
Bytes Read=778810
File Output Format Counters
Bytes Written=618
real 1m29.968s
user 0m10.523s
sys 0m1.140s