Java中的Map是一種以鍵值對為基本組成單元的數據結構,它可以很方便地操作一些鍵值對的增刪改查操作。在大數據處理中,MapReduce是一種極為常用的編程模型,它將數據處理分解成了兩個核心操作:Map和Reduce。
//示例1:HashMap的使用 import java.util.HashMap; public class HashMapDemo { public static void main(String[] args) { HashMaphashmap = new HashMap (); hashmap.put("apple", 10); hashmap.put("orange", 20); int appleCount = hashmap.get("apple"); System.out.println("There are " + appleCount + " apples."); } }
在這里,我們使用Java語言實現了一個使用HashMap的例子。首先創建了一個hashmap對象,然后向其中加入了兩個鍵值對:apple-10 和 orange-20。接著我們通過get方法獲取了apple的value值,輸出了結果。對于Map類型的數據結構,我們可以很方便地通過key值獲取其對應的value值。
//示例2:MapReduce的使用 import java.io.IOException; import java.util.StringTokenizer; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.Mapper; import org.apache.hadoop.mapreduce.Reducer; import org.apache.hadoop.mapreduce.lib.input.FileInputFormat; import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; public class WordCount { public static class TokenizerMapper extends Mapper
這里給出了一段java的MapReduce實現代碼,實現的功能是計算一個文本中每個單詞的出現次數。將這個任務分解成了兩個部分:map和reduce。Map過程中將每個單詞作為key值,將1作為value值;Reduce過程中將相同key值的value值相加,得到了單詞的總共出現次數。通過這個例子,我們能十分清楚地看到MapReduce的實現過程,大量的數據的處理就依靠了這個強大的工具。