电商大数据项目-推荐系统实战

开源项目,请勿用于任何商业用途。
源代码地址:https://github.com/asdud/Bigdata_project

本项目是基于Spark MLLib的大数据电商推荐系统项目,使用了scala语言和java语言。基于python语言的推荐系统项目会另外写一篇博客。在阅读本博客以前,需要有以下基础:
1.linux的基本命令
2.至少有高中及以上的数学基础。
3.至少有java se基础,会scala语言和Java
EE更佳(Jave EE非必需,但是可以帮助你更快理解项目的架构)。
4.有github账户,并且至少知道git clone,fork,branch的概念。
5.有网络基础,至少知道服务器端和客户端的区别。
6.有大数据基础,最好会Hadoop,HDFS,MapReduce,Sqoop,HBase,Hive,Spark,Storm。
7.有mysql数据库基础,至少会最基本的增删改查。
你要是大神,估计看这篇博客也没有任何用处,至少给点意见和建议呗!

PC配置要求
1.CPU:主流CPU即可
2.内存RAM:至少8G,推荐16G及以上,32G不浪费。
3.硬盘:由于VM对I/O流读取速度要求高,推荐使用256G及以上固态硬盘(SATA3即可.NVME更好),系统盘需要60-100G,其余的专门划一个盘用于安装虚拟机。或者采用傲腾内存+机械硬盘的方案。
4.GPU显卡;无要求。但是如果你想学习深度学习框架的话,可考虑1060 6g甚至是2080TI。
5.网速:CentOS 8GB多,HDP接近7个G,CDH几个包加起来2.5G。自己算算需要下载多长时间,或者考虑用U盘从别人那里拷贝?

你也可以考虑用阿里云,腾讯云等云主机。

步骤一:
搭建CentOS+HDP的环境,或者CentOS+CDH的环境,这些都是开源的,不用担心版权问题,企业上一般也是用这两种方案。

在这里我采用的是CentOS+HDP的方案
大数据之搭建HDP环境,以三个节点为例(上——部署主节点以及服务)
http://blog.51cto.com/6989066/2173573
大数据之搭建HDP环境,以三个节点为例(下——扩展节点,删除节点,以及部署其他服务)
http://blog.51cto.com/6989066/2175476

也可以采用CentOS+CDH的方案
搭建CDH实验环境,以三个节点为例的安装配置
http://blog.51cto.com/6989066/2296064

开发工具:Eclipse oxygen版本或者IDEA
代码实现部分
1.数据:用户查询日志来源
搜狗实验室
.https://www.sogou.com/labs/resource/q.php
介绍:
搜索引擎查询日志库设计为包括约1个月(2008年6月)Sogou搜索引擎部分网页查询需求及用户点击情况的网页查询日志数据集合。为进行中文搜索引擎用户行为分析的研究者提供基准研究语料

格式说明:
数据格式为

访问时间\t用户ID\t[查询词]\t该URL在返回结果中的排名\t用户点击的顺序号\t用户点击的URL

其中,用户ID是根据用户使用浏览器访问搜索引擎时的Cookie信息自动赋值,即同一次使用浏览器输入的不同查询对应同一个用户ID

2.首先新建一个Maven工程MyMapReduceProject,然后更新pom.xml文件
pom文件地址
https://github.com/asdud/Bigdata_project/blob/master/MyMapReduceProject/pom.xml
这个时候就会自动下载对应的依赖的jar包

?查询搜索结果排名第1点,击次序排在第2的数据
使用MapReduce进行分析处理
https://github.com/asdud/Bigdata_project/blob/master/MyMapReduceProject/src/main/java/day0629/sogou/SogouLogMain.java
https://github.com/asdud/Bigdata_project/blob/master/MyMapReduceProject/src/main/java/day0629/sogou/SogouLogMapper.java

?使用Spark进行分析和处理
首先使用Ambari,添加Spark2的服务;由于依赖其他的服务,比如Hive等等,需要在启动Ambari Server的时候,指定MySQL的JDBC驱动。
登录spark-shell,需要用下面的方式:
spark-shell --master yarn-client

ambari-server setup --jdbc-db=mysql --jdbc-driver=/usr/share/java/mysql-connector-java.jar
jdbc-driver地址与你安装mysql-connector-java.jar目录对应。

原文地址:http://blog.51cto.com/6989066/2325073

时间: 2024-10-29 10:45:47

电商大数据项目-推荐系统实战的相关文章

电商大数据项目-推荐系统实战之推荐算法(三)

电商大数据项目-推荐系统实战(一)环境搭建以及日志,人口,商品分析http://blog.51cto.com/6989066/2325073电商大数据项目-推荐系统实战之推荐算法http://blog.51cto.com/6989066/2326209电商大数据项目-推荐系统实战之实时分析以及离线分析http://blog.51cto.com/6989066/2326214 (七)推荐系统常用算法协同过滤算法协同过滤算法(Collaborative Filtering:CF)是很常用的一种算法,

