数据库 ER 图介绍|学习笔记

简介: 快速学习数据库 ER 图介绍

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

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


数据库 ER 图介绍

 

内容介绍

一.数据库

二.ER 图

 

前面把浏览器兼容性和分解策略讲完。采集,预处理,计算,展现这四个过程被介绍。

 

一.数据库

1.数据库定义

要实现的界面可视化效果需要用到数据库。数据库是数据处理流程中企业内部 web界面下的 mysql。

图片1.png

二.ER 图

1.ER 图定义

Er 图:介绍数据库内容

目标:了解反爬虫项目使用到的关系数据库数据表。

图片2.png

用户角色管理表

角色权限管理表,

账号信息表,

角色表权限表,

用户信息表

实际上是用户管理下图的用户表(实际流量转发情况)图片3.png

redis 流量数据

服务器状态

链路流量信息

图片4.png

策略,流程,信息规则,模型

以及数据处理采集,近一周爬虫最爱航班流量情况,代购,客户分析等。

2. 总结

表的分类:

--用户

account 用户表

permission 权限表

ref_ role_ permission 角色权限点关联表

ref_ user_ role 用户角色关联表

system_ role 角色表

user_ info 用户信息表

反爬虫项目所需数据库:gciantispider

点击数据库发现有很多张表,实际上只用一部分表。实际上是从0~1数据表逐渐建立的过程。

图片5.png

--规则(关键)

itcast_ filter_ rule  过滤规则表(记录的是需要过滤掉的 URL 正则)

analyzerule  数据处理解析规则配置表(非常复杂)

itcast_ book_ critical_ pages 预定关键页面正则表

itcast_ query_ critical_ pages 查询关键页面正则表

itcast_ classify_ rule 分类的正则表达式

--流程策略配置规则

itcast_model 模型

itcast_process_info 流程信息

itcast_process_num 流程记录

itcast_rule 规则明细表

itcast_strategy 策略

3.itcast_ filter_ rule

查看 itcast_ filter_ rule ,点击数据库表查找,点击 itcast_ filter_ rule 打开。

表内存在3个字段:

Id (唯一id) type(类型)  value(正则表达式)

itcast_ filter_ rule 右键设计表

默认的主键

图片6.png

Type 0:黑名单

Type 1:白名单

数据中 type 都是0即全部是黑名单,表示该数据是需要过滤掉的数据(不需要)。

Value:URL 正则表达式-过滤规则

采集所有数据,将数据推送到 kafka。

HTML, js, css, jpg, png, gif 这些数据全部被采集放入到 kafka 集群。

3-1数据预处理将数据不改变全部读取,所以3-1数据包括 HTML, js, css, jpg, png, gif 数据以及其他数据。

需要做数据过滤,过滤将过滤规则(type=0,value)读到数据预处理中。拿出数据中每一条数据的url和规则 value 循环遍历6次匹配,若只要存在 URL 和规则 value 中任意一个匹配,都代表数据是需要过滤掉的无效数据。若全部没有匹配成功,则数据需要保留。

3. analyzerule  数据处理解析规则配置表(非常复杂)

匹配到数据处理内 form 表单中 json 的业务,配置成功的结果存到 analyzerule 表中。

图片7.png

4.其他表

--计算结果  (指爬虫识别可能用到的表的数据)

itcast_ip_blacklist ip 黑名单

itcast_ip_whitelist ip 白名单

climb_ monitor 反爬监控表

datacollect 数据采集

datahandle 结构化数据

real_ time_ comput data 实时计算监控数据

system_ data_ analysis 系统数据分析速度

system_ function_ info 系统功能运行情况

itcast_ performancemonitor_ offlinespeed 离线分析时间表

--报表结果

itcast link_ traffic_ information 链路流量信息 (TPS)

itcast_ agency_ customer _analysis 代购客户分析

itcast_ crawler curday_ _info 爬虫识别情况

itcast_ crawler _query_ routes_ rank 爬虫查询航线排行

itcast_ domestic_ inter conversion rate 国内、国际转化率

itcast_ flight_ query_ conversion rate 爬虫航班转化率

itcast_ flight_ query_ rule 航班查询爬取规律

itcast_ flow_ info 流量情况

itcast_ flow_ query_ rate 流量查订比

itcast_ four_ flow_ num 四类用户流量值

