0
我有一個大小爲50MB的文件(完整的文本數據不含空格)。我想以這樣一種方式劃分這些數據,即每個映射器應該獲得5MB數據。映射器應該以(K,V)格式獲取數據,其中鍵分區數(如1,2,...)和值是純文本(5MB)。爲文件中的hadoop映射器創建自定義鍵值
我看過InputFormat (method getSplits)
,FileInputFormat (FileSplit method)
和RecordReader
,但無法理解如何生成和使用拆分爲我的映射器創建所需的自定義(K,V)。我是Hadoop MapReduce
編程的新手,所以請告訴我如何在這種情況下繼續。
什麼是完整的文本數據沒有空間?你能提供一個小例子嗎?你需要一個邏輯來爲mappers創建對。例如,wordcount示例中的邏輯是用空格分隔文本數據。 –
我的數據是一個包含字符後綴的大文件,如sdaccraggrralwghdsgfndsnvfcvnd .....在MB中。所以我想分割這些數據來在每個映射器端應用我的procesisng。並且我想確定給定的映射器是哪個分區 – Sumit
所以,你想分割這個字符串,按什麼?什麼樣的邏輯?也許你可以使用SubString,但是你感興趣的時間長度是多少? –