天天看点

数据库优化 | 学习笔记

开发者学堂课程【Java面试疑难点串讲2:Java数据库开发:数据库优化】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:

https://developer.aliyun.com/learning/course/25/detail/533

数据库优化

在现实的开发环境之中所谓的数据库优化都是骗人的。

实际上所请的数据库优化有根多层次。

1、语句上的忧化:尽量不要去使用复杂的多表查询,尽量不要频繁的使用各种神奇的统计查询。

如果需要的时候建议使用子查询来代替(子查询只是一种折中方案也不是最好的,只

是相对的,当你的数据量量大的时候,那么你所有认知的规则的全部都将改变)。.

2、数据库的优化只能够体现在查询上,而这个查询还是在认知范围内的数据量,例如使用索引,但是一旦使用了索引就不能够进行频繁的修改。

例如:在主键往往会设置索引,但是从另外一个角度,数据不应该进行物理删除,而要进逻辑删除,只是为了保证索引不被重新创建;

空间换时间、时间换空间:你的数据是否需要进行同步处理操作。

3、当存在有多个 RPC 业务端的时候, 可以考虑进行垂直拆库的做法, 这个时候只能够按照功能进行拆分, 这个是需要强大的接口技术支持的。

4、当分库也无法解决问题的时候就需要考虑数据库的水平拆分问题(认知范围内的唯一可以使用的最后方案)。

5、如果需要保证强大的查询性能,那么藏需要再次引入搜索引擎的概念进行分词处理。