我有以下問題:我有大量的鍵值對形式的數據。關鍵是一些id和價值 - 一些文字。我的目標是將這些對象以文本片段以某種方式「相似」分組。所以它看起來像是MapReduce的一項任務,如果將我的文本片段作爲關鍵字,並將id作爲值。但是這樣的密鑰並不是傳統的MapReduce使用方式,而且我也沒有真正意識到MapReduces框架的內部實現,所以我不確定這種方式是否有效。所以我的想法詳細是: 1.在Java中採用一些MapReduce(Hadoop,GridGain) 2.爲我的文本塊創建特殊類(如TextKey) 3.覆蓋類的equals(),打包文本比較邏輯(比如levenstein距離比較,或者其他) 4.重寫compareTo()允許MapReduce按鍵排序(比如說詞典排序) 5.可能覆蓋hashCode() 6.將我的數據映射到鍵值對:鍵 - >文本塊,包裝在TextKey類中,值 - > IDs 7.簡單地通過收集每個「相等」(實際上相似的)鍵的ID來減少MapReduce與「定製」鍵
MapReduce可以以這種方式工作嗎?右邊的地圖階段之後