我在前一個線程Hadoop: How can i have an array of doubles as a value in a key-value pair?中詢問了一個非常相似的問題。Hadoop:基元數組作爲鍵值對中的值
我的問題是,我想通過一個雙數組作爲地圖的值來減少相位。我得到的答案是序列化,轉換爲文本,傳遞給reducer並反序列化。這是一個很好的解決方案,但它像序列化和反序列化兩次。
ArrayWritable只接受實現Writable的類型,例如FloatWritable。所以另一個解決方案是將我的雙精度數組轉換爲DoubleWritable的數組。但是這也需要一些時間,Writable是一個非常昂貴的資源。沒有像ArrayWritable array = new ArrayWritable(Double.class)這樣的非常簡單的解決方案?
是的,我相信這會適合我的情況。我受到ArrayWritable的影響,從未想到這一點。 – jojoba
是的,它完全符合我的情況。非常感謝你 – jojoba
不客氣) – szhem