数据挖掘实验报告
生活中的大数据之通话记录分析
二〇一八年十二月
通话信息统计分析
- 项目背景
近年来,随着手机设备的逐渐普及,手机数据在城市规划中的应用受到了越来越多的关注。手机数据不仅包含用户的通话信息,而且还包含用户的位置信息,可以用于分析用户的移动轨迹和通话模式。由于手机设备的普及,手机数据中几乎包含了所有人的通话和位置信息,现在手机数据还可以用于分析城市的行为特征。这些行为特征可以被挖掘出来,给城市规划者和政府决策者提供更为全面的城市分析结果,从而做出更合理的城市规划。
二、项目介绍
(一)项目需求
1、假设某手机号通话时长大于300则定义为好友号码或亲友电话,从数据中筛选出所有符合定义的电话号码,显示电话号码、通话时长、通话日期、电话所在地、通话类型
2、查出该通话记录中通话时长最短的,显示其通话的日期、电话号码、城市、通话时间、手机类型、(呼出呼入)类型
3、统计每个手机卡的用户总量,并按大小排序4、统计通话次数最多的城市的所有电话卡的通话次数,并输出次数最多的电话卡与城市;
5、统计每个电话卡的通话次数,并按大小排序;6、查询北京市的所有通话时间
7、统计通话次数最多的城市的所有电话卡的通话次数,并输出前10个通话次数最多的电话卡
8、统计第一学期(2017-09-01~2018-01-01)的通话
9、把刚从手机里导出的数据还原至官网数据,保留日期、电话号码、城市、通话时间、手机类型、(呼出呼入)类型
10、查出该通话记录中通话时长最长的前5名,显示其通话的日期、电话号码、城市、通话时间、手机类型、(呼出呼入)类型
(二)项目实现(项目架构)
1、通过Flume工具将通话记录call_records表和号段信息number_field表导入到HDFS中保存;
2、通过Loader工具将MySQL中的call_records表和号段信息number_field表导入Hive中保存;
3、使用MapReduce对HDFS中的通话记录call_records表数据和号段信息number_field表数据进行清洗,清洗要求去除错误字段,补充不完整字段,并根据Hive分析需求取出所涉及字段按照一定格式保存到HDFS中。清洗之后要求保留如下字段:
日期phone_data 电话号码 phone_number 通话时长call_duration 类型type