zoukankan      html  css  js  c++  java
  • 第六部分 数据搜索之使用HBASE的API实现条件查询

    题目

    1. 使用HADOOP的MAPReduce,实现以下功能:

    (1)基于大数据计算技术的条件查询:使用mapreduce框架,实现类似Hbase六个字段查询的功能

    (2)时段流量统计:以hh:mm:ss格式输入起始时间和结束时间,统计这段时间之内的总搜索次数(就是记录数)、各个查询词搜索次数,各个网站(URL)的访问量。

    注意:同一个网站的URL算在同一个网站上

    如women.sohu.com/20070508/n249762812.shtml,

    s.sohu.com/20080220/n255256097.shtml,

    peng.blog.sohu.com等不同的sohu网页都统计为sohu网站的访问次数。

    (3)用户使用频率统计:统计每个用户一天内的搜索次数

    (4)访问行为统计:根据该页面在搜索结果中的排名(第4字段),统计不同排名的结果被访问的情况。如排名第一的结果被访问次数,排名第二的结果被访问次数

    说到mapreduce,我们就必须先把wordcount弄懂之后,那么剩下的就是举一反三

    观看视频

    wordcount

    确保看懂视频中的词频统计,讲得真的非常好。

    注意

    由于大文件不能直接在idea上面跑,所以先在小文件上面操作,而且是直接对hdfs操作即可

    分析

    (1)中的判断条件多了一点,然后将reduce的输出结果改成NullWritable就可以

    (2)难点:主要是:同一个网站的 URL 算在同一个网站上,采用的办法就是列出所有的域名(可以到网站爬取)后缀用 split 进行切割,然后去的切割结果的第一部分,接着再按“.”划分得到最后的一个切割结果,即为需要的部分。

    例如

    原本网址:entertainment.anhuinews.com/system/2004/12/01/001062418.shtml
    split域名切割:entertainment.anhuinews. /system/2004/12/01/001062418.shtml
    取第一部分:entertainment.anhuinews.
    按.切割:entertainment anhuinews
    取最后一部分anhuinews
    统计
    

    (3)就是一个简单的词频统计

    (4)将排名+URL这两个字段拼接成一个字符串之后,就又是一个词频统计

  • 相关阅读:
    golang sql连接池的实现解析
    golang使用rabbitmq正确姿势
    golang使用rabbitmq多个消费者
    golang网关之手动实现反向代理
    golang exec.Command执行脚本 杀死子进程
    exec: "gcc": executable file not found in %PATH%
    golang操作mongodb
    grpc之 普通流 、服务端流、 客户端流 、双向流模式
    grpc-POST提交主订单数据(gateway实现http api)
    grpc之protobuf常用语法速学
  • 原文地址:https://www.cnblogs.com/10134dz/p/13234707.html
Copyright © 2011-2022 走看看