电商大数据项目(二)-推荐系统实战之实时分析以及离线分析

电商大数据项目-推荐系统实战(一)环境搭建以及日志,人口,商品分析http://blog.51cto.com/6989066/2325073电商大数据项目-推荐系统实战之推荐算法http://blog.51cto.com/6989066/2326209电商大数据项目-推荐系统实战之实时分析以及离线分析http://blog.51cto.com/6989066/2326214 五.实时分析Top IP(实时分析Top用户)一)模块介绍电商网站运营中,需要分析网站访问排名前N的IP,主要用来审计是否

下载基于大数据技术推荐系统实战教程(Spark ML Spark Streaming Kafka Hadoop Mahout Flume Sqoop Redis)

地址:http://pan.baidu.com/s/1c2tOtwc  密码:yn2r 82课高清完整版,转一播放码. 互联网行业是大数据应用最前沿的阵地,目前主流的大数据技术,包括 hadoop,spark等,全部来自于一线互联网公司.从应用角度讲,大数据在互联网领域主要有三类应用:搜索引擎(比如百度,谷歌等),广告系统(比如百度凤巢,阿里妈妈等)和推荐系统(比如阿里巴巴天猫推荐,优酷视频推荐等). 本次培训以商业实战项目作为驱动来学习大数据技术在推荐系统项目中的应用.使得学员能够亲身体会大数

电商大数据应用之用户画像

一.?课程目标1.1 了解用户画像是什么1.2 用户画像的作用是什么1.3 学会使用SparkSQL构建用户画像二.?前言 大数据时代已经到来,企业迫切希望从已经积累的数据中分析出有价值的东西,而用户行为的分析尤为重要.利用大数据来分析用户的行为与消费习惯,可以预测商品的发展的趋势,提高产品质量,同时提高用户满意度.本课程是基于大型电商公司的真实用户画像中提练出的精华内容,旨在培养学员了解用户画像的内容,掌握构建用户画像的方法. 三.?初识用户画像 右边是一个人的基本属性,通过一个人的基本属性我

电商大数据平台运维案例

技术栈 数据流向 平台规模差异化,隔离化 YARN: https://baike.baidu.com/item/yarn/16075826?fr=aladdin 今天先到这儿,希望对您在系统架构设计与评估,团队管理, 项目管理, 产品管理,团队建设 有参考作用 , 您可能感兴趣的文章: 互联网电商购物车架构演变案例互联网业务场景下消息队列架构互联网高效研发团队管理演进之一消息系统架构设计演进互联网电商搜索架构演化之一企业信息化与软件工程的迷思企业项目化管理介绍软件项目成功之要素人际沟通风格介绍一

电商大数据学习笔记:理论

1.大数据部门:数据中心.数据平台.数据部…… 2.每个部门都有:架构人员.数据分析人员.开发人员.运营人员…… 3.团队:数据仓库组.BI组.架构组.数据专家组…… 4.团队分的更细:需求组.推荐组.情报组.挖掘组.数据组.营销组…… 5.大数据有哪些重要的项目: 1)数据仓库建设: 2)经营分析报表: 3)客户精准营销: 4)推荐系统: 5)移动端数据分析. 6.大数据有哪些重点方向: 1)流量数据: 2)交易数据: 3)会员与活动数据: 4)物流与配送数据: 5)内部财务数据. 7.代表产

电商大数据学习笔记:实战

1.YARN:将资源管理和作业调度/监控分成两个独立的进程. 包含两个组件:ResourceManager和ApplicationMaster 2.YARN的特性: 1)可扩展性:2)高可用性(HA):3)兼容性(1.0版本的作业也可以执行):4)提高集群利用率: 5)支持MapReduce编程范式. 3.Hadoop的进程: 1)NameNode HDFS的守护进程: 2)Secondary NameNode 监控HDFS状态的辅助后台程序,备用NameNode: 3)DataNode 负责把

电商大数据学习笔记:用户画像

1.用户画像:用户信息标签化. 2.用户画像可以做什么? ——内容正在整理中 3.show命令用法 show tables 显示所有表 例:show table like ‘…_pre_food’; show partitions 显示所有分区 例:show partitions fdm_prd_food partition(dt=’2015-01-01’); show table extended 显示扩展信息 例:show table extended like fdm_ord_order;

大数据-实时推荐系统最主流推荐系统itemCF和userCF视频教程(项目实战)

38套大数据,云计算,架构,数据分析师,Hadoop,Spark,Storm,Kafka,人工智能,机器学习,深度学习,项目实战视频教程 视频课程包含: 38套大数据和人工智能精品高级课包含:大数据,云计算,架构,数据挖掘实战,实时推荐系统实战,电视收视率项目实战,实时流统计项目实战,离线电商分析项目实战,Spark大型项目实战用户分析,智能客户系统项目实战,Linux基础,Hadoop,Spark,Storm,Docker,Mapreduce,Kafka,Flume,OpenStack,Hiv