Spark 实践——基于 Spark Streaming 的实时日志分析系统
本文基于《Spark 最佳实践》第6章 Spark 流式计算。
运行环境:Ubuntu 16.04 + JDK 1.8 + Scala 2.11.12 + Spark 2.11 + Python 3.8
> 我们知道网站用户访问流量是不间断的,基于网站的访问日志,即 Web log 分析是典型的流式实时计算应用场景。比如百度统计,它可以做流量分析、来源分析、网站分析、转化分析。另外还有特定场景分析,比如安全分析,用来识别 CC 攻击、 SQL 注入分析、脱库等。这里我们简单实现一个类似于百度分析的系统。
## 1.模拟生成 web log 记录
在日志中,每行代表一条访问记录,典型格式如下:
```
46.156.87.72 - - [2018-05-15 06:00:30] "GET /upload.php HTTP/1.1" 200 0 "http://www.baidu.com/s?wd=spark" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)" "-"
```
分别代表:访问 ip,时间戳,访问页面,响应状态,搜索引擎索引,访问 Agent。
简单模拟一下数据收集和发送的环节,用一个 Python 脚本随机生成 Nginx 访问日志,为了方便起见,不使用 HDFS,使用单机文件系统。
首先,新建文件夹用于存放日志文件
```
$ mkdir Documents/nginx
$ mkdir Documents/nginx/log
$ mkdir Documents/nginx/log/tmp
```
然后,使用 Python 脚本随机生成 Nginx 访问日志,并为脚本设置执行权限, 代码见 [sample_web_log.py](https://github.com/libaoquan95/WebLogAnalyse/blob/master/sample_web_log.py)
```
$ chmod +x sample_web_log.py
```
之后,编写 bash 脚本,自动生成日志记录,并赋予可执行权限,代码见 [genLog.sh](https://github.com/libaoquan95/WebLogAnalyse/blob/master/genLog.sh)
```
$ chmod +x genLog.sh
```
执行 genLog.sh 查看效果,输入 ctrl+c 终止。
```
$ ./genLog.sh
```
## 2.流式分析
创建 Scala 脚本,代码见 [genLog.sh](https://github.com/libaoquan95/WebLogAnalyse/blob/master/WebLogAnalyse.scala)
## 3.执行
同时开启两个终端,分别执行 genLog.sh 生成日志文件和执行 WebLogAnalyse.scala 脚本进行流式分析。
执行 genLog.sh
```
$ ./genLog.sh
```
执行 WebLogAnalyse.scala, 使用 spark-shell 执行 scala 脚本
```
$ spark-shell --executor-memory 5g --driver-memory 1g --master local < WebLogAnalyse.scala
```
没有合适的资源?快使用搜索试试~ 我知道了~
Spark 实践-基于 Spark Streaming 的实时日志分析系统+源代码+文档说明
共4个文件
scala:1个
py:1个
sh:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 165 浏览量
2023-12-28
20:12:15
上传
评论 1
收藏 5KB ZIP 举报
温馨提示
1、资源内容:Spark 实践——基于 Spark Streaming 的实时日志分析系统+源代码+文档说明 2、代码特点:内含运行结果,不会运行可私信,参数化编程、参数可方便更改、代码编程思路清晰、注释明细,都经过测试运行成功,功能ok的情况下才上传的。 3、适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 4、作者介绍:某大厂资深算法工程师,从事Matlab、Python、C/C++、Java、YOLO算法仿真工作10年;擅长计算机视觉、 目标检测模型、智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、智能控制、路径规划、无人机等多种领域的算法仿真实验,更多源码,请上博主主页搜索。 -------------------------------------------------------------------------- -
资源推荐
资源详情
资源评论
收起资源包目录
WebLogAnalyse-master.zip (4个子文件)
WebLogAnalyse-master
genLog.sh 298B
readme.md 2KB
sample_web_log.py 4KB
WebLogAnalyse.scala 2KB
共 4 条
- 1
资源评论
- gumi05062024-04-16这个资源对我启发很大,受益匪浅,学到了很多,谢谢分享~
机器学习的喵
- 粉丝: 491
- 资源: 1252
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 筷手引流工具.apk
- 论文(最终)_20240430235101.pdf
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功