索引缺失问题排查.md 3.53 KB

请你重点关注有哪些维度的索引,各自数据的来龙去脉。 现在在线推荐服务推荐结果都为空,经过检查时离线索引数据为空,请你检查这些索引清单(含用户特征相关和兜底维度),方便你逐项去离线侧核对/补齐。Redis DB 默认:推荐用 db3,用户画像用 snapshot_db(app_config 中 Redis snapshot_db,默认0)。 一、首页猜你喜欢 /recommendation/home 1) 用户行为 I2I(需要用户画像行为;无画像则这些路空) item:similar:swing_cpp:{sku} (key_name=user_behavior_click/purchase) item:similar:swing:{sku} (同上) item:similar:session_w2v:{sku}(同上) item:similar:deepwalk:{sku} (同上) item:similar:content_name:{sku}(同上) item:similar:content_pic:{sku} (同上) 2) 用户品牌偏好(需要画像品牌;无画像则空) interest:hot:{brand_id} (key_name=user_brand_preference,模板 interest:hot:{key},key 为品牌ID字符串) 3) 用户类目偏好 ES 召回(需要画像类目;无画像则空) 直接查 ES sale_category_all,不依赖 Redis 索引。 4) 用户行为类目 ES 召回(需要画像行为类目;无画像则空) 同上,查 ES,不依赖 Redis 索引。 5) 兜底兴趣聚合(无画像也应有结果,取决于这些 key 是否存在) 平台热门:interest:hot:platform:{platform} 示例 interest:hot:platform:essaone 全局热门:interest:global:global(模板 interest:global:{key},这里 key=global) 若有客户端维度(目前配置中未直接用 client_key,但可检查是否有 interest:hot:client_platform:{client}、interest:hot:platform_client:{platform}{client} 供扩展) 二、详情页大家都在看 /recommendation/detail 1) 当前商品 I2I(无画像也可用,只要有这些 key) item:similar:swing_cpp:{sku_id} item:similar:swing:{sku_id} item:similar:session_w2v:{sku_id} item:similar:deepwalk:{sku_id} item:similar:content_name:{sku_id} item:similar:content_pic:{sku_id} 2) 用户行为 I2I(需要用户画像行为;无画像则空) 同首页的行为 I2I 路径,依赖 item:similar:swing_cpp|swing|session_w2v|deepwalk|content_name|content_pic:{sku} 三、Redis Key 模板(统一定义) I2I:item:similar:swing_cpp:{key} / swing / w2v / session_w2v / deepwalk / content_name / content_pic 兴趣聚合:interest:hot:{key}、interest:cart:{key}、interest:new:{key}、interest:global:{key} 四、需要检查/补齐的关键索引清单 必须有(兜底与主干): interest:hot:platform:essaone(或对应平台)——首页兜底 interest:global:global —— 首页兜底 item:similar:swingcpp:{sku} —— 详情页主路、首页行为召回 item:similar:swing:{sku} 建议有(覆盖率/多样性): item:similar:session_w2v:{sku} item:similar:deepwalk:{sku} item:similar:content_name:{sku} item:similar:content_pic:{sku} 可选/扩展兜底(若有产出): interest:hot:client_platform:{client} interest:hot:platform_client:{platform}{client} 类目维度热门:interest:hot:category_level2:{id} 等(当前配置未直接用,但有数据可扩展) 其他兴趣列表:interest:cart:、interest:new: 五、用户画像数据 Key 形如:user_profile:{user_id}(在 snapshot_db,默认 db0)。缺失画像会导致行为/偏好召回为空,但兜底热门仍可用,只要上述兴趣/全球热门 key 存在。 你可以据此逐项在离线产出与 Redis db3/snapshotdb 里核对哪些 key 缺失,优先确保兜底热门与当前商品 I2I 存在

请你分析日志,为什么没结果,并且给出完善的方案