电信客服
- 需求: 统计每天、每月以及每年的每个人的通话次数及时长
- 项目架构:
- 生产数据(ProduceLog)
- 随机生成电话号(主被叫)
- 随机生成通话建立时间
- 随机生成通话时长(30min内)
- 生成日志写入文件,2条/s
- flume(exec-kafka)
- Source:exec,监听生成数据
- Channel:MemoryChannel
- Sink:KafkaSink
- kafka(消息队列)
- 控制台消费者测试
- IDEA消费者直接打印数据
- HBase(消费数据存储)
- HBaseUtil(建表,预分区等)
- HBaseDAO(保存数据的规则)
- 消费数据到HBase存储
- 查询数据方式
- 协处理器
- MapReduce(分析业务指标)
- 从HBase读取数据
- Mapper分析6个维度指标
- Reducer聚合6个维度指标
- 自定义OutPut将数据写入MySQL
- Web(前端展示)
- 生产数据(ProduceLog)
- 环境准备
- hadoop2.7.2
- zookeeper3.4.10
- hbase1.3.1
- flume1.7.0
- kafka2.11-0.11.0.0
- 数据结构:
- call1:第一个手机号码
- call1_name:第一个手机号码的姓名
- call2:第二个手机号码
- call2_name:第二个手机号码的姓名
- date_time:建立通话的时间
- date_time_ts:建立通话的时间(时间戳)
- duration:通话持续时间