itcast_ hit_ user_ _detail 命中用户详情

itcast_ ilgal _oc_ flight_ _rank 爬虫非法占座航班排行

itcast_ user_ conversion_ rate 用户转化率

表示数据可视化模块界面内指标,基本上一个指标结果针对一个表,后期计算出的离线指标会写入到表内。

注意:关于数据库和数据表具体出现在哪里,数据导入,界面运行下节课讲述

5.总结

--用户

account 用户表

permission 权限表

ref_ role_ permission 角色权限点关联表

ref_ user_ role 用户角色关联表

system_ role 角色表

user_ info 用户信息表

--规则(关键)

itcast_ filter_ rule  过滤规则表(记录的是需要过滤掉的 URL 正则)

analyzerule  数据处理解析规则配置表(非常复杂)

itcast_ book_ critical_ pages 预定关键页面正则表

itcast_ query_ critical_ pages 查询关键页面正则表

itcast_ classify_ rule 分类的正则表达式

--流程策略配置规则(关键)

itcast_model 模型

itcast_process_info 流程信息

itcast_process_num 流程记录

itcast_rule 规则明细表

itcast_strategy 策略

--计算结果  (指爬虫识别可能用到的表的数据)

itcast_ip_blacklist ip 黑名单

itcast_ip_whitelist ip白名单

climb_ monitor 反爬监控表

datacollect 数据采集

datahandle 结构化数据

real_ time_ comput data 实时计算监控数据

system_ data_ analysis 系统数据分析速度

system_ function_ info 系统功能运行情况

itcast_ performancemonitor_ offlinespeed 离线分析时间表

--报表结果

itcast link_ traffic_ information 链路流量信息(TPS)

itcast_ agency_ customer _analysis 代购客户分析

itcast_ crawler curday_ _info 爬虫识别情况

itcast_ crawler _query_ routes_ rank 爬虫查询航线排行

itcast_ domestic_ inter conversion rate 国内、国际转化率

itcast_ flight_ query_ conversion rate 爬虫航班转化率

itcast_ flight_ query_ rule 航班查询爬取规律

itcast_ flow_ info 流量情况

itcast_ flow_ query_ rate 流量查订比

itcast_ four_ flow_ num 四类用户流量值

itcast_ hit_ user_ _detail 命中用户详情

itcast_ ilgal _oc_ flight_ _rank 爬虫非法占座航班排行

itcast_ user_ conversion_ rate 用户转化率

相关文章
|
6月前
|
SQL 数据可视化 关系型数据库
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
587 0
|
1月前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
131 6
|
1月前
|
SQL Ubuntu 关系型数据库
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
本文为MySQL学习笔记,介绍了数据库的基本概念,包括行、列、主键等,并解释了C/S和B/S架构以及SQL语言的分类。接着,指导如何在Windows和Ubuntu系统上安装MySQL,并提供了启动、停止和重启服务的命令。文章还涵盖了Navicat的使用,包括安装、登录和新建表格等步骤。最后,介绍了MySQL中的数据类型和字段约束,如主键、外键、非空和唯一等。
71 3
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
|
2月前
|
SQL 关系型数据库 MySQL
php学习笔记-连接操作mysq数据库(基础)-day08
本文介绍了PHP中连接操作MySQL数据库的常用函数,包括连接服务器、设置字符集、关闭连接、选择数据库、结果集释放、获取影响行数以及遍历结果集等操作。通过书籍查询的实例演示了如何使用这些函数进行数据库操作,并提供了一个PHP操纵MySQL数据库的模板。
php学习笔记-连接操作mysq数据库(基础)-day08
|
3月前
|
SQL druid Java
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
56 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(下)
|
3月前
|
SQL Java 关系型数据库
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)
128 3
Java数据库部分(MySQL+JDBC)(二、JDBC超详细学习笔记)(上)
|
3月前
|
SQL 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(下)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
38 6
|
3月前
|
存储 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(上)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
50 4
|
3月前
|
SQL 关系型数据库 MySQL
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)(中)
Java数据库部分(MySQL+JDBC)(一、MySQL超详细学习笔记)
31 3
|
3月前
|
开发工具 数据安全/隐私保护 索引
LDAP学习笔记之二:389-DS(RHDS) 增删改查基本操作
LDAP学习笔记之二:389-DS(RHDS) 增删改查基本操作