关注公众号:分享电脑学习
回复"百度云盘" 可以免费获取所有学习文档的代码(不定期更新)
云盘目录说明:
tools目录是安装包
res 目录是每一个课件对应的代码和资源等
doc 目录是一些第三方的文档工具

承接上一篇文档《向HBase添加日志信息

创建类NewInstallUserMapper

编写类

需要完成一个维度信息类StatsUserDimension

创建类

编写StatsUserDimension

需要创建StatsDimension

编写StatsDimension

还需要再准备一个BaseDimension

完成BaseDimension

其中StatsDimension和BaseDimension暂时不写其它内容,我们继续回去编写StatsUserDimension

需要两个维度对象StatsCommonDimension和BrowserDimension

编写StatsCommonDimension

需要DateDimension、PlatformDimension和KpiDimension三个维度信息

依次编写

首先是DateDimension

其它属性

自己添加:无参构造函数(必须给定)、给定全部参数的构造函数、有参构造方法, 主要用于构造具体的时间维度对象、get/setter方法、hashCode、equals、compareTo、toString方法实现

添加两个方法

write

readFields

实现一个buildDate方法

准备一个DateEnum枚举

完成DateEnum枚举

枚举值

valueOfName方法

继续完成buildDate方法

获取给定时间戳中对应的年份

获取给定时间戳对于的季度,取值范围:[1,4]

获取给定时间戳对于的月份,取值范围: [1,12]

获取给定时间戳对应的周数,取值范围:[1,53]

获取给定时间戳对应的天,取值范围: [1,31]

再完成PlatformDimension类维度信息

自己添加:无参构造函数,必须给定、给定全部参数的构造函数、有参构造方法, 主要用于构造具体的时间维度对象、get/setter方法

hashCode、equals、compareTo、toString方法实现

write和readFields方法

完成buildList方法

参数检验

构建平台维度信息

再完成KpiDimension

自己添加:无参构造函数,必须给定、给定全部参数的构造函数、有参构造方法, 主要用于构造具体的时间维度对象、get/setter方法

hashCode、equals、compareTo、toString方法实现

write和readFields方法

完成BrowserDimension类

自己添加:无参构造函数,必须给定、给定全部参数的构造函数、有参构造方法, 主要用于构造具体的时间维度对象、get/setter方法

hashCode、equals、compareTo、toString方法实现

添加write和readFields方法

创建一个静态方法,根据给定的浏览器信息创建一个对象

创建buildList方法

添加参数筛选

构建信息

继续完成StatsCommonDimension

自己添加无参构造函数,必须给定、给定全部参数的构造函数、有参构造方法, 主要用于构造具体的时间维度对象、get/setter方法

hashCode、equals、compareTo、toString方法实现

添加write和readFields方法

添加克隆方法:根据一个已有的对象clone一个对象出来

完成代码

继续完成StatsUserDimension类

自己添加:无参构造函数,必须给定、给定全部参数的构造函数、有参构造方法, 主要用于构造具体的时间维度对象、get/setter方法

hashCode、equals、compareTo、toString方法实现

添加write和readFields

也添加一个克隆方法

处理代码中的错误,多数都是导包未完全的问题

代码已上传到云盘

