题目

  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这两个字段拼接成一个字符串之后,就又是一个词频统计

第六部分 数据搜索之使用HBASE的API实现条件查询的更多相关文章

  1. 第四部分 数据搜索之使用HBASE的API实现条件查询

    因为数据清洗部分需要用到Mapreduce,所以先解决hbase的问题,可以用命令先在hbase存一下简单的数据进行查询,之后只要替换数据就可以实现了原本功能 在看该部分前,确保Hase API看了, ...

  2. hbase shell插入根据条件查询数据

    hbase shell插入根据条件查询数据 创建并插入数据: hbase(main):179:0> create 'scores','grade','course' hbase(main):18 ...

  3. 大数据学习系列之三 ----- HBase Java Api 图文详解

    版权声明: 作者:虚无境 博客园出处:http://www.cnblogs.com/xuwujing CSDN出处:http://blog.csdn.net/qazwsxpcm 个人博客出处:http ...

  4. C#_会员管理系统:开发六(数据搜索)

    增加界面中的搜索功能 会员资料管理界面(VIPManager.cs): 详细代码如下: using System; using System.Collections.Generic; using Sy ...

  5. Hbase API 多条件查询

    public static ResultScanner scan(String tableName, String family, List<String> columns, List&l ...

  6. 大数据时代数据库-云HBase架构&生态&实践

    业务的挑战 存储量量/并发计算增大 现如今大量的中小型公司并没有大规模的数据,如果一家公司的数据量超过100T,且能通过数据产生新的价值,基本可以说是大数据公司了 .起初,一个创业公司的基本思路就是首 ...

  7. 使用Sqoop从MySQL导入数据到Hive和HBase 及近期感悟

    使用Sqoop从MySQL导入数据到Hive和HBase 及近期感悟 Sqoop 大数据 Hive HBase ETL 使用Sqoop从MySQL导入数据到Hive和HBase 及近期感悟 基础环境 ...

  8. Elasticsearch 数据搜索篇·【入门级干货】

    ES即简单又复杂,你可以快速的实现全文检索,又需要了解复杂的REST API.本篇就通过一些简单的搜索命令,帮助你理解ES的相关应用.虽然不能让你理解ES的原理设计,但是可以帮助你理解ES,探寻更多的 ...

  9. 【hbase】——Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询

    1.搭建环境 新建JAVA项目,添加的包有: 有关Hadoop的hadoop-core-0.20.204.0.jar 有关Hbase的hbase-0.90.4.jar.hbase-0.90.4-tes ...

随机推荐

  1. org.springframework.web.util.IntrospectorCleanupListener作用

    回收那些不会主动回收,导致内存泄漏的垃圾,如javabeans

  2. HDU-6862 Hexagon (2020HDU 多校 D8 H)

    1008 题意:半径为n的六边形(由半径为1的小六边形组成),从某一个小六边形出发有六个方向,找到一条转向次数最多的路径(用方向表示)遍历所有的六边形(一个六边形只访问一次). 题解:先画出n=3/4 ...

  3. 3、MyBatis教程之CURD操作

    4.CURD操作 1.查询 根据用户 Id查询用户 在UserMapper中添加对应方法 public interface UserMapper { List<User> getUserL ...

  4. [题解] [NOI Online 2021 入门组 T3] 重力球

    题目大意 在一个 \(n\times n\) 的矩形中,题目会给出 \(m\) 个障碍物.有两个小球,你可以选定四个方向(上下左右)的其中一个,小球会朝着这四个方向一直滚动,直到遇到障碍物或是矩形的边 ...

  5. 从I/O多路复用到Netty,还要跨过Java NIO包

    本文是Netty系列第4篇 上一篇文章我们深入了解了I/O多路复用的三种实现形式,select/poll/epoll. 那Netty是使用哪种实现的I/O多路复用呢?这个问题,得从Java NIO包说 ...

  6. 实现FTP+PAM+MySQL环境,批量配置虚拟用户

    实现FTP+PAM+MySQL环境,批量配置虚拟用户 搭建环境: CentOS6.5或CentOS6.7 [root@vhost3 ~]# uname -a Linux vhost3 2.6.32-5 ...

  7. [Azure Devops] 使用 Azure Pipelines 实现 CI

    1. 什么是 Azure Pipelines Azure Pipelines 会自动构建和测试代码项目,以将其提供给其他人.它适用于任何语言或项目类型.Azure Pipelines 结合了持续集成 ...

  8. Vulkan移植GpuImage(三)从A到C的滤镜

    前面移植了几个比较复杂的效果后,算是确认了复杂滤镜不会对框架造成比较大的改动,开始从头移植,现已把A到C的所有滤镜用vulkan的ComputeShader实现了,讲一些其中实现的过程. Averag ...

  9. 期末考试复习c#时总结的抽象类与接口的一些区别

    抽象类: (1)抽象类中可以定义抽象方法,属性,变量 (2)抽象类的派生类必须实现所有的抽象方法.要求所有的派生非抽象类都要用override重写实现抽象方法. (3)抽象类可以存放抽象方法,属性,也 ...

  10. Java(215-231)【Object类、常用API】

    1.Object类的toString方法 java.lang.Object 类 Object 是类层次结构的根(父)类. 每个类(Person,Student...)都使用 Object 作为超(父) ...