1.大数据应用领域
互联网领域
搜索引擎 推荐引擎
电信领域
用户画像 用户行为分析
医药生物领域
DNA分析
视频领域
视频存储 视频分析
金融领域
信用卡欺诈分析 用户分析
矿产勘探领域
矿产石油勘察预测
1.1大数据框架
1.2 Hadoop生态系统
1.3 Spark 生态系统
2.推荐系统的设计
2.1需求分析和用户调研
用户:
- 新用户→根据注册时候选择的标签多样性的推荐
- 老用户→根据以往历史习惯,个性化推荐
- 考虑主流用户还是小众群众。根据不同的用户推荐不同的东西,设计不同的推荐算法,综合使用
推荐什么
- 当用户购买的东西价格相近时,多考虑用户对内容主题的兴趣,用户购买的类别
- 当价格不同时,考虑用户购买物品的品牌、价格、内容
- 新品促销或者库存清理,考虑整体系统的获利
何时
- 公众号还是短信
- 推荐的周期,短期、长期还是周期性的
何地
2.2 推荐功能设计
- 个性化首页,老用户根据历史行为个性化推荐,新用户根据热度推荐,或者根据选择的标签推送
2.3 界面设计
- 如何将推荐结果呈现给用户?
- 如何收集用户信息和反馈数据?
2.3 架构设计
- 硬件资源的限制
- 用户数、item数
- 存储、接口
- 实时响应的要求
2.4 算法设计
- 优化准则
- 数据预处理
- 离线算法
- 在线算法
- 功能实现策略
- 推荐解释
2.5 系统评测设计
- 用户反馈
点击率?转换率?单次使用时长?重复使用率? - A/B测试
将用户分为两组,分别使用不同的推荐算法后者一组不使用
2.6.用户界面的重要性
3.大数据lambda架构
3.1 大数据时代:3V
- Volume:海量数据,PB级
- Velocity:高更新频率,每秒几十次
- Variety:非结构化数据,动态的,图片,视频,文档等
3.2 Lambda架构
Lambda系统架构提供了一个结合实时数据和Hadoop预先计算的数据环境的混合平台,以提供一个实时的数据视图
3.2.1 Lambda分层架构:
批处理层、实时处理层、服务层
- Batch layer:批处理层,离线处理数据
- Serving layer:服务层,通过前端交互工具,查看服务层的批处理视图
- Speed layer:实时处理层,实时产生视图
3.3 批处理
3.3.1 批处理特点
- 数据不可变,可进行任何计算,水平扩展,高延迟
3.3.2 批处理层技术:日志收集Flume
3.3.3 批处理层技术:数据同步工具Sqoop(针对结构化数据)
3.3.4 批处理层技术:分布式存储
- HDFS:基于文件的分布式存储系统
- HBase:结构化存储系统
3.3.5 批处理层技术:分布式计算
- MapReduce:基于磁盘处理
- Spark:基于内存,
3.3.6 批处理层技术:产生视图
3.3.6 批处理层技术:数据序列化
数据序列化:把数据读到磁盘就需要将数据序列化
序列化框架:Thrift, Protocol, Avro
3.3.7 批处理层技术:视图存储数据库
- HBase:数据量大,不能汇总,使用Hive映射
- Cassandra:强调Ap(高可用性)
- Impala:满足前端交互式BI
- Redis/memcache:高效前端,可靠性不高
- MySQL:关系型数据库
3.4 实时处理层
3.4.1 实时计算特点
- 流式处理,Storm
- 持续计算
- 存储和分析某个窗口期内的数据
- 最终正确性
3.4.2 实时数据采集
3.4.3 实时数据分析
3.5 服务层
3.5.1 服务层特点
支持随机读,需要在非常短的时间内返回结果,读取batch layer和speed layer结果,并对其归并
3.6 Lambda架构的实现
来源:CSDN
作者:hvip
链接:https://blog.csdn.net/qq_34204503/article/details/102872434