从零构建 Spark-机器学习 电影推荐系统(一) - 概述

1 背景介绍

1.1 行业背景

在2014年以后,大数据领域内掀起了一股强劲的Apache Spark学习和应用的浪潮。
Apache Spark以内存计算为核心,以其通用,快速和完整的生态圈等特点,正在逐步取代速度较慢的hadoop,越来越多的应用在了企业中。
ADHOC SQL查询,流计算,数据挖掘 ,图计算,R语言,一个又一个功能强大的组件使得越来越多的spark爱好者和企业界意识到 ,只要掌握一门spark技术,就能够为大多数的企业遇到的大数据的应用场景提供明显的加速。
学习Spark,成为一名合格的Spark工程师,使得每个致力于大数据行业的人,不仅能得到技术上的提升,也为个人的薪资带来了巨大的提升空间。

1.2 应用背景

随着互联网和大数据技术的发展,以“猜你喜欢”等为代表的推荐系统的应用场景逐渐普及到各个大型的网站中。从购物到旅游,从餐饮外卖到新闻资讯,几乎随处可见推荐系统的身影。
在这个项目中,我们将一起走进推荐系统的世界,看一看如何自己动手开发一套电影推荐系
统。

1.3 项目和技术背景

本项目是一个基于Apache Spark的电影推荐系统。
系统为用户推荐出最合适的5部电影。
整个系统运用了Spark,Hadoop,Hive,Kafka等常用的大数据组件,分为离线推荐实时推荐2个主要的技术路线。

2 项目架构

  • 存储层
    HDFS作为底层存储,Hive做为数据仓库
  • 离线数据处理
    SparkSQL
  • 实时数据处理
    kafka, SparkStreaming
  • 数据应用层
    MLlib
  • 数据展示和对接
    ZEPPELIN

系统架构

3 主要模块

在我们的项目中,主要有以下的模块
存储模块:搭建和配置HDFS分布式文件存储系统,并且把Hbase和MYSQL做为备用的存储数据库 ETL模块:加载原始数据,清洗,加工,为模型训练模块和推荐模块准备所需要的各种数据。 模型训练模块:负责产生模型,以及寻找最佳的模型 推荐模块:包含离线推荐和实时推荐,离线推荐负责把推荐结果存储到存储模块中。实时推荐则负责产 生实时消息队列,并且消费实时消息产生推荐结果,最后存储到存储模块中。 数据展示模块:负责展示项目中所用的数据


4 系统开发重难点

在我们的项目中,主要有以下的开发的重难点
1.数据仓库的准备 2.数据的处理 3.实时数据流

5 补充内容




转载于:https://juejin.im/post/5c1e45e5f265da61616eae9c

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值