统计分析

有代码,配合代码 一起看

3.2 使用MapReduce对数据进行清洗,把原始数据清洗后,放到hdfs的/hmbbs_cleaned目录下,每天产生一个子目录。
3.3 使用hive对清洗后的数据进行统计,如何处理?如下:
3.3.1 建立一个外部分区表,脚本如下(为什么是外部的,因为我们清洗后的数据放到/hmbbs_cleaned下,2分左右,再仔细看,回头看看分区别是什么,然后在来体会一下。)
    CREATE EXTERNAL TABLE hmbbs(ip string, atime string, url string) PARTITIONED BY (logdate string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t‘ LOCATION ‘/hmbbs_cleaned‘;
3.3.2 增加分区,脚本如下
    ALTER TABLE hmbbs ADD PARTITION(logdate=‘2013_05_30‘) LOCATION ‘/hmbbs_cleaned/2013_05_30‘;
    上面这个命令应该放到脚本中。原因:因为我们每天产生一个子目录,子目录中放了我们清洗后的文件,那么每天都需要加一个分区。自然就要每天执行一次这个语句。
    把代码增加到upload_to_hdfs.sh中,内容如下
    hive -e "ALTER TABLE hmbbs ADD PARTITION(logdate=‘${yesterday}‘) LOCATION ‘/hmbbs_cleaned/${yesterday}‘;"
        hive -e的意思是在hive环境之外执行hive命令,我们之前执行的命令时,最开始都执行一个hive命令,此时进入了hive的终端(命令行),
        然后执行语句,但是如果我们执行quit命令,退出hive终端,再执行上述命令,是不可以的,需要加上hive -e+命令,命令需要用引号括起来。

3.3.3 统计每日的pv,代码如下
      CREATE TABLE hmbbs_pv_2013_05_30 AS SELECT COUNT(1) AS PV FROM hmbbs WHERE logdate=‘2013_05_30‘;
      统计每日的注册用户数,代码如下
      CREATE TABLE hmbbs_reguser_2013_05_30 AS SELECT COUNT(1) AS REGUSER FROM hmbbs WHERE logdate=‘2013_05_30‘ AND INSTR(url,‘member.php?mod=register‘)>0;
      统计每日的独立ip,代码如下
      CREATE TABLE hmbbs_ip_2013_05_30 AS SELECT COUNT(DISTINCT ip) AS IP FROM hmbbs WHERE logdate=‘2013_05_30‘;
      统计每日的跳出用户,代码如下
      CREATE TABLE hmbbs_jumper_2013_05_30 AS SELECT COUNT(1) AS jumper FROM (SELECT COUNT(ip) AS times FROM hmbbs WHERE logdate=‘2013_05_30‘ GROUP BY ip HAVING times=1) e;
      把每天统计的数据放入一张表(其实不合并,也可以,不过用SQOOP导出的时候,mysql那里也需要有4个表去接收)
                     (我们既然都用了selecet语句了,应该就会产生数据了,为什么非要创建一个表,因为sqoop导出的只能是表目录,你给他一个select语句,他搞不明白。)
      CREATE TABLE hmbbs_2013_05_30 AS SELECT ‘2013_05_30‘, a.pv, b.reguser, c.ip, d.jumper FROM hmbbs_pv_2013_05_30 a JOIN hmbbs_reguser_2013_05_30 b ON 1=1 JOIN hmbbs_ip_2013_05_30 c ON 1=1 JOIN hmbbs_jumper_2013_05_30 d ON 1=1 ;
创建如上4个表的目的就是要把这四个hive表中的数据导入到mysql中。
3.4 使用sqoop把数据导出到mysql中(需要创建数据库,并且创建需要导出到的那张表)                                    默认分隔符(分割列的)   这个目录应该是hdfs中的,因为我们hive创建的表是放在hdfs中,也就是说,我们通过表连接合并成一个表之后,这个表存放在hdfs中的位置的地址
    sqoop export --connect jdbc:mysql://hadoop0:3306/hmbbs --username root --password admin --table hmbbs_logs_stat --fields-terminated-by ‘\001‘ --export-dir /usr/hive/warehouse/hmbbs_2013_05_30

3.5完善执行的批量脚本
3.5.1初始化数据(对历史数据进行处理)
3.5.2每日执行的脚本(就是把历史数据执行完了,然后对每天产生的文件进行处理)

hive删除表命令 drop table 表名
查看hive中的函数 进入hive  执行 show function命令
查看某一个函数的具体信息  discribe function 函数名   
时间: 2024-10-10 08:36:40

统计分析的相关文章

地统计分析笔记——探索数据

来自:http://blog.csdn.net/kikitamoon/article/details/49925147 在执行地统计分析之前,浏览.熟悉.检查自己的数据是至关重要的.绘制和检查数据是地统计分析过程中的必要阶段,我们可以从这些工作中获得一些先验知识,指导后续的工作. Stage 1 绘制数据 通过ArcMap的图层渲染方案绘制数据,我们可以获得对数据的第一印象. 例如,使用单一符号渲染了解采样点的疏密分布,通过分类渲染了解采样点高值低值的分布,等等. Stage 2 检查数据 绘制

大v用户数据统计分析

1,统计数据的基本情况,包括微博总数,用户总数,最活跃和最不活跃的用户id #!/bin/sh source_dir=/home/minelab/data/DATA source_file_name=userinfo_00_au_1_out source_file=$source_dir/$source_file_name #source_file=test.src out_dir=/home/minelab/liweibo/daV out_file_name=basic_satic.txt o

多元统计分析课程

                                                                                                           前言 掌握一门核心课程,一定要从其定义,应用环境,和其他知识点之间的联系入手,纵向对比,横向对比,比较相同点,比较不同点.这样才能加深对知识的掌握,做到灵活应用.从思想方法与具体实践来讲,一旦理解和知识点,思想方法容易记忆,很容易想到,但是具体的算法可能容易忘记,到使用的时候有点无能为

MVC与单元测试实践之健身网站(八)-统计分析

?统计分析模块与之前的内容相对独立,用于记录并跟踪各部位围度的变化.还需提供对所作计划的分析,辅助使计划更合理. 一 围度记录 这儿可以记录各项身体围度指标,现在包括体重在内身体上上下下基本全部提供了,虽然貌似用处不大,所以这个界面并不做非空校验,但会有对输入格式的限制,必须是整数或一位小数. 二 围度变化 有了上一步记录的数据后,就可以基于这些数据,以图表的形式直观地反映围度的变化了. a) 模板提供了各种图表插件,最后选择了flotchart,需求比较基础,完全可以满足.用起来也挺方便: 放

