hive数据仓库用户新闻分析简单实践
步骤一创建数据库仓库
导入数据
对small_user.csv数据进行预处理然后得到user_table.txt
Hdfs下创建bidata/dataset目录
将本地的hongshixing_table.txt上传到hdfs
查看数据
在hive中创建数据库
创建外部表
在hive中查看数据
步骤二进行 hive数据分析
查看表结构
简单查询分析
1、用聚合函数 count()计算出表内有多少条行数据
2、在函数内部加上 distinct,查出 uid 不重复的数据有多少条
3、查询不重复的数据有多少条(为了排除客户刷单情况)
关键字条件查询分析
(1)查询 2014 年 12 月 10 日到 2014 年 12 月 13 日有多少人浏览了商品
(2)以月的第 n 天为统计单位,依次显示第 n 天网站卖出去的商品的个数
键字赋予给定值为条件,对其他数据进行分析
1、取给定时间和给定地点,求当天发出到该地点的货物的数量
select count(*) from bigdata_user where province=‘江西’ and visit_data=‘2014-12-12’ and behaiver_pe=‘4’;
根据用户行为分析
(1)查询一件商品在某天的购买比例或浏览比例
select count(*) from bigdata_user where visit_data='2014-12-11’and behavior_type=‘4’;
select count(*) from bigdata_user where visit_data =‘2014-12-11’; (询有多少用户在 2014-12-11 点击了该店)
根据上面语句得到购买数量和点击数量,两个数相除即可得出当天该商品的购买率。
(2)查询某个用户在某一天点击网站占该天所有点击行为的比例(点击行为包括浏览,加入购物车,收藏,购买)
select count(*) from bigdata_user where visit_data=‘2014-12-12’;
(3)给定购买商品的数量范围,查询某一天在该网站的购买该数量商品的用户 id
select uid from bigdata_user where behaiver_type=‘4’ and visit_data=‘2014-12-12’ group by uid having count(behaiver_type=‘4’)>5;(查询某一天在该网站购买商品超过 5 次的用户 id)
用户实时查询分析
某个地区的用户当天浏览网站的次数
create table scan(province STRING,scan INT) COMMENT ‘This is the search of bigdataday’ ROW FORMAT DELIMITED FIELDS TERMINATED BY ‘\t’ STORED AS TEXTFILE; (创建新的数据表进行存
储)
insert overwrite table scan select province,count(behaiver_type) from bigdata_user where behaiver_type=‘1’ group by province;
select * from scan;(显示结果)