原文发布:http://river0314.lofter.com/p...有一个大数据表,30个字段,包括intvarchartext字段,1000W+数据,将每天增加,有10个经常搜索的字段,如何优化这个?我在向某人寻求建议后才得到类似的答案。感觉这种题有点假。现实中基本不会出现这种问题吧?优化方案:主从同步+读写分离:这个表在设备情况下读写分离,可以减轻很多压力,数据稳定性也可以提高垂直分表:根据原则,每张表不要超过5个索引,垂直拆分字段,将部分字段拆分成新表。通常我们按照以下原则进行垂直拆分:(先区分本表中的冷热数据字段)将不常用的字段放在单独的表中;将text、blob等大字段拆分到附表中;经常组合查询的列放在一个表中;缺点是:需要重写很多逻辑,带来很多工作量。使用表分区:参考:https://my.oschina.net/ydsaky...这是一个推荐的方案,不会带来重写逻辑等。表分区可以根据时间进行,相当于在磁盘上,表的数据存放在不同的文件夹中,可以大大提高查询速度。表水平分片:1000万条数据,数据量很大,会给运维带来一定的压力。备份时,单表备份需要的时间会很长,所以可以根据服务器硬件情况对表进行水平分片,以每张表有多少数据为准。如果有不好的地方,请指点,谢谢。最后随便吃顿饭阿里云全系列产品/短信套餐特价采购中小企业上云最佳选择阿里云内部优惠券
