全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
推荐引擎

启动离线计算

更新时间:2017-06-07 13:26:11

配置完推荐场景的算法流程后,推荐引擎需要对已配置的数据进行算法计算,才能输出推荐结果。您可以通过手动方式或调用API方式启动离线计算。

1 通过手动方式启动作业。

① 执行数据预处理任务。在我的推荐页面,若当日数据预处理状态处于“未运行时”,点击“启动数据预处理”按钮,在弹出的数据预处理窗口中选择当天的日期,随后点击“启动预处理”按钮。此时我的推荐夜间,当日数据预处理的状态处于“运行中”。如果启动数据预处理的日期不是当天日期,可通过点击“查看数据预处理日志”来查看其它日期的数据预处理结果。

② 启动离线计算任务。在我的推荐页面,选择要进行离线计算的算法流程,点击“启动离线计算”。

注意:

  • 如果要计算“线上生产环境”中的算法流程,请点击TAB页“线上生产环境”,选择要进行计算的算法流程,点击“启动离线计算”;为了保证线上的推荐能够进行ABTEST,线上生产环境中的离线计算强制要求针对该推荐场景下所有处于线上生产环境状态的算法流程。

  • 如果要计算“开发测试环境”中的算法流程,请点击TAB页“开发测试环境”,选择要进行计算的算法流程,点击“启动离线计算”;在开发测试环境中,离线计算针对单个算法流程进行计算。

③ 在弹出的启动离线计算窗口中,系统会显示将进行计算的算法流程,您还需要设置要进行计算的日期(如果该日期的数据没有执行过数据预处理,则需要先进行数据预处理),设置完成后点击确定。

④ 查询计算运行是否成功,可通过我的推荐页面中的列表“算法运行状态”进行查看,点击查看日志链接可查看详细日志。

进入路径:我的推荐 -> 启动数据预处理/启动离线计算

2 通过API方式启动作业

先调用启动数据预处理任务API,再调用启动离线算法任务API。

有关API详细内容可参阅API说明

数据预处理说明

数据预处理是对源数据进行一些预先处理,处理的内容包括对客户数据进行离线日志处理、格式转换和格式检查等。当每天的源数据发生变化时,需要进行数据预处理(源数据如果没有发生变化,则不需要进行数据预处理,也不需要启动离线计算任务进行算法计算)。业务每天的数据预处理只需要执行一次,执行成功后才可以启动其他离线算法任务进行算法计算。

在下文中将会使用下面的标识表示各个部分的内容

  • DS 表示数据预处理的数据时间

  • 客户添加业务时填写的各离线表及其标识

    • UPLOAD_USER_META 表示用户表
    • UPLOAD_ITEM_META 表示物品表
    • UPLOAD_USER_BEHAVIOR 表示行为表
    • UPLOAD_ITEM_META_CONFIG 表示物品属性维度表
    • UPLOAD_USER_META_CONFIG 表示用户属性维度表
    • UPLOAD_REC_ITEM_INFO 表示可推荐物品表
  • 日志服务解析的离线表及其标识

    • LOG_USER_META 表示解析日志得到的用户表
    • LOG_ITEM_META 表示解析日志得到的物品表
  • 算法使用的离线表及其标识

    • USER_META 表示用户表
    • ITEM_META 表示物品表
    • USER_BEHAVIOR 表示行为表
    • REC_ITEM_INFO 表示可推荐物品表

了解数据预处理计算逻辑

step1 离线日志处理

如果用户业务属性中配置了“使用本产品日志API接收日志”,来完成数据采集,则执行这一步,否则跳过。 埋点规范可以参照 日志埋点规范

  • 用户登录埋点会解析插入到LOG_USER_META表中,并且与历史数据汇总,历史数据最多保留180天
  • 物品注册埋点会解析插入到LOG_ITEM_META表中,并且与历史数据汇总,历史数据最多保留180天
  • 行为埋点会解析插入到USER_BEHAVIOR表的DS分区。

step2 格式转换

  • UPLOAD_ITEM_META的最新分区解析插入到ITEM_META表的DS分区中,如果同时使用日志服务,则与LOG_ITEM_META合并,根据item_id去重,ID相同的条目以LOG_ITEM_META为准。
  • UPLOAD_ITEM_META_CONFIG插入 ITEM_META 的 'type = config' 分区。
  • UPLOAD_USER_META的最新分区解析插入到USER_META表的DS分区中,如果同时使用日志服务,则与LOG_USER_META合并,根据user_id去重,ID相同的条目以LOG_USER_META为准。
  • UPLOAD_USER_META_CONFIG插入 USER_META 的 'type = config' 分区。
  • UPLOAD_USER_META的最新分区解析插入到USER_META表的DS分区中,如果同时使用日志服务,则与LOG_USER_META合并,根据user_id去重,ID相同的条目以LOG_USER_META为准。
  • 如果没有使用日志服务,取UPLOAD_USER_BEHAVIORDS分区插入至 USER_BEHAVIORDS分区。如果 UPLOAD_USER_BEHAVIOR有‘ds=recent’分区,则‘recent’分区也会插入至USER_BEHAVIORDS分区。
  • 如果客户提供UPLOAD_REC_ITEM_INFO 则把UPLOAD_REC_ITEM_INFO 的最新分区插入 REC_ITEM_INFODS分区,否则把 ITEM_META的 item_id,biz_info 字段插入 REC_ITEM_INFODS分区,意味着ITEM全集都为推荐候选集。

step3 格式检查

对如下最终产生的算法输入表检查是否非空,字段格式是否符合规范,字段规范参照数据格式规范

  • USER_META 用户表
  • ITEM_META 物品表
  • USER_BEHAVIOR 行为表
  • REC_ITEM_INFO 可推荐物品表
本文导读目录