# 新建特征源

# 一、Hivesql类特征

# 新增特征源

# 添加原始特征字段

按上图所以,添加特征字段,用于定义pb字段
注:

  • 可以通过批量添加快速添加完整列表,也可以通过点添加按钮逐条添加
  • pb类型支持以下几种:
    • FEA_INT32
    • FEA_INT64
    • FEA_FLOAT
    • FEA_STRING
    • FEA_INT32_LIST (数据源格式: 直接使用 ARRAY 类型或者 STRING 类型如 "123,456,789")
    • FEA_INT64_LIST (数据源格式: 直接使用 ARRAY 类型或者 STRING 类型如 "123,456,789")
    • FEA_FLOAT_LIST (数据源格式: 直接使用 ARRAY 类型或者 STRING 类型如 "1.23,4.56,7.89")
    • FEA_STRING_LIST (数据源格式: 直接使用 ARRAY 类型或者 STRING 类型如 "abc,def,ghi")
    • FEA_MAP_STRING_TO_INT64 (数据源格式: 直接使用 MAP 类型或者 STRING 类型如 "key1:123,key2:456,key3:789")
    • FEA_MAP_STRING_TO_FLOAT (数据源格式: 直接使用 MAP 类型或者 STRING 类型如 "key1:1.23,key2:4.56,key3:7.89")
    • FEA_MAP_STRING_TO_DOUBLE (数据源格式: 直接使用 MAP 类型或者 STRING 类型如 "key1:1.23,key2:4.56,key3:7.89")
    • FEA_MAP_STRING_TO_STRING (数据源格式: 直接使用 MAP 类型或者 STRING 类型如 "key1:abc,key2:def,key3:ghi")
    • FEA_MAP_INT64_TO_INT64 (数据源格式: 直接使用 MAP 类型或者 STRING 类型如 "123:456,789:123,456:789")
    • FEA_MAP_INT64_TO_FLOAT (数据源格式: 直接使用 MAP 类型或者 STRING 类型如 "123:1.23,456:4.56,789:7.89")
    • FEA_MAP_INT64_TO_DOUBLE (数据源格式: 直接使用 MAP 类型或者 STRING 类型如 "123:1.23,456:4.56,789:7.89")
    • FEA_MAP_INT64_TO_STRING (数据源格式: 直接使用 MAP 类型或者 STRING 类型如 "123:abc,456:def,789:ghi")
  • 对于 LIST 的类型,需要在 hive 表中定义为 ARRAY 类型或者 STRING 类型,元素之间用逗号分隔
  • 对于 MAP 的类型,需要在 hive 表中定义为 MAP 类型或者 STRING 类型,元素之间用逗号分隔,kv之间用冒号分隔,最后体现在样本中会分成两个feature,一个是keys,一个是values,且顺序一一对应的
  • 一些特殊情况:假如输入源,如hive里的数据类型是 STRING,而这里定义为 FEA_INT64,则会自动尝试将string类型转换为int64,需要确保字符串能被转换为整数,如果转换失败,可能会导致用默认值0代替

# 海象调度任务查看

需要等编译发布后,才能看到

点击列表中的“调度”按钮,查看关联海象任务

# 二、实时计数类特征

实时计数类特征生产链路简要说明

  • 从全量埋点事件上报消息中,根据自定义的事件清洗规则,筛选出特征统计需要的目标事件
  • 对符合条件的事件,进行对应特征值的计数并写入分布式滑窗存储
  • 特征查询时即可查询指定时间窗口内的特征统计值

即:埋点事件上报 → 事件清洗&特征计数 → 分布式滑窗存储 → 按时间窗口查询

# 新增特征源

新建特征源截图

# 添加原始特征字段

添加特征字段截图 按上图所示,添加特征字段,用于定义 pb 字段。

# 添加特征字段的源配置(事件清洗规则)

事件配置截图

具体埋点事件及每个事件上报的字段,可以查看 蓝鲸平台 事件接入-上报消息 页面 (opens new window)

源配置用于指定事件校验规则,用以从所有埋点事件上报消息中筛选出该特征需要统计的事件。 注:

  • 上报事件支持以下几种:
    • pageview/position (曝光)
    • click/position (点击)
    • chatalk (弹幕)
    • send (送礼)
    • heartbeat (用户心跳)
    • endup (房间结束)
    • follow (订阅)
    • follow_cancel (取消订阅)
    • follow_cannel (取消订阅,ios上报字段错误。在这里修正)
  • 校验字段支持嵌套字段,用 / 分隔,例如 extra/type 表示从 extra 参数(JSON,包含多个二级字段)中提取其中的 type 字段

# 特征源复用

在创建新的特征源时,可以直接复用已定义的特征源配置,包括:特征字段定义、事件校验规则等。
复用时,平台不会重新创建或维护新的特征存储,只需根据配置调整查询的时间窗口,即可满足不同统计需求。
这意味着多种时间尺度的特征可以共用同一份数据存储,减少存储和维护成本。

使用场景示例:
针对首页主播小时级统计特征,若需要创建多个时间窗口的特征(如4h、12h、24h特征),则无需为每个时间窗口保存独立数据,只需维护最大时间窗口(24h)的数据;
其余时间窗口的特征在查询时,通过指定的查询时间窗口获取相应数据即可。

特征源复用截图