更新 README.md
This commit is contained in:
parent
fda65be21f
commit
40be796df4
64
README.md
64
README.md
@ -1,3 +1,65 @@
|
|||||||
# DataCollections
|
# DataCollections
|
||||||
|
|
||||||
Kafka生产 flume采集 sqoop抽取数据到Hive spark处理
|
Kafka生产 flume采集 sqoop抽取数据到Hive spark处理
|
||||||
|
|
||||||
|
# 大三下学期期末项目
|
||||||
|
## 项目简介
|
||||||
|
- 项目主题10
|
||||||
|
云部署+ 域名 + 服务 。云部署的形式,可以在任何有互联网的地方访问,如 访问百度一样,在连接互联网的机房都可以访问。相比较项目1,云服务器上的环境,可能要重新配置环境,出现问题,可能要练习云客服等才能处理。云服务也意味着收费,所以请慎重选择。云部署形式会增加很多的部署工作,所以评分也会相应的比较高。如果域名申请,时间较长,麻烦的话,可以通过nginx,反向代理通过IP去访问不用域名
|
||||||
|
|
||||||
|
## 项目名称
|
||||||
|
Orders information statistical system( 订单信息统计系统)
|
||||||
|
|
||||||
|
## 项目要求
|
||||||
|
|
||||||
|
1. Kafka data production (kafka 数据生产)
|
||||||
|
这个模块主要用来模拟在实时的业务系统中,用户数据是实时生产的,并推送到kafka 相应的主题中。
|
||||||
|
1) 使用java 代码实现producer,并每隔5s推送以下数据给 kafka的 orders主题
|
||||||
|
需要推送的数据格式,请使用随机数 +数组 的形式进行随机产生,结果如下:
|
||||||
|
5个字段:分别是 订单类别,订单名字,订单数量,日期,顾客评分(很喜欢这个物品100,还行 50, 不喜欢 0 ),是否有效: Y是有效,N无效分隔符可以用 \t 进行拼接。
|
||||||
|
2) 使用 flume 定时采集 相应kafka的数据写入到hdfs 的 /home/flume
|
||||||
|
3) 使用 sqoop 定时将 Spark data processing 所有处理的所有需求数据 抽取到 中央仓库 hive,建立相应的数据库名字 orders。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
2. Spark data processing
|
||||||
|
选这个模块主要使用 spark mysql ,hive 或者 kafka ,并进行需求处理,并将统计的结果写入相应的数据库表中
|
||||||
|
1) 使用 spark sql / spark streaming 创建消费者读取相应主题的数据
|
||||||
|
2) 使用 spark sql / spark streaming 实时统计 分别统计 所有有效和无效订单号的总和
|
||||||
|
3) 使用 spark sql / spark streaming 实时统计 各个订单号 各自的有效和无效数量
|
||||||
|
4) 使用 spark sql / spark streaming 实时统计 所有订单类别的数量
|
||||||
|
5) 使用 spark sql 统计 各个订单的有效数和无效数的数量
|
||||||
|
6) 使用 spark core/rdd 统计 各个订单的 各个类别的有效和无效数量
|
||||||
|
7) 协同过滤推荐
|
||||||
|
a. 建立 订单-类别的关系矩阵
|
||||||
|
b. 建立 类别-类别 的关系矩阵
|
||||||
|
c. 基于 Item-Base CF 生成每个物品的推荐列表
|
||||||
|
d. 基于 User-Base CF 生成每个顾客的推荐列表
|
||||||
|
提示:前端展示的工具或者 echarts 展示的项目直接读取 mysql ,不用和后端的spark+kafka在同一个项目。前端所有展示的数据指标最好在同一个项目中。
|
||||||
|
3. Data visualization
|
||||||
|
展示学生信息
|
||||||
|
1)注册和登录页面 ,用户信息存储于mysql中
|
||||||
|
|
||||||
|
2) 用户登录后,首页使用echarts静态展示所所有有效和无效数量的各自的总和,以及各自类别的有效和无效数量
|
||||||
|
|
||||||
|
3) 个性化推荐:展示个性化推荐前6的类别名单。基于Item-Base 3个基于User-Base 3个。(基于协同过滤推荐的名单)
|
||||||
|
|
||||||
|
4)离线推荐:展示有效最多的前3的类别
|
||||||
|
|
||||||
|
5)通过搜索展示目标类别,以及相似类别top3 的推荐
|
||||||
|
|
||||||
|
### 项目结构
|
||||||
|
|
||||||
|
### 技术选型
|
||||||
|
|
||||||
|
|
||||||
|
数据生产
|
||||||
|
Java + Apache Kafka
|
||||||
|
数据采集
|
||||||
|
Apache Flume
|
||||||
|
数据抽取
|
||||||
|
Apache Sqoop
|
||||||
|
数据处理
|
||||||
|
Apache Spark (Spark SQL / Spark Streaming / Spark Core)
|
||||||
|
数据存储
|
||||||
|
MySQL + Hive + HDFS
|
Loading…
x
Reference in New Issue
Block a user