从摸鱼学徒进阶摸鲸校尉
处理之后,每个uid都被打上了类别标记。然后我们就可以根据标记判断用户最终所属的群组,用这种方法即使分组数量随着属性数量指数增加,但是我们的处理数据的复杂度随着属性数量增加线性增加。提高了效率,优化了逻辑。 我把它叫做量子叠加分组法,原因在于 一个量子系统可以处于不同量子态的叠加态上,当去观察它的时候,才会从多种状态坍缩到一种确定的状态 对比我们的分组模型 一个用户可能同时属于n个不同的组,当我们去sum他们并观察的时候,才能唯一确定他所在的分组 关联 什么?sql的关联表只认join?那你就是个outer了 接下来我来说一下union all怎么关联,以及union all关联的好处 假如我们是一个购物app,需要建立一张用户行为的宽表记录用户的核心行为。用户标识记作uid,商品唯一标识记作id,用户行为日志表为action,用户行为主要有三种,一,查看商品,标记detail;二,加入购物车,标记cart;三,购买,标记buy。我们需要计算的是一个uid每天三种行为的次数,具体如下: uid detail_amunt cart_amount buy_amount 按照常规的方法,有的同学可能是这么算的里有个默认的逻辑是,用户的加入购物车以及购买行为一定要先查看,否则无查看的加入购物车行为不能被计算在内。那么难度又来了,假如加入购物车它就是不需要查看呢? 有些同学是这么处理的,用今天活跃的用户作为主表再去关联后面三个行为的表就解决了 这样自然可以,这样计算需要的资源较多,逻辑并不清晰,而且把活跃且以上三个行为一个都没有的用户计算进来了。
下面我来推荐一个方式,可以一次性解决上述所有问题 (编辑:宁德站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |