在MaxCompute中利用bitmap进行数据处理
2019-08-07 本文已影响0人
暖忆_
很多数据开发者使用bitmap技术对用户数据进行编码和压缩,然后利用bitmap的与/或/非的极速处理速度,实现类似用户画像标签的人群筛选、运营分析的7日活跃等分析。
本文给出了一个使用MaxCompute MapReduce开发一个对不同日期活跃用户ID进行bitmap编码和计算的样例。供感兴趣的用户进一步了解、分析,并应用在自己的场景下。
![](https://img.haomeiwen.com/i13139111/e391da509aec4d19.png)
![](https://img.haomeiwen.com/i13139111/9c7b7291bec09947.png)
![](https://img.haomeiwen.com/i13139111/5b36b1142e737140.png)
![](https://img.haomeiwen.com/i13139111/260340181ce61cfb.png)
![](https://img.haomeiwen.com/i13139111/0c3480e0a5ffaabe.png)
![](https://img.haomeiwen.com/i13139111/2dd48693123354d0.png)
![](https://img.haomeiwen.com/i13139111/644e912d575accb1.png)
对Java应用打包后,上传到MaxCompute项目中,即可在MaxCompute中调用该MR作业,对输入表的数据按日期作为key进行用户id的编码,同时按照相同日期对bitmap后的用户id取OR操作(根据需要可以取AND,例如存留场景),并将处理后的数据写入目标结构表当中供后续处理使用。