对于事务性工作负载是通常最快这个大小设置为32K,并且也是允许的最小尺寸。您应该谨慎使用它设置为较大的值,因为这可以很容易地降低性能。

如果所有的数据进行排序不适合在指定缓冲区大小的MySQL第一种类尽可能多的数据将适合,那批写入磁盘。接下来,它排序另一批和写入操作。然后执行这些和所需的所有其他批次的基于磁盘的归并排序,使用磁盘的三个临时文件这一点。这个过程是有效的,但对于大型查询可以使用SET SESSION sort_buffer_size = 128 * 1024用于增加查询运行sort_buffer_size的值之前的会话;例如使用128K的排序缓冲器。 * 1024是有方便,因为交互式客户端不支持k或m后缀,可以在配置文件中使用。

在基于磁盘的排序方法中使用合并的数量被报告在状态变量Sort_merge_passes,购自SHOW GLOBAL STATUS; 。如果在正常生产中使用一段时间后,所报告的值是0可以肯定的是sort_buffer_size的值值不是太小,一个很好的迹象,这很可能是太大。在实践中人们往往将其设置为比最佳的许多工具更大的不恰当建议增加它的值。不要只是sort_buffer_size的值增加,直到Sort_merge_passes是0。这几乎肯定会产生大小比最快的代价大得多。对于非常鲁莽,力求有一个繁忙的服务器上每正常运行时间的第二个至少几Sort_merge_passes。可能还有更多。为了更准确,你需要你的标杆查询和建议结合你的实际。

对于常见的Linux内存分配方法用于分配存储器可以改变到较慢的方法超过256K 512K或和2M的尺寸。才去对这些阈值之一,您应该使用特别注意,内存分配成本可能大大超过刚好低于阈值。

运行基准建议只读或大部分工作负载可以期待在Linux上使用一个32K sort_buffer_size的值,而不是256K 有 1-2%的性能提升。更大的尺寸比256K将有更大的副作用。好处将取决于使用的操作系统的内存分配器不同,但要以此为约很可能是适当的值很好的指导。

MySQL的5.6有LIMIT的查询只保留目前匹配缓冲限位行的优化。这避免了需要排序的整个结果集。如果您使用较大的排序缓冲区,以提高速度,经过的LIMIT查询可能会发现不再是有帮助的。

配置文件和服务器默认经常使用比用于事务处理的最优值更大的值。这样的值可以提高查询效率低下的表现,这是可能的,作为临时措施可能会发现一个或两个有用的MB的值,直到能够识别并调整涉及到的查询。如果实际应该运行查询,而不是设置全局值,使所有其他查询那种小数据量的慢之前设置会话值。

Linux的glibc的malloc的内部变量
在256K或512K的阈值是MALLOC_MMAP_THRESHOLD,其中的glibc malloc的从使用其堆使用MMAP改变点。这种规模之后分配时间可以大约慢40倍。所有会话缓冲受此影响,不只是排序缓冲器。

用glibc 5.4.23 malloc的调节变量在这些环境变量暴露开始:

MALLOC_TRIM_THRESHOLD_
MALLOC_TOP_PAD_
MALLOC_MMAP_THRESHOLD_
MALLOC_MMAP_MAX_
MALLOC_CHECK_

在极少数情况下,会发现启动MySQL调整如何释放malloc的内存之前是非常有用的调整一个或多个的这些。我们不建议这样的正常使用,只有当找到的默认方式有些不常见的问题是malloc的适用于特定工作负载。

