关于索引和并发的一些问题!

版主你好 最近面试经常遇到面试官问索引在什么场景下使用,使用索引和不使用的区别? 还有索引的原理是什么 ? 还有项目中并发是怎么控制的,多少的数据量会出现并发, 希望版主能解答下这两个问题 多谢版主

问题有点多哈,我们一个个解决

1、什么是索引?
官方解释就是:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构
通俗理解就是:假设把数据库当做一个仓库,仓库里面东西比较杂乱。 这个时候索引就相当于一个归类,比如大米放一块,电器放一块等等

2、 索引在什么场合下用?
首先理解有哪些索引,不同索引的应用场合不同,比如唯一索引,一般的主键ID都会伴随着一个唯一索引,保持数据的唯一性等等
具体可以参照:mysql索引类型汇总,这里其他数据库索引就自己看看了

3、索引的作用
简单来说就是加快查询速度。官方的解释的话,可以看看这个索引的作用
另外索引还有一个作用,那就是降低排序成本,具体可以看看索引的另一个作用

4、并发的出现
这个我没法准确回答你,因为不同系统的并发承受量不一样,这个跟你的服务器大小、是否进行项目架构上的优化有关系,相关方案在前面的问题中也回答过

5、至于并发的控制
现在好像还没有完全解决并发的方案,都只能说尽可能的避免,比如提高带宽,优化项目(这里就不做过多解释了,看看前面的问题吧)等等