ITPub博客

首页 > > > 大表如何优化?

大表如何优化?

作者:浪花小雨滴 时间:2023-04-20 15:38:10 0 删除 编辑

当MySQL单表记录数过大时,数据库的增删改查性能会明显下降,常见的优化方法如下:

(1)限定数据的范围

务必禁止不带任何限制数据范围条件的查询语句。比如我们当用户在查询订单历史的时候,可以控制在一个月范围内。

(2)读写分离

经典的数据库拆分方案,主库负责写,从库负责读。

(3)垂直分区

根据数据库里面数据表的相关性进行拆分。例如,用户表中既有用户的登录信息又有用户的基本信息,可以将用户表拆分成两个单独的表,甚至放到单独的库做分库。

垂直拆分就是指数据表列的拆分,把一张列比较多的表拆分成多张表。

垂直拆分的优点:可以使得列数据变小,在查询时减少读取的block数,减少IO次数。另外,垂直分区可以简化表的结构,易于维护。

垂直拆分的缺点:主键会出现冗余,需要管理冗余列,并会引起join操作,可以通过在应用层进行join来解决。此外,垂直分区还会使得事务变得更复杂。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31537575/viewspace-3137032/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-05-16

  • 博文量
    4259
  • 访问量
    40139