行为数据上报给用户带来什么好处?
可以了解终端用户对搜索结果的反应(浏览、点击、停留、点赞、分享、收藏、购买等行为),从而为优化搜索效果提供指引方向。
可以在搜索应用的数据统计功能中,看到为该应用统计的各种搜索报表(如PV, IPV, CTR等),为用户的运营工作带来帮助。
通过开放搜索为用户提供的算法平台,可以将这些搜索行为反馈数据应用在搜索排序算法模型训练中,不断地提升搜索效果。
注意事项
数据采集功能会在实例应用创建完成后自动开通
数据,目前主要指终端用户对搜索结果的行为反馈数据
采集,目前主要指通过开放搜索SDK上报搜索行为数据(Server端),App端、Web暂不支持,敬请期待
数据采集2.0相较于老的数据采集功能,在传参上更简单更便于理解,SDK使用上也更便捷。新用户如果有需求,请直接使用此文档中的行为数据上报字段进行传参。(注:Java 3.4.0SDK 以及PHP 3.2.0SDK 支持数据采集2.0功能。)
上报行为数据
说明:用户在开放搜索控制台开通行为采集功能之后,建议通过SDK手动上传行为数据。下文详细介绍了行为数据包含的字段类型与含义。步骤:
SDK上报有8个必须字段:imei 或 user_id(注:二者不能同时为空)、biz_id、trace_id、rn、bhv_type、bhv_time、item_id、item_type
API上报: 除了上面的必须字段之外,外加1个reach_time
SDK/API上报行为数据demo可点击此处进行查看。
行为数据字段定义
ID | 字段名 | 字段类型 | 字段含义 | 字段值 | 是否必须 |
1 | app_version | STRING | 业务侧网站或移动APP的版本号 | 非必须 | |
2 | sdk_type | STRING | 数据上报使用的SDK类型。该字段是开放搜索为了区分服务端上报和移动端采集的SDK而设置的 | 非必须如果是通过开放搜索SDK做上报,会默认设置该值为”opensearch_sdk” | |
3 | sdk_version | STRING | 数据上报使用的SDK版本号 | 非必须如果是通过开放搜索SDK做上报,会默认设置该值 | |
4 | login | STRING | 终端用户在业务侧网站或移动APP上是否是登录状态 | 取值为0或1。含义为:0(未登录), 1(登录) | 非必须 |
5 | user_id | STRING | 用于唯一标识终端用户的一个ID。 | 非必须但imei,user_id不能同时为空 | |
6 | imei | STRING | 终端用户设备ID(值可以为:imei,device_id,idfa) | 非必须但imei,user_id不能同时为空 | |
7 | biz_id | STRING | 业务侧用于区分不同业务的一个数值ID。一般是搜索入口,例如有Web端和ios,安卓,就可以分多个biz_id,后续可以通过biz_id来切分流量统计或做实验 | 如果用户没有分业务场景,就建议填一个default;如果有区分业务场景,就可以填pc, ios, android等 | 必须 |
8 | trace_id | STRING | 用于区分行为针对的doc是来自哪个搜索服务商输出的结果 | 如果是来自开放搜索的结果,该字段值设置为Alibaba,如果是来自其他服务商的结果,业务侧可以自己取名字 | 必须 |
9 | trace_info | STRING | 该值来自开放搜索在搜索结果中返回ops_request_misc的值,原样回传即可 | 非必须 注:trace_id为Alibaba时必须要回传,内部用于核对是由开放搜索输出的结果 | |
10 | rn | STRING | 用于标识一个搜索pv。 该值来自开放搜索在搜索结果中返回的request_id的值,原样回传即可。 | 必须 | |
11 | item_id | STRING | doc的主键值。 该值为开放搜索应用中主表主键值 | 必须 | |
12 | item_type | STRING | doc的业务类型 | 可设置的值见下文【关于item_type定义】 | 必须 |
13 | bhv_type | STRING | 行为类型,例如曝光、停留、浏览、收藏、下载等 | 可设置的值见下文【常用行为类型】 | 必须 |
14 | bhv_value | STRING | 行为数量,例如停留时长,购买件数等 | 可设置的值见下文【常用行为类型】 | 非必须 |
15 | bhv_time | STRING | 行为发生的时间戳,单位s | 必须 | |
16 | bhv_detail | STRING | 对行为的一些详细描述。 | 格式:key=value{,key=value} 表示可以是1个或多个key=value对 | 非必须 |
17 | ip | STRING | 行为发生的手机或终端的ip | 非必须建议设置 | |
18 | longitude | STRING | 行为发生位置的经度 | 非必须建议设置 | |
19 | latitude | STRING | 行为发生位置的纬度 | 非必须建议设置 | |
20 | session_id | STRING | 用户的一次会话id | 非必须建议设置 | |
21 | spm | STRING | 提供给业务用来跟踪行为所在的页面模块的位置 | 编码格式为a.b.c.d, 分别代表站点ID,页面ID, 模块ID, 位置ID。 | 非必须 |
22 | report_src | STRING | 用于区分上报来源 | 取值为1,2,3,patch_data。含义:
| 非必须 |
23 | mac | STRING | 手机或终端设备的网卡MAC地址 | 非必须 | |
24 | brand | STRING | 手机或终端的品牌 | 非必须建议设置 | |
25 | device_model | STRING | 手机或终端的机型 | 非必须 | |
26 | resolution | STRING | 手机或终端的屏幕分辨率 | 非必须 | |
27 | carrier | STRING | 手机或终端的移动运营商 | 非必须 | |
28 | access | STRING | 手机或终端连接的网络 | 非必须 | |
29 | access_subtype | STRING | 手机或终端连接的网络类型 | 非必须 | |
30 | os | STRING | 手机或终端的操作系统 | 非必须 | |
31 | os_version | STRING | 手机或终端操作系统的版本 | 非必须 | |
32 | language | STRING | 手机或终端设置的语言类型 | 非必须 | |
33 | phone_md5 | STRING | 用户手机号的md5值 | 非必须 | |
34 | reserve1 | STRING | 预留字段 | 非必须 | |
35 | reserve2 | STRING | 预留字段,当report_src='patch_data'时,reserve2须填写raw_query对应值(必填) | 非必须 | |
36 | reach_time | BIGINT | 该数据到达服务端的时间,格式:时间戳,单位:秒。 | 必须,如果是通过开放搜索SDK做上报,SDK会自动设置, 如果是通过开放搜索API做上报,需要设置 |
关于item_type定义
ID | item_type | 业务含义 |
1 | goods | 物品、商品 |
2 | article | 文章、博客、小说 |
3 | ask | 问答 |
4 | bbs | 论坛帖子 |
5 | download | 下载 |
6 | image | 图片 |
7 | media | 多媒体(包括电影、电视、音乐等) |
8 | recipe | 美食、菜谱 |
9 | news | 新闻资讯 |
10 | institution | 组织机构 |
11 | other | 其他 |
常用行为类型
ID | bhv_type | 含义 | bhv_value | bhv_detail |
1 | expose | 曝光 | 置空 | 置空 |
2 | stay | 停留 | 停留时长(单位秒) | 置空 |
3 | click | 点击 | 点击次数。默认值: 1 | 置空 |
4 | cart | 加入购物车,加入书架,加入歌单 | 置空 | 置空 |
5 | buy | 购买 | 购买件数。默认值: 1 | 例:buy_price=12,price_unit=RMB |
6 | collect | 收藏 | 置空 | 置空 |
7 | like | 点赞 | 点赞次数默认值:1 | 置空 |
8 | dislike | 点衰 | 点衰次数默认值:1 | 置空 |
9 | comment | 评论 | 评论次数默认值:1 | 置空 |
10 | share | 分享、转发 | 分享/转发次数默认值:1 | 置空 |
11 | subscribe | 关注、订阅 | 置空 | 置空 |
12 | gift | 送礼物 | 置空 | 置空 |
13 | download | 下载 | 置空 | 置空 |
14 | read | 阅读 | 置空 | 置空 |
15 | tip | 打赏 | 置空 | 置空 |
16 | complain | 投诉 | 置空 | 置空 |
查看数据报告
当数据采集服务开通后,并上传了一定量的行为数据,可在数据采集页中查看数据状态和数据质量:
数据状态
数据状态分为“正常,可用”和“异常,不可用”,正常是指数据质量部分无任何报错,即所有校验皆通过,如果有报错则是“异常,不可用”;
当数据状态为“异常,不可用”时,可能会影响人气模型、类目预测的创建与训练。
数据异常状态:
数据正常状态:
数据质量
数据质量验证用于输出后台校验项有错误时,控制台会显示对应的错误信息,但校验项没有错误时不在控制台显示:注意:上图抽样检查的数据是每整点抽样展示前一个小时用户同步过来的行为数据。