sort_buffer_size, Sort_merge_passes关系的更多相关文章

  1. mysql 参数:[read_buffer_size] [sort_buffer_size] [read_rnd_buffer_size] [tmp_table_size]---图解

    http://imysql.cn/2008_09_27_deep_into_mysql_sort_buffer http://my.oschina.net/realfighter/blog/36442 ...

  2. sort_buffer_size:

    sort_buffer_size: 每个session 必须执行一个排序 分配一个 这个大小的buffer. sort_buffer_size 不特定的对于任何存储引擎适用于一般的优化方式. sort ...

  3. More on understanding sort_buffer_size

    There have been a few posts by Sheeri and Baron today on the MySQL sort_buffer_size variable. I want ...

  4. myisam_sort_buffer_size vs sort_buffer_size

    Q: I am MySQL on server with 6GB RAM. I need to know what is the difference between myisam_sort_buff ...

  5. Angular2入门系列教程3-多个组件,主从关系

    上一篇 Angular2项目初体验-编写自己的第一个组件 好了,前面简单介绍了Angular2的基本开发,并且写了一个非常简单的组件,这篇文章我们将要学会编写多个组件并且有主从关系 现在,假设我们要做 ...

  6. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  7. 页面中多个script块之间的关系

     一:函数声明与函数定义表达式在函数调用间的区别 <script type="text/javascript"> doA(); var doA = function(a ...

  8. Android Ormlite 学习笔记2 -- 主外键关系

    以上一篇为例子,进行主外键的查询 定义Users.java 和 Role.java Users -- Role 关系为:1对1 即父表关系 Role -- Users 关系为:1对多 即子表关系 下面 ...

  9. ASP.NET Core的路由[1]:注册URL模式与HttpHandler的映射关系

    ASP.NET Core的路由是通过一个类型为RouterMiddleware的中间件来实现的.如果我们将最终处理HTTP请求的组件称为HttpHandler,那么RouterMiddleware中间 ...

随机推荐

  1. async-validator 表单验证注意事项

    1. this.$refs[formName].validate()里面的内容不执行 解决问题出处:https://segmentfault.com/q/1010000009679079 问题描述:1 ...

  2. [Flutter + Firebase] Enable Firebase for Flutter

    Anroid Firebase Project setup: 1. In firebase console, cerate a Android app setup you can find in co ...

  3. 悲伤的 C++ throw(…)

    当在C++语言中引入异常时,引入了相应的throw(…)动态异常说明符,注释了哪些异常可以由函数抛出.比如: // this function might throw an integer or a ...

  4. C++中继承 声明基类析构函数为虚函数作用,单继承和多继承关系的内存分布

    1,基类析构函数不为虚函数 #include "pch.h" #include <iostream> class CBase { public: CBase() { m ...

  5. 超级好用的excel导出方法,比phpexcel快n倍,并且无乱码

    public function exportToExcel($filename, $tileArray=[], $dataArray=[]){ ini_set('memory_limit','512M ...

  6. HAVING 搜索条件在进行分组操作之后应用

    HAVING 搜索条件在进行分组操作之后应用: 如:查询帖子访问量大于15的用户id: select t.user_id,u.name,sum(count_view) from t_topic t l ...

  7. 括号匹配(POJ2955)题解

    原题地址:http://poj.org/problem?id=2955 题目大意:给出一串括号,求其中的最大匹配数. 我这么一说题目大意估计很多人就蒙了,其实我看到最开始的时候也是很蒙的.这里就来解释 ...

  8. Poj 2411 Mondriaan's Dream(状压DP)

    Mondriaan's Dream Time Limit: 3000MS Memory Limit: 65536K Description Squares and rectangles fascina ...

  9. 洛谷 P2858 [USACO06FEB]奶牛零食Treats for the Cows 题解

    P2858 [USACO06FEB]奶牛零食Treats for the Cows 题目描述 FJ has purchased N (1 <= N <= 2000) yummy treat ...

  10. 【luoguP2371】 [国家集训队]墨墨的等式

    题目链接 考虑将所有的\(a_1x_1+a_2x_2+--+a_nx_n=B\)对\(a_1\)取模,那么所有可达到的B就分为了\(0\)~\(a_1-1\)类 如果对\(a_1\)取模为\(k\)的 ...