新增访客数量MR统计之NewInstallUserMapper中维度信息准备的更多相关文章

  1. 新增访客数量MR统计之NewInstallUserMapper相关准备

    关注公众号:分享电脑学习回复"百度云盘" 可以免费获取所有学习文档的代码(不定期更新)云盘目录说明:tools目录是安装包res 目录是每一个课件对应的代码和资源等doc 目录是一 ...

  2. 新增访客数量MR统计之Reduce和Runner相关准备

    关注公众号:分享电脑学习回复"百度云盘" 可以免费获取所有学习文档的代码(不定期更新)云盘目录说明:tools目录是安装包res 目录是每一个课件对应的代码和资源等doc 目录是一 ...

  3. 新增访客数量MR统计之MR数据输出到MySQL

    关注公众号:分享电脑学习回复"百度云盘" 可以免费获取所有学习文档的代码(不定期更新)云盘目录说明:tools目录是安装包res 目录是每一个课件对应的代码和资源等doc 目录是一 ...

  4. 新增访客数量MR统计之数据库准备

    关注公众号:分享电脑学习回复"百度云盘" 可以免费获取所有学习文档的代码(不定期更新)云盘目录说明:tools目录是安装包res 目录是每一个课件对应的代码和资源等doc 目录是一 ...

  5. php实现网站访客数量统计的方法(简单实现,不能防刷新)

    方法一: <?php function Counter()//定义函数 { $five = "00000";//声明变量,$five,$four等变量表示零的个数,放在数字前 ...

  6. PHP获取访客ip、系统、浏览器等信息[转]

    1.获取访客操作系统信息   <?php   function GetOs() {   if (!empty($_SERVER['HTTP_USER_AGENT'])) {   $OS = $_ ...

  7. 一个典型的MapRuduce实例------webcount(网站统计访客信息)

    统计某一特定网站的某个时辰访客人数 所用版本:hadoop2.6.5 数据样式如下: 111.111.111.111 - - [16/Dec/2012:05:32:50 -0500] "GE ...

  8. PV(访问量)、UV(独立访客)、IP(独立IP) (转)

    网站统计中的PV(访问量):UV(独立访客):IP(独立IP)的定义与区别今天使用了雅虎统计,看到里面就有这个,就说说,其实里面的uv大家可能觉得很新奇,但是和站长统计里的独立访客是一样的嘛.---- ...

  9. 10步教你来优化WordPress速度 为服务器和访客减压

    1.Cookie的静态化制作 约有80%至90%的时间,访客要花费大量的时间等你的WordPress加载静态内容.这意味着,有大部分的时间,用户浏览您的网站,他们正在等待加载,如:图像,CSS,JS脚 ...

随机推荐

  1. matplotlib 坐标轴刻度能见度问题

    matplotlib 画图时如果图像太大就会挡住了坐标轴,刻度就看不到了.可以利用zorder设置level,level越小越先绘制. 例子: 1 import matplotlib.pyplot a ...

  2. Redis哨兵日常维护

    目录 一.日常操作 指定一个从做新主 添加一个从节点 添加一个Setinel节点 一.日常操作 指定一个从做新主 有时候需要将当前主节点机器下线,并指定一个高一些性能的从节点接替 将其它从节点的sla ...

  3. Spring MVC环境搭建和配置

    1. 创建Dynamic web project 2. 修改WEB-INF/web.xml,内容如下: <?xml version="1.0" encoding=" ...

  4. Wireshark基本使用(1)

    原文出处: EMC中文支持论坛 按照国际惯例,从最基本的说起. 抓取报文: 下载和安装好Wireshark之后,启动Wireshark并且在接口列表中选择接口名,然后开始在此接口上抓包.例如,如果想要 ...

  5. mysql 连接数过多内存增长过快

    mysql连接允许长连接和短链接,但是本身建立连接会有很大开销所以一般连接mysql会使用长连接.但是全部是使用长连接后,可能会出现mysql有时占用内存涨的特别快,这是因为mysql在执行过程中临时 ...

  6. 好奇怪啊,如果邮箱JSON格式的字符串不是在一行上,那么转为JSON将转换不成功,估计是数据格式有问题吧

    好奇怪啊,如果邮箱JSON格式的字符串不是在一行上,那么转为JSON将转换不成功,估计是数据格式有问题吧, 打印出的数据必须是如下的在一行的字符串,才可以转换为JSON格式成功.

  7. .Net Core 文件打包压缩

    最近项目需要实现多文件打包的功能,尝试了一些方法,最后发现使用  ICSharpCode.SharpZipLib 最符合项目的要求. 具体实现如下: 1.在 Nuget 中安装  ICSharpCod ...

  8. BestCoder Round #66 (div.2)B GTW likes gt

    思路:一个O(n)O(n)的做法.我们发现b_1,b_2,...,b_xb​1​​,b​2​​,...,b​x​​都加11就相当于b_{x+1},b_{x+2},...,b_nb​x+1​​,b​x+ ...

  9. centos 与虚拟机

    一 创建虚拟机 1. 下载 centos7 和 vmware .centos的下载地址:见上一篇. 2.安装vmware ,具体安装过程,自行百度(一路点击确定) 3.打开vmware ,点击创建新的 ...

  10. 『动善时』JMeter基础 — 58、JMeter分布式测试

    目录 1.JMeter分布式测试概念 2.JMeter分布式测试前提条件 3.JMeter实现分布式测试 (1)在执行机中的配置 (2)在控制机中的配置 (3)启动执行机中的JMeter服务 (4)在 ...