本地文件复制到hadoop上:
hadoop fs -copyFromLocal testdata1.txt /group/d_sdo_data/user/lixuan/testdata
查看文件内容
hadoop dfs -cat /group/d_sdo_data/user/lixuan/testdata/_result1.txt
运行 mapreduce,注意的指定mr的主函数是需要包含包名,不要要hadoop的jar。
hadoop jar /home/lixuan/mr-0.1-SNAPSHOT.jar com.mr.t0.Main /group/d_sdo_data/user/lixuan/testdata/testdata1.txt /group/d_sdo_data/user/lixuan/testdata/testdata_result1.txt
注意,生成的结果的是个文件夹。testdata_result1.txt hadoop会把他当成一个文件夹。里面的内容:
Found 2 items
-rw-r----- 3 lixuan cug_d_sdo_data 0 2012-02-28 15:40 /group/d_sdo_data/user/lixuan/testdata/testdata_result2.txt/_SUCCESS
-rw-r----- 3 lixuan cug_d_sdo_data 48 2012-02-28 15:40 /group/d_sdo_data/user/lixuan/testdata/testdata_result2.txt/part-00000
在处理文件的时候,要注意阶段的大小。
否则会包异常:
java.lang.NumberFormatException: For input string: "5656661112234"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:461)
at java.lang.Integer.parseInt(Integer.java:499)
at com.mr.t0.MapMain.map(MapMain.java:26)
hadoop fs -copyFromLocal testdata1.txt /group/d_sdo_data/user/lixuan/testdata
查看文件内容
hadoop dfs -cat /group/d_sdo_data/user/lixuan/testdata/_result1.txt
运行 mapreduce,注意的指定mr的主函数是需要包含包名,不要要hadoop的jar。
hadoop jar /home/lixuan/mr-0.1-SNAPSHOT.jar com.mr.t0.Main /group/d_sdo_data/user/lixuan/testdata/testdata1.txt /group/d_sdo_data/user/lixuan/testdata/testdata_result1.txt
注意,生成的结果的是个文件夹。testdata_result1.txt hadoop会把他当成一个文件夹。里面的内容:
Found 2 items
-rw-r----- 3 lixuan cug_d_sdo_data 0 2012-02-28 15:40 /group/d_sdo_data/user/lixuan/testdata/testdata_result2.txt/_SUCCESS
-rw-r----- 3 lixuan cug_d_sdo_data 48 2012-02-28 15:40 /group/d_sdo_data/user/lixuan/testdata/testdata_result2.txt/part-00000
在处理文件的时候,要注意阶段的大小。
否则会包异常:
java.lang.NumberFormatException: For input string: "5656661112234"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:461)
at java.lang.Integer.parseInt(Integer.java:499)
at com.mr.t0.MapMain.map(MapMain.java:26)