近日从Sybase公司网站上看到一个有关IQ 15 最佳实践的英文pdf文档,感觉不错。我打算把他翻译成中文,并结合自己在为用户提供IQ 15支持时的一些感受进行补充,进而与大家分享。同时也希望能和大家就文中的某些内容进行讨论。这是第一篇,随后会陆续翻译其他篇,我会利用有限的时间争取在2011年底能够完成所有内容的翻译。
1.概述
Sybase IQ 15.3是一系列IQ软件发布版本的高潮,它提供了一个强大地、可多方面进行扩展的分析平台。2009年3月发布的IQ 15.0是这一系列软件版本的第一步,这个版本最大的提升是改进了其垂直扩展能力(即Sybase IQ在SMP架构下的并行处理能力和扩展能力);2009年7月,IQ 15.1发布,提供了数据库内分析(in-database analytics)功能,使得复杂的统计分析算法可以直接在数据库内运行;2010年6月,IQ 15.2发布,该版本提供了一个基础设施以支持文本分析(text analytics)功能,包括:大对象存储(Large Object Storage)和访问能力、快速索引、用于构建搜索表达式的SQL操作符等;IQ 15.3引入了一个新的“shared everything”MPP(Massively Parallel Processing)架构可以把查询分布到多个节点上并行执行。
在这个文档中,将讨论有关IQ 15的一些最佳实践,其意图是为优化您的IQ 15实现提供一个起点。包括:IQ 15的主要新特性、使用和设置IQ 15重要新特性时的方法建议、以及避免一些公共问题的预防措施。它作为一个一般目的的文档,并不是针对每种特定环境的专业指南,它只是在大多数环境下如何更好使用IQ 15的一些指南和建议。
2.IQ 15重要新特性概览
下图图示了IQ 15的主要新特性,在后续的文章中将会提及。
3.查询引擎并行性(QUERY ENGINE PARALLELISM)
Sybase IQ 15对装载和查询操作带来了重大的改变,IQ 15的数据库查询引擎与先前的版本(12.7)相比可以并行执行更多的操作。IQ 15中的并行处理能够在单用户(单并发)时的高性能和系统支持较高并发等情况下进行动态调整,这个动态调整通过运行时资源的动态重分配实现的。
当第一个用户提交给IQ一个装载或查询操作时,IQ可以使用机器中的所有CPUs(Cores)执行它。在第一个用户的查询执行期间,第二个用户也提交了一个查询,这时IQ的执行引擎和优化器会从用于执行第一个用户的资源中拿走一些CPU资源,这样IQ在执行这两个查询时可以均等地使用资源。如果有第三个用户提交了查询,那么,IQ会再次进行资源的重新分配,这三个查询操作每个将消耗大约三分之一的资源。当上面的某个查询执行完成,那么IQ会把执行该查询所占用的资源释放,并把它们重新分配给还在运行的查询,这些查询由于获得了更多资源可以更快的执行。如下图所示:
阅读(3410) | 评论(0) | 转发(0) |