面试官问:为什么选择 B+ 树作为数据库索引结构?
MySQL

面试官问:为什么选择 B+ 树作为数据库索引结构?

11 0

首先,来谈谈B树。为什么要使用B树?我们需要明白以下两个事实:【事实1】不同容量的存储器,访问速度差异悬殊。以磁盘和内存为例,访问磁盘的时间大概是ms级的,访问内存的时间大概是ns级的。有个形象的比喻,若一次内存访问需要1秒,则一次外存访问需要1天。所以,现在的存储系统,都是分级组织的。最常用的数据...

阅读全文
MySQL

MySQL 表之间关联查询时,为什么建议小表驱动大表?

43 0

有的时候我们在操作数据库时会将两个或多个数据表关联起来通过一些条件筛选数据,在关联表时我们要遵循一些原则,这样会使我们编写的SQL 语句在效率上快很多。一、优化原则小表驱动大表,即小的数据集驱动大得数据集。在知道什么是小表驱动大表之前,我们先来了解两个查询关键字,IN 与 EXISTS。我们通过两段...

阅读全文
MySQL

MySQL百万级、千万级数据多表关联SQL语句调优

75 0

本文不涉及复杂的底层数据结构,通过explain解释SQL,并根据可能出现的情况,来做具体的优化,使百万级、千万级数据表关联查询第一页结果能在2秒内完成真实业务告警系统优化结果。希望读者能够理解SQL的执行过程,并根据过程优化,走上自己的成金之路需要优化的查询:使用explain出现了Using t...

阅读全文
面试若干候选人后,我总结出这份Java面试技巧!
Java源码

面试若干候选人后,我总结出这份Java面试技巧!

95 0

在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间。我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发时,应该也照着这个标准来面的。我也知道,不少候选人能力其实不差,但面试时没准备或不会说,这样的人可能在进团队干活后确实能达到期...

阅读全文