1. ICP(Index Condition Pushdown): 在MySQL5.6之前,存储引擎会通过遍历索引定位基表中 的行,然后返回给Server层,再去为这些数据进行WHERE后的条件过滤。MySQL5.6之后支持ICP,如果WHERE条件可以使用索引,MySQL会把这部分操作放到存储引擎层,存储引擎通过索引过滤,把满足条件的行从表中读出。ICP能减少存储引擎访问基表的次数和Server层访问存储引擎 的次数。
  2. MRR(Multi-Range Read Optimization):MRR的作用就是把普通索引叶子节点上找到的主键值集合放到read_rnd_buffer,然后再该buffer中对主键值进行排序,最后再利用已经排好序的主键值集合去访问表中的数据,这样就将原来的随机I/O转化为顺序I/O,降低了查询过程中的I/O开销。
  3. BKA(Batched Key Access):BKA是提高表join性能的算法,其作用是在读取被join表的记录的时候使用顺序I/O。

MySQL提供的几种检索行数据的优化方式的更多相关文章

  1. Hive三种不同的数据导出的方式

    转自:http://blog.chinaunix.net/uid-27177626-id-4653808.html Hive三种不同的数据导出的方式,根据导出的地方不一样,将这些方法分为三类:(1)导 ...

  2. hibernate提供的5种检索数据方式

    一.五种检索数据方式 1.OID检索,即使用session.get或session.load通过类及指定id查询数据,如Customer c=(Customer)session.get("C ...

  3. 统计mysql库中每张表的行数据

    修改数据库配置文件:vim /etc/my.cnf [client] user=username password=password 使用shell脚本统计表中的行数据:count.sh #!/bin ...

  4. MySQL的group_concat()函数合并多行数据

    一个很有用的函数 group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果. 通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将 ...

  5. android端从服务器抓取的几种常见的数据的处理方式

    1.图片 public void look(View v) { String path = et_path.getText().toString(); try { URL url = new URL( ...

  6. 浅谈Entity Framework中的数据加载方式

    如果你还没有接触过或者根本不了解什么是Entity Framework,那么请看这里http://www.entityframeworktutorial.net/EntityFramework-Arc ...

  7. MySQL提供了以下三种方法用于获取数据库对象的元数据

    MySQL提供了以下三种方法用于获取数据库对象的元数据: 1)show语句 2)从INFORMATION_SCHEMA数据库里查询相关表 3)命令行程序,如mysqlshow, mysqldump 用 ...

  8. 将Excel数据导入mysql数据库的几种方法

    将Excel数据导入mysql数据库的几种方法 “我的面试感悟”有奖征文大赛结果揭晓! 前几天需要将Excel表格中的数据导入到mysql数据库中,在网上查了半天,研究了半天,总结出以下几种方法,下面 ...

  9. MySQL命令行数据操作使用心得(总结版)

    Char 0~255 Varchar 0~65535 text 0~65535(只能保存字符) Longtext 0~4294967295(只能保存字符) CMD登陆mysql mysql -u ro ...

随机推荐

  1. js的新生代垃圾回收

    推荐阅读:https://www.cnblogs.com/chengxs/p/10919311.html 在进行老生代的标记清除法回收以前,还会有一个新生代的垃圾回收算法执行. 新生代和老生代 所谓新 ...

  2. python中的关键字yield有什么作用?

    保存当前运行状态,然后暂停执行,即将函数挂起.yield关键字后面表达式的值作为返回值返回.当使用next(),send()函数从断点处继续执行.

  3. scrapy框架自定制命令

    写好自己的爬虫项目之后,可以自己定制爬虫运行的命令. 一.单爬虫 在项目的根目录下新建一个py文件,如命名为start.py,写入如下代码: from scrapy.cmdline import ex ...

  4. Tomcat的默认端口问题

    0x00 起因 今天看到一个226团队,进群的时候有一个问题问的就是:Tomcat的默认端口是多少? 当时我只想到了8080,等过了不久,有位管理员回复了我是三个默认端口....,马上去翻了下资料,才 ...

  5. vscode远程代码同步

    参考资料: https://blog.csdn.net/u012560340/article/details/83030680 https://github.com/liximomo/vscode-s ...

  6. 【译】Solr in Action 第二章

    2.1 2.2 2.3 基本废话 2.4 基本废话

  7. 等待 Redis 应答

    https://zhuanlan.zhihu.com/p/58608323 mq消息合并:由于mq请求发出到响应的时间,即往返时间, RTT(Round Time Trip),每次提交都要消耗RTT, ...

  8. 各种Android UI开源框架 开源库

    各种Android UI开源框架 开源库 转 https://blog.csdn.net/zhangdi_gdk2016/article/details/84643668 自己总结的Android开源 ...

  9. spring cloud+.net core搭建微服务架构

    http://www.cnblogs.com/longxianghui/p/7800316.html

  10. osg 三维模型加载与解析(fbx、3ds、ive、obj、osg)

    void TeslaManage::OnlineTreeViewDoubleClick(const QModelIndex & index) { int row = index.row(); ...