| 摘要 | 第5-6页 |
| ABSTRACT | 第6-7页 |
| 第一章 绪论 | 第11-16页 |
| 1.1 研究背景及意义 | 第11-12页 |
| 1.2 国内外研究现状 | 第12-14页 |
| 1.3 研究目标及内容 | 第14-15页 |
| 1.4 论文结构 | 第15-16页 |
| 第二章 相关技术综述 | 第16-30页 |
| 2.1 Web日志研究概述 | 第16-17页 |
| 2.2 大数据计算工具Storm | 第17-23页 |
| 2.2.1 Storm的基本架构 | 第17-18页 |
| 2.2.2 Storm核心概念 | 第18-20页 |
| 2.2.3 Storm的可靠性 | 第20页 |
| 2.2.4 Storm的技术处理模型 | 第20-21页 |
| 2.2.5 Storm的高级抽象Trident和Trident-ML | 第21-23页 |
| 2.2.5.1 Trident | 第21-22页 |
| 2.2.5.2 Trident-ML | 第22-23页 |
| 2.3 其他相关分布式技术介绍 | 第23-27页 |
| 2.3.1 海量日志收集系统Flume | 第23-24页 |
| 2.3.2 分布式服务协调系统Zookeeper | 第24-25页 |
| 2.3.3 分布式消息发布-订阅系统Kafka | 第25-26页 |
| 2.3.4 分布式监控系统Ganglia | 第26-27页 |
| 2.4 K-means++算法概述 | 第27-29页 |
| 2.5 本章小结 | 第29-30页 |
| 第三章 系统需求分析和架构实现 | 第30-40页 |
| 3.1 系统需求分析 | 第30-31页 |
| 3.2 系统架构设计 | 第31-37页 |
| 3.2.1 日志收集模块 | 第32-33页 |
| 3.2.2 日志缓存模块 | 第33-34页 |
| 3.2.3 日志计算模块 | 第34-36页 |
| 3.2.4 结果存储模块 | 第36页 |
| 3.2.5 结果展示模块 | 第36页 |
| 3.2.6 系统监控模块 | 第36-37页 |
| 3.3 用户聚类的技术实现分析 | 第37-39页 |
| 3.3.1 K-means++的实现原语Trident | 第37页 |
| 3.3.2 Web日志信息的特征抽象 | 第37-38页 |
| 3.3.3 K-means++在Trident-ML上的执行流程分析 | 第38-39页 |
| 3.4 本章小结 | 第39-40页 |
| 第四章 系统平台搭建与结果分析 | 第40-67页 |
| 4.1 系统平台搭建 | 第40-49页 |
| 4.1.1 实验环境准备 | 第40-41页 |
| 4.1.2 日志预处理与实时日志生成 | 第41页 |
| 4.1.3 各模块的配置与整合 | 第41-49页 |
| 4.2 Storm实时计算的流程设计与代码实现 | 第49-60页 |
| 4.2.1 Storm实时计算的流程设计 | 第49-50页 |
| 4.2.2 Storm实时计算的代码实现 | 第50-60页 |
| 4.2.2.1 Topology的构建与任务提交 | 第50-52页 |
| 4.2.2.2 日志过滤Bolt的实现 | 第52页 |
| 4.2.2.3 统计分析Bolt的实现 | 第52-58页 |
| 4.2.2.4 TridentTopology的构建与任务提交 | 第58-60页 |
| 4.2.2.5 用户聚类在Trident-ML上的实现 | 第60页 |
| 4.3 系统功能测试与结果分析 | 第60-66页 |
| 4.3.1 统计结果的展示与分析 | 第61-63页 |
| 4.3.2 用户聚类结果的展示与分析 | 第63-66页 |
| 4.4 本章小结 | 第66-67页 |
| 第五章 系统的性能优化研究 | 第67-72页 |
| 5.1 Storm配置对系统性能的影响 | 第67-69页 |
| 5.1.1 不同并发度对系统性能的影响 | 第68页 |
| 5.1.2 不同Spout pending值对系统性能的影响 | 第68-69页 |
| 5.2 系统性能的优化方向 | 第69-70页 |
| 5.3 本章小结 | 第70-72页 |
| 第六章 总结与展望 | 第72-74页 |
| 6.1 论文工作总结 | 第72页 |
| 6.2 不足与展望 | 第72-74页 |
| 参考文献 | 第74-77页 |
| 致谢 | 第77页 |