• 18 统计网站每日的访问次数


    1.将竞赛的数据上传HDFS,查看数据的格式

      

    通过浏览器访问hdfs,查看该文档前面的部分数据

    每条数据的字段值之间使用逗号隔开的 ,最终时间是第五个自动,获取第五个字段值的中的年月日。

      2.通过Idea创建项目mr-raceData ,基础的配置

    修改pom.xml,添加依赖

    
        
            org.apache.hadoop
            hadoop-client
            3.1.4
        
        
            junit
            junit
            4.12
        
        
            org.slf4j
            slf4j-log4j12
            1.7.30
        
    

    在resources目录下,新建log4j.properties

    log4j.rootLogger=INFO, stdout
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
    log4j.appender.logfile=org.apache.log4j.FileAppender
    log4j.appender.logfile.File=D:\\visitcount.log
    log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
    log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

    编写代码后,需要将其打成Jar包,需要修改pom.xml 

    
        
            
                maven-compiler-plugin
                3.1
                
                    1.8
                    1.8
                
            
            
                maven-assembly-plugin
                
                    
                        jar-with-dependencies
                    
                
                
                    
                        make-assembly
                        package
                 
                    
                
            
        
    

    打包使用的插件:

    指定打包的方式为jar 

    编写源代码:

    Mapper模块:

    Reducer模块:

    Driver模块:

    最后使用maven打包为Jar,按以下四步参考,clean-->validate-->compile-->package

    在当前项目下的target目录下找到打包后的jar文件

    将jar文件拷贝到桌面,并上传的master的当前用户目录下

    将竞赛日志数据取部分上传到hdfs上

    [yt@master ~]$ hdfs dfs -put access_log.txt  /bigdata/
     

    执行jar文件,实现访问每条访问次数的统计

    [yt@master ~]$ hadoop jar visitcount-1.0-SNAPSHOT.jar  com.maidu.visitcount.DailyAccessCount  /bigdata/access_log.txt  /output11/
     

    执行完成后,可以查看输出文件,看到最终的统计结果。

    查看统计的结果:

    统计成功。

  • 相关阅读:
    NLP自然语言处理简介
    训练集表达的分类规则整理
    QML与C++ 交互详解
    ArrayList和LinkList区别
    MongoDB集群之复制集,分片
    常用与业务密切相关的prompt
    等高度结构的顺序一致性
    GTK构件之杂项构件(2)
    对北京新发地当时菜品三十天内价格分布式爬取(1)---(获取当时菜品数据并构建请求数据推入redis)
    图文解释各种电阻阻值的读取方法【硬件篇】
  • 原文地址:https://blog.csdn.net/lydia88/article/details/137865447