简单,可复制

点点滴滴,尽在文中

  :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2012年11月15日

摘要: 前言 前面我们已经了解了MySQLQueryOptimizer的工作原理,学习了Query优化的基本原则和思路,理解了索引选择的技巧,这一节我们将围绕Query语句中使用非常频繁,且随时可能存在性能隐患的Join语句,继续我们的Query优化之旅。 Join 的实现原理 在寻找Join语句的优化思路之前,我们首先要理解在MySQL中是如何来实现Join的,只要理解了实现原理之后,优化就比较简单了... 阅读全文
posted @ 2012-11-15 19:48 ggjucheng 阅读(10234) 评论(0) 推荐(2)

摘要: 在本章第一节中我们还提到过通过 Query Profiler 来定位一条 Query 的性能瓶颈,这里我们再详细介绍一下 Profiling 的用途及使用方法。要想优化一条 Query,我们就需要清楚的知道这条 Query 的性能瓶颈到底在哪里,是消耗的 CPU计算太多,还是需要的的 IO 操作太多?要想能够清楚的了解这些信息,在 MySQL 5.0 和 MySQL 5.1正式版中已经可以非常容易做到了,那就是通过 Query Profiler 功能。MySQL 的 Query Profiler 是一个使用非常方便的 Query 诊断分析工具,通过该工具可以获取一条Q... 阅读全文
posted @ 2012-11-15 18:33 ggjucheng 阅读(23308) 评论(0) 推荐(7)

摘要: 在过往与很多人的交流过程中发现,在谈到基于硬件来进行数据库性能瓶颈分析的时候,常被大家误解为简单的使用更为强劲的主机或者存储来替换现有的设备。个人觉得这其中可能存在一个非常大的误区。我们在谈论基于硬件进行优化的时候,不能仅仅将数据库使用的硬件划分为主机和存储两部分,而是需要进一步对硬件进行更细的分解,至少也应该分解到如下范畴:主机CPU:仅仅只能决定运算速度,及时是运算速度都还取决于与内存之间的总线带宽以及内存本身的速度内存:大小决定了所能缓存的数据量,主要决定了热点数据的访问速度磁盘:大小:决定了你最终能存放多少数据量转速:决定了你每一次IO请求的延时时间,也就是决定了我们常说的IOPS和M 阅读全文
posted @ 2012-11-15 17:25 ggjucheng 阅读(4365) 评论(0) 推荐(1)

摘要: 前言在本章之前的所有部分都是介绍的整个系统中的软件环境对系统性能的影响,这一节我们将从系统硬件环境来分析对数据库系统的影响,并从数据库服务器主机的角度来做一些针对性的优化建议。任何一个系统的硬件环境都会对起性能起到非常关键的作用,这一点我想每一位读者朋友都是非常清楚的。而数据库应用系统环境中,由于数据库自身的特点和在系统中的角色决定了他在整个系统中是最难以扩展的部分。所以在大多数环境下,数据库服务器主机(或者主机集群)的性能在很大程度上决定了整个应用系统的性能。既然我们的数据库主机资源如此重要,肯定很多读者朋友会希望知道,数据库服务器主机的各部分硬件到底谁最重要,各部分对整体性能的影响各自所占 阅读全文
posted @ 2012-11-15 17:20 ggjucheng 阅读(2246) 评论(0) 推荐(0)

摘要: 前言前面章节部分所分析的可扩展架构方案,基本上都是围绕在数据库自身来进行的,这样是否会使我们在寻求扩展性之路的思维受到“禁锢”,无法更为宽广的发散开来。这一章,我们就将跳出完全依靠数据库自身来改善扩展性的问题,将数据服务扩展性的改善向数据库之外的天地延伸!可扩展设计的数据库之外延伸数据库主要就是为应用程序提供数据存取相应的服务,提高数据库的扩展性,也是为了更好的提供数据存取服务能力,同时包括可靠性,高效性以及易用性。所以,我们最根本的目的就是让数据层的存储服务能力得到更好的扩展性,让我们的投入尽可能的与产出成正比。我们都明白一点,数据本身肯定都会需要有一个可以持久化地方,但是我们是否有必要让我 阅读全文
posted @ 2012-11-15 16:13 ggjucheng 阅读(1510) 评论(1) 推荐(0)

摘要: 前言在安装完MySQL之后,肯定是需要对MySQL的各种参数选项进行一些优化调整的。虽然MySQL系统的伸缩性很强,既可以在有很充足的硬件资源环境下高效的运行,也可以在极少资源环境下很好的运行,但不管怎样,尽可能充足的硬件资源对MySQL的性能提升总是有帮助的。在这一节我们主要分析一下MySQL的日志(主要是Binlog)对系统性能的影响,并根据日志的相关特性得出相应的优化思路。日志产生的性能影响由于日志的记录带来的直接性能损耗就是数据库系统中最为昂贵的IO资源。在之前介绍MySQL物理架构的章节中,我们已经了解到了MySQL的日志包括错误日志(ErrorLog),更新日志(UpdateLog 阅读全文
posted @ 2012-11-15 15:05 ggjucheng 阅读(19641) 评论(0) 推荐(1)

摘要: 时间单位换算关系换算关系1 s = 10^3 ms = 10^6 us = 10^9 ns = 10^12 μs秒 毫秒 微秒 纳秒 皮秒周期概念 总结一下,它们之间的关系就是,指令周期由若干个机器周期组成,总线周期一般由4个时钟周期组成。 机器周期和总线周期……机器周期指的是完成一个基本操作的时间,这个基本操作有时可能包含总线读写,因而包含总线周期,但是有时可能与总线读写无关,所以,并无明确的相互包含的关系。 指令周期:是CPU的关键指标,指取出并执行一条指令的时间。一般以机器周期为单位,分单指令执行周期、双指令执行周期等。现在的处理器的大部分指令(ARM、DSP)均采用单指令执行周期... 阅读全文
posted @ 2012-11-15 12:54 ggjucheng 阅读(2996) 评论(0) 推荐(0)

摘要: SATASATA的全称是Serial Advanced Technology Attachment,是由Intel、IBM、Dell、APT、Maxtor和Seagate公司共同提出的硬盘接口规范。SATA硬盘采用新的设计结构,数据传输快,节省空间,相对于IDE硬盘具有很多优势: 1 .SATA硬盘比IDE硬盘传输速度高。目前SATA可以提供150MB/s的高峰传输速率。今后将达到300 MB/s和600 MB/s。到时我们将得到比IDE硬盘快近10倍的传输速率。 2. 相对于IDE硬盘的PATA40针的数据线,SATA的线缆少而细,传输距离远,可延伸至1米,使得安装设备和机内布线更加容易.. 阅读全文
posted @ 2012-11-15 11:08 ggjucheng 阅读(23668) 评论(0) 推荐(0)