Skip to content
面试手册
Search
K
Main Navigation
首页
Java
Java基础面试题
JVM面试题
Java并发编程面试题
数据库
MySQL面试题
Redis面试题
MyBatis面试题
微服务
Spring面试题
SpringMVC面试题
SpringBoot面试题
SpringCloud面试题
Dubbo面试题
MQ
消息队列基础
RabbitMQ精选面试题
Kafka精选面试题
RocketMQ精选面试题
学习
Java
SpringBoot
GitHub
Twitter
Appearance
GitHub
Twitter
Menu
Return to top
目录概览
Table of Contents for current page
大表数据查询,怎么优化?
#
优化shema、sql语句+索引;
第二加缓存,memcached, redis;
主从复制,读写分离;
垂直拆分,根据你模块的耦合度,将一个大的系统分为多个小的系统,也就是分布式系统;
水平切分,针对数据量大的表,这一步最麻烦,最能考验技术水平,要选择一个合理的sharding key, 为了有好的查询效率,表结构也要改动,做一定的冗余,应用也要改,sql中尽量带sharding key,将数据定位到限定的表上去查,而不是扫描全部的表;