开发者学堂课程【大数据分析之企业级网站流量运营分析系统开发实战(第五阶段):网站流量日志分析--数据可视化--后端 web 工程架构】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/697/detail/12256
网站流量日志分析--数据可视化--后端 web 工程架构
内容介绍
一.WEB 程序工程结构
二. 总结
一. WEB 程序工程结构
所谓后端的程序,它的职责很明确,就是把通过 sqoop 导出的各种指标数据按照前端的下室所需要的格式返回给他,也就是纯粹的查询 MYSQL 数据库的过程。
从技术层面来说,不仅仅局限于 Java,还有个编程语言叫做 PHP 也可以实现这一过程。
本项目是个纯粹的 JavaEE 项目,基于 spring 框架整合构建。使用 maven 的 tomcat 插件启动项目。
简单模拟一下,假设有一个首页进行数据可视化页面的展示,叫做 index html。首页是通过浏览器来访问,所以还需要有一个浏览器,叫做 from 的浏览器。
浏览器想请求页面,背后所传递的协议叫做 HTTP 协议,它会发起一个叫做 request ,这个协议发到服务器。
下面讲到 Java 当中标准的三层架构,最上面叫做表现层,然后是业务层和持久层。
表现层主要负责各种请求的响应,也就是说他的请求会被外部 contrast 来接收。
中间层叫做 service 层,具体业务比如要进行什么操作,什么判断,就把它叫做业务层。
最后需要去操作数据,查询数据,所以下面有一个数据操作叫 DAO,它的中文叫做持久层。持久层作业是进行数据持久化,保证我们的业务最终落实到数据库当中。
比如有一个 MySQL,通常用 MySQL 来做数据的导出导入操作。接下来我再追加一个问题,数据库当中的数据指标来自于哪里?持久层数据会去查询数据库,问题在于数据库的数据来自于哪里?之前说过大数据分析是在 hive 当中分析,那分析完之后怎么来到 MySQL? 是用 sqoop 导出的。
那么这个图就可以继续画一个大数据的分析平台,标注数据仓库,数据仓库中的数据简单写一下,用 sqoop 导出,导出之后,mysql 进行查询数据,会得出一个结果。这个结果层层向上传递:持久层到业务层到表现层。在业务层需要把数据进行相关的转换和调整。最后返回到浏览器把数据进行渲染,用户就得到了 response,看到一个非常完美的页面。
图片里整个左边部分和大数据没有关系,是非常纯粹的 javaEE 项目。表现层使用的软件是 spring MVC,业务层使用的是 spring,持久层使用的是 mybatis。这样就完成了相关技术的操作。整个项目是用 maven web 项目,使用 tomcat 插件运行。
这就是数据可视化后端 web 项目的架构图。有了架构图之后就可以明确,我们要做的就是查询 MySQL 中的指标数据返回给前端。
二.总结
数据可视化后端 web 工程
职责:把导出在 mysql 中的数据按照前端需要的格式查询返回给前端
技术: php java 本项目中使用 javaEE 基于 SSM 做数据查询