Java学习-025-类名或方法名应用之二 -- 统计分析基础

前文讲述了类名或方法的应用之一调试源码,具体请参阅:Java学习-025-类名或方法名应用之一 -- 调试源码 此文主要讲述类名或方法应用之二统计分析,通过在各个方法中插桩(调用桩方法),获取方法的调用关系.通过调用关系,我们可以统计出被调用次数比较多的方法,同时也可以构建全系统调用关系链:通过操作重要业务流程,可以统计组成重要业务流程的主要方法,加强相应的单元测试.功能.安全.性能等方面的测试.对于软件产品质量控制存在非凡的意义. 下面构建的演示示例调用关系如下所示: GetClassMeth

R in action读书笔记(5)-第七章:基本统计分析

7.1描述性统计分析 > vars<-c("mpg","hp","wt") > head(mtcars[vars])                    mpg  hp    wt Mazda RX4         21.0 110 2.620 Mazda RX4 Wag     21.0 110 2.875 Datsun 710        22.8  93 2.320 Hornet 4 Drive    21.4 11

统计分析SQL Server Profiler 跟踪的SQL

--跟踪文件读入到表中分析 SELECT * INTO ZGSJY FROM fn_trace_gettable('E:\wxxcdbprofiler.trc', default); --某时间内,最耗时SQL select TOP 100 SUBSTRING(Textdata,1,660) as '名称', count(*) as '数量', sum(duration/1000) as '总运行时间ms', avg(duration/1000) as '平均运行时间ms', avg(cpu)

网站数据统计分析中的日志收集原理及其实现

> 网站数据统计分析工具是网站站长和运营人员经常使用的一种工具,比较常用的有谷歌分析.百度统计 和 腾讯分析等等.所有这些统计分析工具的第一步都是网站访问数据的收集.目前主流的数据收集方式基本都是基于javascript的.本文将简要分析这种数据收集的原理,并一步一步实际搭建一个实际的数据收集系统. 1.数据收集原理分析 简单来说,网站统计分析工具需要收集到用户浏览目标网站的行为(如打开某网页.点击某按钮.将商品加入购物车等)及行为附加数据(如某下单行为产生的订单金额等).早期的网站统计往往只收

基本的统计分析

在日常工作中,拿到一批数据后,首先应该做的是基本统计分析,即通常所说的描述统计.描述统计可以帮助我们进一步掌握数据分布的基本特征和规律,它主要从三个方面进行测量和描述:一是数据分布的集中趋势,反映各数据向其中心值靠拢或聚集的程度:二是分布的离散程度,反映数据远离其中心值的趋势:三是分布的形状,反映数据分布的偏度和峰度.这三个方面从 同的角度反映了数据分布的数据分布的特征.

R You Ready?——大数据时代下优雅、卓越的统计分析及绘图环境

作者按:本文根据去年11月份CSDN举办的“大数据技术大会”演讲材料整理,最初发表于2012年2月期<程序员>杂志. 1. 历史 R(R Development Core Team, 2011)语言由新西兰奥克兰大学的 Ross Ihaka 和 Robert Gentleman 两人共同发明,其词法和语法分别源自 Scheme 和 S 语言,R 语言一般认为是 S 语言(John Chambers, Bell Labs, 1972)的一种方言.R 是“GNU S”, 一个自由的.有效的.用于统