本文部分内容会涉及mysql,可能在其他数据库中并不适用。本章节只针对数据库结构设计做讨论,查询优化的其他内容待续。
数据库设计及使用是WEB开发程序员必备的一项基础技能,在大数据量和高并发场景,合理的数据结构及SQL查询优化对项目来说都会显得格外重要。大部分有经验的程序员都能了解到,程序的瓶颈往往不在程序本身,而在数据访问层。造成数据访问效率低下的原因有很多,如何解决这些问题,直接影响到应用的稳定性、健壮性。以下列举几个常见的问题:
- 数据库锁表,查询阻塞
- 高并发场景下,链接数量瓶颈
- 查询效率低下,程序长时间无法退出
- 写入性能低下,造成读写竞争激烈
以上只是列出了数据库使用过程中比较常见的问题,出现这些问题的常见原因列举如下:
- 数据结构设计不合理
- 索引设计糟糕