上一节介绍了Hadoop 集群的部署过程,这一节我们来用Python创建一个map/reduces过程来分析IIS日志


日志文件为附件:


map脚本advanceiislog.py 内容为:


#!/usr/bin/python2.4

#coding=utf8

import fileinput

import glob

import string

import sys

#for line in fileinput.input(glob.glob("/home/hadoop/iis_log/*.log")):  

for line in sys.stdin:

   line = line.strip()         #  去掉line的两头空格,如果不去掉,插入hive的表中会有很多空记录

   print string.upper(line)


reduces脚本advanceiislogparser.py  附件中,记得修改后缀名


执行过程为:

/home/hadoop/hadoop/bin/hadoop jar /home/hadoop/hadoop/contrib/streaming/hadoop-streaming-1.2.0.jar -file mapiislog.py -mapper mapiislog.py -file advanceiislogparser.py -reducer advanceiislogparser.py -input /home/iis_log/survey.beisen.com/20130705/*.log -output /home/iis_log/survey.beisen.com/20130705/result0705


查看结果:

/home/hadoop/hadoop/bin/hadoop dfs -cat /home/iis_log/survey.beisen.com/20130705/result0705/part-00000


附件里为处理后的结果一部分!!!


下一节讲介绍hive集群的部署过程