53 lines
3.6 KiB
Markdown
53 lines
3.6 KiB
Markdown
# spark
|
||
|
||
# 项目周项目
|
||
## 项目主题10
|
||
- 项目介绍:云部署+ 域名 + 服务 。云部署的形式,可以在任何有互联网的地方访问,如 访问百度一样,在连接互联网的机房都可以访问。相比较项目1,云服务器上的环境,可能要重新配置环境,出现问题,可能要联系云客服等才能处理。云服务也意味着收费,所以请慎重选择。云部署形式会增加很多的部署工作,所以评分也会相应的比较高。如果域名申请,时间较长,麻烦的话,可以通过nginx,反向代理通过IP去访问不用域名。
|
||
|
||
### **项目名称:** Orders information real-time statistical system( 订单信息实时统计系统)
|
||
编写程序: kafka + spark + Jsp & Servlet / 报表工具
|
||
完成方式: 组别形式(6人一组)。可以每位成员完成一项菜
|
||
可以使用git 管理自己团队开发的代码,组长负责创建仓库,其他组别添加为仓库成员,clone,使用idea 打开项目,commit和push,完成团队成员都能有最新的项目代码和代码提交记录。
|
||
项目展示时间: 项目周(具体时间请等待通知)
|
||
#### 项目考核内容:
|
||
1. 系统能正常运行且添加
|
||
2. 正常展示相应的数据
|
||
3. 问题答辩
|
||
4. 关于项目的ppt, 每组展示时间不超过10分钟
|
||
5. 完成 完成一份niit项目报告
|
||
##### 内容包括:
|
||
1) 项目部署
|
||
2) 前端 JSP & Servlet实现或报表工具实现,后端通过spark 处理kafka 实时数据
|
||
3) 功能:kafka实时数据生产,spark实时数据处理,数据实时展现
|
||
(这个报告期末的时候也要交)
|
||
|
||
|
||
|
||
##### 项目具体要求:
|
||
1. Kafka data real-time production (kafka 数据实时生产)
|
||
这个模块主要用来模拟在实时的业务系统中,用户数据是实时生产的,并推送到kafka 相应的主题中。
|
||
1)在kafka中创建 主题 orders
|
||
2) 使用java 代码实现producer,并每隔5s推送以下数据给 kafka的 orders主题
|
||
|
||
- 需要推送的数据格式,请使用随机数 +数组 的形式进行随机产生,结果如下:
|
||
- 5个字段:分别是 订单类别,订单名字,订单数量,日期,是否有效: Y是有效,N无效
|
||
|
||
分隔符可以用 \t 进行拼接。
|
||
|
||
2. Spark real-time data processing
|
||
选这个模块主要使用 spark 读取kafka当中的相应topic 的数据,并进行需求处理。
|
||
1) 使用 spark streaming 创建消费者读取相应主题的数据
|
||
2) 使用 spark streaming 实时统计 每隔2秒 分别统计 所有有效和无效订单号的总和
|
||
3) 使用 spark streaming 实时统计 每隔2秒 各个订单号 各自的有效和无效数量
|
||
4) 使用 spark streaming 实时统计 每隔2秒 所有订单类别的数量
|
||
5) 使用 spark sql 统计 各个订单的有效数和无效数的数量
|
||
6) 使用 spark core/rdd 统计 各个订单的 各个类别的有效和无效数量
|
||
7) 可以将上边计算的结果 spark streaming推送到 kafka的一个新的主题,使用前端工具实时展示,spark core 和 spark rdd推送到 mysql 使用 echarts展示。
|
||
提示:前端展示的工具或者实时展示 或者 echarts 展示的项目 直接读取 mysql 不用和后端的spark+kafka在同一个项目。前端所有展示的数据指标最好在同一个项目中。
|
||
3. Data visualization
|
||
展示学生信息
|
||
(1)实时展示所有有效和无效数量总和
|
||
(2)实时展示各个订单号 各自的有效和无效数量
|
||
(3)实时展示所有订单类别的数量
|
||
(4)实时展示不同类别商品的有效数和无效数的数量
|
||
(5)使用echarts饼状图展示 各个订单的 各个类别的有效和无效数量 |