zoukankan      html  css  js  c++  java
  • Spark API编程动手实战-06-对搜狗日志文件深入实战操作

    本节中所用到的内容是来自搜狗实验室,网址为:http://www.sogou.com/labs/dl/q.html

    我们使用的是迷你版本的tar.gz格式的文件,其大小为87K,下载后如下所示:


    上传到服务器后,解压并查看:





    查看Sogou文件内容:


    该文件的格式如下所示:

    访问时间 用户ID 查询词 该URL在返回结果中的排名 t用户点击的顺序号 用户点击的URL


    把解压后的文件上传到hdfs的data目录下:



    查看web控制台:


    大功告成,文件上传hdfs成功


    接下来 我们使用Spark获得搜索结果排名第一同时点击结果排名也是第一的数据量,也就是第四列值为1同时第五列的值也为1的总共的记录的个数。

    先读取SogouQ.mini文件:



    count操作后:


    count之后有2000条记录

    首先过滤出有效的数据:


    可以发现该文件中的数据都是有效数据。

    下面使用spark获得搜索结果排名第一同时点击结果排名也是第一的数据量:


    可以发现搜索结果排名第一同时点击结果排名也是第一的数据量为794条;

    使用toDebugString查看一下其lineage:


    HadoopRDD->MappedRDD->MappedRDD->FilteredRDD->FilteredRDD->FilteredRDD


    下面看用户ID查询次数排行榜:


    对sortedSogouQRdd进行collect操作:(不要乱collect 会出现OOM的)


    结果:



    把结果保存在hdfs上:



    hdfs命令行查询:

    part-0000:


    part-00001:



    web控制台查询:



    我们通过hadoop命令把上述两个文件的内容合并起来:



    查看一下合并后的本地文件:



    使用head命令查看其具体内容:



    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    JavaScript 用new创建对象的过程
    从输入URL到浏览器显示页面发生了什么
    JS中的this对象详解
    JS事件
    vue如何正确销毁当前组件的scroll事件?
    pg创建存储过程批量提交
    mysql去掉明文密码不安全提示
    解决npm安装node-sass太慢及编译错误问题
    解决vs code编写python输出中文乱码问题
    EditPlus配置Java编译器
  • 原文地址:https://www.cnblogs.com/stark-summer/p/4829800.html
Copyright © 2011-2022 走看看