User表设计在一块好还是单独设计一张UserCounter表来专门存这些统计字段分开好一点?

我用户表里有几个字段,如:登录次数,收藏次数,喜欢次数等等,这样的统计字段,大家觉得是跟User表设计在一块好还是单独设计一张UserCounter表来专门存这些统计字段分开好一点?

慕婉清6462132
浏览 113回答 3
3回答

GCT1015

我的User系统分成了三级:user表存储用户的基本信息,包括登录、状态、姓名、邮件、手机、积分、余额user_info表存储用户的扩展信息,包括联系方式、个人描述,头像、等不会立即使用的信息user_info表中有个TEXT类型的settings字段,存储各种扩展状态(序列化后的数组)仅供参考。

繁花如伊

适合需求的设计就是好设计,不必过早优化,怎么设计user表也是一样。怎么设计,取决于系统的需求、用的软件和架构。在数据量不大、更新不频繁的情况下,何不就简放在一个表中,等一段时间用户数量级变化后,原始架构是否还能支撑新需求不可获知,再作优化或重构也行。如果数据量大时,也还是要看需求对数据实时性和准确性要求高不高,都会有不同的设计。

冉冉说

首先要考虑性能瓶颈在哪里。如果你的查询压力很大,而且分开以后会导致需要join才能得到数据,那么据不应该分开。如果不会导致join查询,比较建议你分开。因为MySQL访问是按照页来访问的,分开意味着减少对其他字段的访问。 一个page可以放更多的数据,可以减少io压力和增加内存利用率。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

MySQL