SPARK SQL中自定义udf,udaf函数统计uv(使用bitmap)
在实际工作中统计uv时,一般会使用count(distinct userId)的方式去统计人数,但这样效率不高,假设你是统计多个维度的数据,当某天你想要上卷维度,此时又需要从原始层开始统计,如果数据量大的时候将会耗费很多时间,此时便可以使用最细粒度的聚合结果进行上卷统计,即需要自定义聚合函数进行统计,将bitmap序列化为一个字节数组。1)一次聚合/***/// 构造一个空的bitmap// 将bitmap序列化为字节数组// 将buff反序列化为bitmap/***//**
转载
2023-10-26 16:10:33 ·
391 阅读 ·
0 评论