项目总体数据处理流程详解|学习笔记

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 快速学习项目总体数据处理流程详解

开发者学堂课程【大数据实战项目:反爬虫系统(Lua+Spark+Redis+Hadoop 框架搭建)第一阶段项目总体数据处理流程详解】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/669/detail/11582


项目总体数据处理流程详解

 

内容介绍

一、课堂目标

二、数据流程的文字描述

三、数据流程的 ppt 展示

四、知识点总结


一、课堂目标

目标:

掌握反爬虫项目处理的具体流程

 

二、数据流程的文字描述

1. 数据采集

通过 lua 采集收集数据

将收集的数据打入 kafka

2. 数据的预处理

在 kafka 中读取数据到程序中

在数据库读取规则到程序

结合数据于规则将预处理完毕的数据发回 kafka

3. 数据计算

实时计算(爬虫的识别)

在数据库中读取数据到程序

将识别的爬虫写入

离线计算

领导想看的报表等

经与处理的数据写入 HDFS

计算离线数据并写入 Myspl

4. 前端展现

对系统在运行期间的数据采集状态、数量进行监控、对离线指标的结果进行前端展现

不用去写代码,因为这与爬虫识别没有关系,仅作为结果展现,把数据写入 Myspl即可,前端展示由前端工作室实现。

 

三、数据流程的 ppt 展示

(1)数据流程项目的本质

用户端:

如去哪网、携程等为用户提供订票服务的界面或手机上的 qpp

企业端如界面所示:图片1.png

项目本质上是在用户端采集数据,经过中间部分的识别、计算预处理等环节再到企业端展现的过程

以去哪网为例

用户端为官网界面

企业端为供公司内部监控使用的 web 界面,

如下所示:

图片2.png

本质上是将官网采集的数据到web界面展示的过程

(2) 数据流程的 ppt 展示

第一阶段:首先在用户端官网上需要布置查询与预定的服务器

如下所示:

图片3.png

图中有三个框

举例为有三个服务器,这三台服务器分别部署的是 Nginx 服务器部署完成后,部署Lua 脚本1。

第二阶段:脚本部署完成后,接下来在企业内部部署一个采用 kafka 集群技术的消息队列。

前端采集完数据后打入 Kafka 当中,该过程为数据采集。

第三阶段:数据预处理时运用到 SparkStreaming 技术

首先将 kafka 采集到的数据运行到 SparkStreaming 程序当中。

接下来,在企业端存在 Myspl 数据库

Myspl 数据库部署在数据预处理阶段数据过滤规则,历史爬虫以及供爬虫识别使用的的其他的规则

数据预处理阶段把数据接收过来,再从数据库当中把规则读取过来,第四阶段:进行分析与处理,再将结果返回到 Kafka 当中,这是数据预处理阶段的过程

第五阶段:运用 SparkStreaming 技术的实时计算(爬虫识别),将 Kafka 的数据读取过来

此时数据为经过预处理的数据

同时将企业端有关实时计算爬虫识别的规则录入

结合数据与规则将爬虫识别出来

第六阶段:将识别出来的爬虫录入企业端的 Redis

第七阶段: 读取已知的爬虫返回到前端,如果爬虫再次查询即可剔除掉

第八阶段:离线报表的制作,将第五阶段的数据不经过任何处理写入大数据 HDFS中,操作本质是将第四阶段预处理的数据由第五阶段传送写入 HDFS,运用到离线分析。

离线分析运用 SparkSQL 技术

图片4.png

第九阶段:分析完成后,将结果写入 Myspl 数据库,此时界面可显示指标,具体如下:

(3) 数据处理流程知识补充与图集分析

图片5.png

数据采集采用黑色字体

1. 通过 Lua 采集收集数据,

2. 将收集的数据打入 Kafka

数据预处理采用蓝色字体

3-1在 Kafka 中读取数据在程序中

3-2在数据库读取规则到程序

4将预处理完毕的数据写回 Kafka

实时计算(爬虫识别)采用橘色字体

离线计算则采用紫色

两者都属于数据计算

5-1在 kafka 中读取预处理后的数据到程序中

5-2在数据库中读取数据到程序

5. 将识别到的爬虫写入

8将预处理后的数据写入 HDFS

9. 计算离线离线指标数据并写入 Myspl

另外,第七步剔除的动作与第二阶段相同通过脚本实现

最后,前端展现:通过界面数据、指标的展现作为项目的过程,只需将数据写入web 便可自动展现

 

四、知识点总结

课堂目标:掌握反爬虫项目处理的具体流程

反爬虫数据流程总结

数据采集

1.通过 Lua 采集收集数据,

2.将收集的数据打入 Kafka

数据预处理

3-1在 Kafka 中读取数据在程序中

3-2在数据库读取规则到程序

4将预处理完毕的数据写回Kafka

实时计算(爬虫识别)

5-1在 kafka 中读取预处理后的数据到程序中

5-2在数据库中读取数据到程序

6. 将识别到的爬虫写入

离线计算

8.将预处理后的数据写入 HDFS

9.计算离线离线指标数据并写入 Myspl

离线计算与实时计算均属于数据计算

前端展现

相关文章
|
数据采集 存储 分布式计算
一篇文章搞懂数据仓库:数据治理(目的、方法、流程)
一篇文章搞懂数据仓库:数据治理(目的、方法、流程)
10398 2
一篇文章搞懂数据仓库:数据治理(目的、方法、流程)
|
5月前
|
数据采集 SQL 数据可视化
79 网站点击流数据分析案例(整体技术流程及架构)
79 网站点击流数据分析案例(整体技术流程及架构)
56 0
|
8月前
|
数据采集 SQL 数据可视化
人人都会点数据分析 | 了解数据分析的整体流程
人人都会点数据分析 | 了解数据分析的整体流程
124 0
|
11月前
|
存储 数据可视化 测试技术
「数据架构」5分钟学会数据流程图:客户服务系统示例
「数据架构」5分钟学会数据流程图:客户服务系统示例
|
存储 运维 分布式计算
数据分析和数据开发的区别 - 初始
数据分析和数据开发的区别 初始 数据分析(DA:Data Analysis)和数据开发/数据仓库工程师(DE:Data Extraction)究竟有什么区别,工作职责和工作内容上的差异是什么?
370 0
|
设计模式 分布式计算 搜索推荐
报表统计_执行框架_设计 | 学习笔记
快速学习报表统计_执行框架_设计
90 0
报表统计_执行框架_设计 | 学习笔记
|
消息中间件 数据库 RocketMQ
生成预订单流程分析1|学习笔记
快速学习生成预订单流程分析1
96 0
生成预订单流程分析1|学习笔记
|
消息中间件 数据库 RocketMQ
生成预订单流程分析2|学习笔记
快速学习生成预订单流程分析2
49 0
|
数据采集 机器学习/深度学习 算法
整体流程介绍 | 学习笔记
快速学习整体流程介绍
108 0
整体流程介绍 | 学习笔记
|
大数据 测试技术 开发者
项目分析_流程分析|学习笔记
快速学习项目分析_流程分析
86 0
项目分析_流程分析|学习笔记