前阶段一个Sqoop抽取Job指定了一个xxx_id作为splitkey,后来抽取失败;想当然以为PK就是int,发现其实是varchar(https://issues.apache.org/jira/browse/SQOOP-653还不被支持),后来换了一列抽取成功;
Sqoop的splitkey在文档里只是简单的介绍了算法,但是没有介绍具体支持的splitkey column type, 查看源码支持的类型如下:BigDecimal,Boolean,Date,Float,Integer
BigDecimalSplitter.java
BooleanSplitter.java
DBSplitter.java
DateSplitter.java
FloatSplitter.java
IntegerSplitter.java
OracleDateSplitter.java
另外,关于int作为splitkey还有一个bug就是当int的范围特别小的时候,最后一个mapper会有一定倾斜(https://issues.apache.org/jira/browse/SQOOP-603)
Normal07.8 磅02falsefalsefalseEN-USZH-CNX-NONE[@more@]来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/11676357/viewspace-1060922/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/11676357/viewspace-1060922/