当前位置: 首页 > 网络应用技术

什么是索引推?在知识点下方的深度分析索引中

时间:2023-03-09 12:38:47 网络应用技术

  索引条件下降ICP是MySQL5.6之后的一项新功能。主要的核心点是将数据筛选过程放在存储引擎层上,而不是像以前那样将其放在服务器层上。

  尽管这是一个相对简单的概念,但可能会对许多不符的学生产生一些误解,这些学生会在索引下误解。至于什么,请参见下面。

  首先,我们创建一个表,即同时建立的关节索引,并同时插入三个测试数据。

  然后,我们执行查询,如下图所示,您可能知道,这意味着有一个索引推。

  是的,对于此查询方案,这是一个索引推动。那么索引下的推动是什么?

  根据我们的上述情况,实际上有两种索引树。一个是主要键索引,该键索引存储特定的数据信息,另一个是保存主键ID的联合索引。

  在没有ICP索引的情况下推动时,此查询过程应像这样(相关的细节稍小):

  ICP之后的过程是:

  与这两个过程相比,将清楚地发现。使用ICP后,我们只需直接通过关节索引的数据过滤。无需找到一堆无用的数据来过滤服务器层。在这种情况下,减少了返回表的次数和数据,并且IO时间的数量减少了,并且性能很好地提高了。

  根据官方文件,ICP实际上有一定的使用限制,只有关键是说它很混乱。

  现在,我们基本上使用5.6或更高版本。默认值是打开ICP。如果要关闭它,则可以传递命令。

  一般而言,在正常情况下,MySQL一次只能在一个查询中采用一个索引。让我们修改上面的表结构,然后将关节索引更改为两个单独的索引。数据保持不变。

  然后我们执行了查询,结果如下所示。

  您会发现,为什么我仍然有索引推动?这是不科学的还是正确的,似乎无法解释。您可以在此时间推出索引之前找到它,然后将其推到索引。这是完全不合理的。

  实际上,实际情况是,它并不意味着必须使用它来向下推下,而是可以使用它,但可以使用。

  这有点作弊,在判断我们时可能会造成误解。

  如果您去Internet寻找许多示例来构建索引,然后告诉您这是您在索引下推动索引时,您可以尽可能多地喷涂他。我们说,在索引下,它必须基于关节索引。某些数据是直接过滤的,而无需对服务器层进行多个无用的返回以进行过滤。你一定很清楚。

  好吧,今天的话题在这里。我是Ai Xiaoxian,我们下次会看到它。

  (我最初想绘制另外两张图片,但是这个概念似乎太简单了。这幅画的绘画毫无意义,就像您说的那样,它涵盖了索引,回报桌,并绘制了一些图片要解释它。需要正确,这绝对不是因为我很懒惰...)