首页 > 多表查询的结果能缓存吗?如何做能提高效率?

多表查询的结果能缓存吗?如何做能提高效率?

例如现在我有个日志表

create table log(
    integer user_id,
    char(100) action
);

和一个用户表

create table user(
    integer user_id,
    char(20) username
);

我要查询 username,action
user的数据量不是很大(1w级),而log的数据量是非常大的。这样的话每次查询都需要做连接,效率应该会非常慢!请问有什么解决方法不?

我考虑是不是可以适当的增加缓存,例如在log中再增加一个username字段,但是用户是有可能改username的,不知道大家在实际系统中有什么好办法?


既然用户表不大,那么就先查日志,查完日之后得到uid 然后再去user里查username


可以增加冗余字段,然后定时离线跑数据一致性,毕竟username修改频率不是太高

【热门文章】
【热门文章】