一、系统目的
- 展示基础的实时计算和离线计算隔离的方案
- 展示基础的业务工程和算法工程隔离的方案
二、系统需要的组件
- hbase
- hive
- hadoop
- kafka
- activemq
- couchbase
- mongodb
三、系统架构
按照系统部署场景分,可以分为三块:前端、中间层和云环境。这样分割的原因:
- 前端和云环境部署环境不同,前端组件可以自由部署且没有环境限制,云环境下的组件和任务程序必须部署在hadoop集群或可以自由访问hadoop集群的服务器上。
- 安全性不同,前端环境和云环境对开发人员、运维人员的安全要求不同,部署后,开发人员需要对系统进行持续的优化,这会与运维人员的工作产生冲突。
## 四、两类数据流
1、标签/新闻数据流
2、用户行为日志数据流
五、运行步骤:
启动前端工程
1
2
3
4
5
6
7
8○ 确保下面的组件是正常运行:
■ mongodb
■ couchbase
■ kafka
■ activemq
○ 如果上述组件运行正常,启动下面两个工程(顺序不限):
■ resys-one-server
■ resys-one-view启动中间工程
1
2
3
4
5○ 确保下面的组件是正常运行的:
■ kafka
■ activemq
○ 如果上述组件运行正常,启动下面这个工程:
■ resys-one-stream启动各个计算脚本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19○ 确保下面的组件是正常运行的:
■ hadoop
■ zookeeper
■ hbase
■ couchbase
○ 全量导入所有新闻
■ run_import_news_all
○ 全量导入词典
■ run_import_dictionary
○ 计算新闻热度
■ run_cal_news_click.sh
■ run_cal_hot_news_one.sh
■ run_cal_hot_news_two.sh
■ run_serve_hot_news.sh
○ 计算新闻相关性
■ run_cal_news_token.sh
■ run_cal_news_invert.sh
■ run_cal_news_correlation.sh
■ run_serve_news_correlation.sh