名單的笛卡爾積使用Hadoop MapReduce的的Hadoop自身
我有一個列表作爲輸入:
- 一個
- 乙
- Ç
而且我想得到列表的笛卡爾積:
- A => A,F(A,A)
- A => B,F(A,B)
- A => C,F(A,C)
- B => A,F(B,A)
- B => B,F(B,B)
- B => C,F(B,C)
- C => A,F(C,A)
- C => B,f(C,B)
- C => C,f(C,C)
f()是爲一對鍵提供值的函數。
如何以簡單的方式在Java中使用Hadoop MapReduce?
當然,我無法在內存中保存整個輸入列表。
謝謝!
http://stackoverflow.com/questions/1719594/iterative-cartesian-product-in-java – goat
嗨Chris, 在Java中進行笛卡兒乘法的確很簡單,因爲您可以在同一代碼中迭代兩個數組。 但是,我需要一個針對Hadoop的解決方案,即數據流式傳輸和分區。 謝謝! –
你可以使用豬拉丁語嗎?據我所知,Pig使用一種棘手的方式來做Cartesian產品(在Pig中稱爲交叉連接)。這是一個複雜的方式,所以我不建議你自己來實現它。 – zsxwing