You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在不丢失分析数据的前提下清理BigQuery/Firebase中的旧用户属性?

解决Firebase用户属性重命名后旧属性清理与数据保留问题

一、先确认是不是真的属性溢出

先去Firebase控制台的「用户属性」页面,统计当前活跃的用户属性数量——BigQuery里的历史旧属性数据不会占用Firebase的25个属性配额,只有当前还在被客户端上报的活跃属性才算数。所以大概率是你还有旧版本客户端在上报BootsEquipmentItemName,导致活跃属性数逼近上限。

二、彻底停掉旧属性的上报

把所有客户端代码里的BootsEquipmentItemName全换成BootsItemName,确保新代码不再上报旧属性。如果还有用户在用旧版本客户端,要么推更新,要么在客户端逻辑里加拦截,不让旧属性再发往Firebase。

三、从Firebase控制台删除旧属性

进入Firebase控制台 → Analytics → 用户属性,找到BootsEquipmentItemName,点右侧三个点选删除。这个操作只会把旧属性从控制台的展示列表里去掉,完全不会删BigQuery里的历史数据,放心操作。

四、在BigQuery里合并新旧属性数据

要保留完整的分析数据,直接在BigQuery里写SQL把新旧属性合并就行,比如:

SELECT
  user_pseudo_id,
  -- 优先取新属性值,没有就用旧属性的,保证数据完整
  COALESCE(new_boots.value.string_value, old_boots.value.string_value) AS BootsItemName,
  -- 其他你需要的用户属性...
FROM
  `你的项目ID.analytics_xxxxxx.events_*`,
  UNNEST(user_properties) AS new_boots
  LEFT JOIN UNNEST(user_properties) AS old_boots
  ON old_boots.key = 'BootsEquipmentItemName'
WHERE
  new_boots.key = 'BootsItemName'

嫌每次写麻烦的话,直接创建一个视图,把这个合并逻辑固化,以后分析直接查视图就好。

五、验证结果

等个24小时,再去Firebase控制台看用户属性数量,确认旧属性已经从活跃列表里消失,配额回到正常范围。同时在BigQuery里查一下刚才的视图,确认新旧数据都合并成功,历史数据没丢。

内容的提问来源于stack exchange,提问作者Aleksandr Kuznetsov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 02:55:29