考点介绍:
面试难度越来越高,但无论从大厂还是到小公司,一直未变的一个重点就是对SQL优化经验的考察。
本期分享的数据库之优化相关,分为试题、文章以及视频三部分。
答案详情解析和文章内容可点击下方链接即可查看!
一、考点题目
1.有哪些优化 SQL 的策略?
解答:优化 COUNT 查询,COUNT 是一个特殊的函数,它可以统计某个列值的数量,在统计列值时要求列值是非空的,不会统计 NULL 值。如果在 COUNT 中指定了列或列的表达式,则统计的就是这个表达式有值的结果数,而不是 NULL。COUNT 的另一个作用是统计结果集的行数,当 MySQL 确定括号内的表达式不可能为 NULL 时,实际上就……
2.mysql EXPLAIN 的字段有哪些,具有什么含义?
解答: 执行计划是 SQL 调优的一个重要依据,可以通过 EXPLAIN 命令查看 SQL 语句的执行计划,如果作用在表上,那么该命令相当于 DESC。EXPLAIN 的指标及含义如下:id :表示 SELECT 子句或操作表的顺序,执行顺序从大到小执行,当 id 一样时,执行顺序从上往下……
3.说一说你对数据库优化的理解
解答:MySQL数据库优化是多方面的,原则是减少系统的瓶颈,减少资源的占用,增加系统的反应速度。例如,通过优化文件系统,提高磁盘I\O的读写速度;通过优化操作系统调度策略,提高MySQL在高负荷情况下的负载能力;优化表结构、索引、查询语句等使查询响应更快……
4.怎样插入数据才能更高效?
解答:影响插入速度的主要是索引、唯一性校验、一次插入记录条数等。针对这些情况,可以分别进行优化。对于MyISAM引擎的表,常见的优化方法如下:禁用索引,对于非空表,插入记录时,MySQL会根据表的索引对插入的记录建立索引。如果插入大量数据,建立索引会降低插入记录的速度。为了解决这种情况,可以在插入记录之前禁用索引,数据插入完毕后再开启……
5.表中包含几千万条数据该怎么办?
解答:建议按照如下顺序进行优化:优化SQL和索引;增加缓存,如memcached、redis;读写分离,可以采用主从复制,也可以采用主主复制;使用MySQL自带的分区表,这对应用是透明的,无需改代码,但SQL语句是要针对分区表做优化的;做垂直拆分,即根据模块的耦合度,将一个大的系统分为多个小的系统……
(答案点击下方链接查看哦)
二、考点文章
1.【校招VIP】java代码优化六大原则
单一职责,代码优化第一步,单一职责原则 (Single Responsibility Principle)。对于一个java类,应该仅有一个引起它变化的原因,也就是说,一个类中,应该是一组相关性很高的函数、数据的封装。但是这个原则的界限划分的并不是那么清晰,很大程度上要依赖于开发者的个人经验来定。对于单一职责界限的划分最大的问题就是类的职责是什么,如何划分类的职责……
2.【校招VIP】java性能优化注意的几个细节规则
代码优化细节,1.尽量指定类、方法的final修饰符带有final修饰符的类是不可派生的。在java核心的API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果指定了一个类为final,则该类所有的方法都是final的。java编译器会寻找机会内联所有final方法,内联对于提升java运行效率作用重大,具体参加java运行期优化。此举能够使性能平均提高50%……
3.【校招VIP】Java代码优化原则有哪些?
Java代码优化是Java编程开发很重要的一个步骤,Java代码优化要注重细节优化,一个两个的细节的优化,产生的效果不大,但是如果处处都能注意代码优化,对代码减少体积、提高代码运行效率是有巨大帮助的,还能在一定程度上避免未知错误,常用的Java代码优化细节如下:1. 为类、方法指定final修饰符,为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写,如……
三、考点视频
1.二叉树叶子结点数=度为2结点数+1
这是二叉树最常考的性质之一,是校招和考研笔试的考点。性质有数学的定理一样,掌握了这种题就是送分题,没掌握花很长时间也得不了分……
移动端链接:https://m.xiaozhao.vip/dTopic/detail/735
PC端链接:https://xiaozhao.vip/dTopic/detail/735