PredictionIO 做推荐系统踩的坑

本文详细记录了使用PredictionIO搭建推荐系统时遇到的问题及解决方案,包括Spark安装路径问题、数据库连接、PredictionIO安装目录配置、事件服务器验证、数据导入与训练等步骤,以及在不同版本中遇到的兼容性问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. spark 安装目录问题
    ambari  安装的spark  版本号和社区下载的不一样,semver.sh脚本执行正则的时候验证spark版本是否合格,会失败。
    重新安装 spark 指定路径

2. 链接数据库须带端口

3.spark路径
    /data/Software/spark-2.3.3
    
4.postgresql数据库:
    数据地址:
    库名:pio
    用户名:pio
    密码:
    
    链接
    psql -U pio -h ip -p 5432 -d pio
    所有数据库:
    select * from pg_database;
    选择数据库:
    \c pio
    查询指定库所有表:
    \dt
    退出:
    \q
    
    
5.PredictionIO安装目录:
    /usr/local/PredictionIO/PredictionIO-0.14.0
    unset -f pathmunge
    export JAVA_HOME=/usr/jdk64/jdk1.8.0_112
    export HADOOP_HOME=/usr/hdp/2.6.4.0-91/hadoop
    export SPARK_HOME=/usr/hdp/2.6.4.0-91/spark2
    export PGD_HOME=/usr/local/postgresql
    export PIO_HOME=/usr/local/PredictionIO/PredictionIO-0.14.0
    export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$SPARK_HOME/bin:$PGD_HOME/bin:$PIO_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    export SPARK_MAJOR_VERSION=2
    配置文件:
    pio-env.sh
    
    jar包;
    postgresql-42.2.6.jar

pio eventserver &   启动

jps -l  查看

    
6.流程
    目录项目    /data/online/PredictionIO/MyECommerceRecommendation
    
    git clone https://github.com/apache/predictionio-template-ecom-recommender.git MyECommerceRecommendation
    
    pio app new myEcoRe        创建app项目
        [INFO] [App$] Initialized Event Store for this app ID: 1.
        [INFO] [Pio$] Created a new app:
        [INFO] [Pio$]       Name: myEcoRe
        [INFO] [Pio$]         ID: 1
        [INFO] [Pio$] Access Key: CDLjmOcO3iRD82dxkMKHsRIUgffc9sLUuENUjp36-tE5bqV_aCK22eBa1-bfUAIq
        
    pio app list    查看
        [INFO] [Pio$]                 Name |   ID |                                                       Access Key | Allowed Event(s)
        [INFO] [Pio$]              myEcoRe |    1 | CDLjmOcO3iRD82dxkMKHsRIUgffc9sLUuENUjp36-tE5bqV_aCK22eBa1-bfUAIq | (all)
        [INFO] [Pio$] Finished listing 1 app(s).
    
    
    curl -i -X GET http://localhost:7070   验证事件服务器是否启动成功
    
    
7.添加事件:
    
curl -i -X POST http://localhost:7070/events.json?accessKey=CDLjmOcO3iRD82dxkMKHsRIUgffc9sLUuENUjp36-tE5bqV_aCK22eBa1-bfUAIq \
-H "Content-Type: application/json" \
-d '{
  "event" : "view",
  "entityType" : "user",
  "entityId" : "u0",
  "targetEntityType" : "item",
  "targetEntityId" : "i0",
  "eventTime" : "2019-06-10T12:34:56.123-08:00"
}'

8.执行批量插入数据脚本
    /data/online/PredictionIO/MyECommerceRecommendation/shell/add_event_batch.s

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值