2013-10-25 27 views

回答

4

其實你可以。它在常見問題 - https://github.com/twitter/scalding/wiki/Frequently-asked-questions#what-if-i-have-more-than-22-fields-in-my-data-set

val toFields = (1 to 24).map(f => Symbol("field_" + f)).toList 

input 
    .read 
    .mapTo('line -> toFields) { line: String => 
    new Tuple((1 to 24).map(_.toString).map(_.asInstanceOf[AnyRef]): _*) 

    } 

最後的地圖(_ asInstanceOf [AnyRef]),相貌醜陋,所以如果你找到更好的解決辦法,讓我知道吧。

3

將你的元組換成大小寫類。它也會使你的代碼更具可讀性和安全性,分別比使用元組和集合更安全。

相關問題