1、了解sql设计范式,不要求严格遵守,但胡乱设计也不好
2、在建表之初要考虑后期业务,需要哪些功能,表结构能否实现业务操作及对效率是否有影响
此业务不仅仅本身增删改查,还有涉及关联其他业务
3、在建表之初同时要考虑读和写的操作,读写是否频繁?是否可以把读和写的字段拆成两个表?
4、该添加索引的位置添加索引,索引不宜过多,也不要一个没有。添加索引之后用explain看一下查询计划,是否走
了索引。
5、表数据太多时,需要考虑读写分离,增加缓存,索引或者分库分表以加快查询速度,减少数据库压力
6、是否需要将复杂sql的操作通过java程序转换为2~3个sql操作。有时这样可将随数据不断增长的查询时间不断增长
的sql转换为固定时间的程序执行。这种转换在数据量小的时候没有帮助反而增加了查询时间,但在数据量大的时候效
果可能更好一些。
7、如果前期设计好,但后期依旧出现问题。采取6的方式,或者只能根据业务重构表结构了。
欢迎加入我的qq群:425783133