【50%】前端页面编写
【30%】后端接口,数据分析语句编写
数据分析采用的presto,相比mysql的knex和sequelize,presto在nodejs上没有现成框架可用,需要自己学习并构建
presto 分析语句。
2. 用户分群和用户标签的筛选规则比较复杂(主要参考神策画像),需要根据标签种类和数据类型支持不同操作,聚合操
作有去重数,平均值等,比较操作有大于等于小于等,时间比较有在过去几天内,在某个时间范围内等,除此之外,还
要支持动态添加条件,属于非常复杂的组件,最终该组件需要生成json格式的筛选规则,并保存到数据库中,用于后端
的数据分析。
3. json格式筛选规则最终是要处理preseto分析SQL,自顶而下处理起来,不好遍历并返回处理结构,后决定将筛选规则
处理为AST,自底而上进行解析,然后构建分析SQL。
4. 由于不同项目需要对接不同的权限系统,需要做了一层适配,并编写认证中间件
点击空白处退出提示










评论