Closed wtune closed 4 years ago
表article中缺少一些需要的索引,通过测试,我们发现加上这些索引可以极大地提高相关查询的性能(高达80%),需要添加的索引分别如下所示:
ArticleMapper#countByUser是根据用户id统计其文章数量,为比较常用的查询语句,在article_user_id上添加索引可以加快该查询的效率。
ArticleMapper#getLastUpdateArticle是获取最新更新的文章,为一条常用查询,在update_time字段添加索引可以很大程度上提升该语句的性能。
ArticleMapper#findAll实现的是根据条件查询article中的所有字段,为比较常用的查询语句,结果按照article_order和article_id来排序,在这两个字段上添加联合索引可以极大地提升该语句的查询效率。
ArticleMapper#findAll的查询条件中常会带有关键字,会用其于article_title字段匹配,在实际使用中用关键字进行匹配文章是很常见的,因此应该为article_title添加全文索引从而加快相关查询。
在下列字段添加索引 article.article_user_id article_update_time article_title article.(article_order, article_id)
谢谢你的建议,后期抽空统一改
问题
表article中缺少一些需要的索引,通过测试,我们发现加上这些索引可以极大地提高相关查询的性能(高达80%),需要添加的索引分别如下所示:
1.article.article_user_id
ArticleMapper#countByUser是根据用户id统计其文章数量,为比较常用的查询语句,在article_user_id上添加索引可以加快该查询的效率。
2.article.article_update_time
ArticleMapper#getLastUpdateArticle是获取最新更新的文章,为一条常用查询,在update_time字段添加索引可以很大程度上提升该语句的性能。
3.article.(article_order, article_id)
ArticleMapper#findAll实现的是根据条件查询article中的所有字段,为比较常用的查询语句,结果按照article_order和article_id来排序,在这两个字段上添加联合索引可以极大地提升该语句的查询效率。
4.article.article_title(FullText)
ArticleMapper#findAll的查询条件中常会带有关键字,会用其于article_title字段匹配,在实际使用中用关键字进行匹配文章是很常见的,因此应该为article_title添加全文索引从而加快相关查询。
解决方法
在下列字段添加索引 article.article_user_id article_update_time article_title article.(article_order, article_id)