https://linzhiqiang.blog.csdn.net/article/details/80721237?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-4.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-4.control
1.背景
随着业务的快速发展,为了进一步提升获客能力,提高用户的转化率,搭建一个用户标签系统很有必要。
2.设计目标
1)支持根据用户id查询标签;
2)支持根据标签获取用户集合;
3)根据用户id查询聚合信息(包括用户标签、以及其他聚合内容);
4)减少mysql多表join *** 作的查询性能开销,提升查询的性能;
3.标签系统设计
方案1:使用redis的hash结构来存储用户标签
1)hash的key是用户id,value是一个map,然后map里面k-v键值对对应多个标签和聚合内容;
2)缺点:读取性能高,但是仅仅支持基于id查询用户标签,不支持复杂的查询(如根据标签查询用户集合、如根据二级索引查询等)
方案2:使用mongoDB来存储用户标签
1)用户的id作为用户文档的_id,数据从MongoDB中读取出来后,可无需转换直接使用;
2)适用于表结构经常改变,数据量比较大,且一个领域的数据聚合到一个文档中的;
从来没有遇到过这种情况,从描述上看“系统找不到指定批处理标签”,这句话好像也不是mysql可能出现的问题。你可以备份一下mysql,然后卸载mysql,重启机器,删除mysql安装目录,然后再重新安装一下。
1、settings标签中的每一个setting都是用于调整mybatis的运行行为。2、在需要使用其中某些setting时加入即可。setting标签的配置是配置MyBatis框架运行时的一些行为,例如缓存、延迟加载、结果集控制、执行器、分页设置、命名规则等一系列控制性参数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)