技术开发 频道

MySQL管理员珍藏:十大必备工具盘点

  MySQL必备工具第八位: shard-query

  还在为针对诸多分区或是数据碎片集合的查询速率低下而烦恼?其实只需使用shard-query,整个处理速度会大大加快。那些基于下列架构的查询指令能够从shard-query工具中得到最大的提升:

  通过FROM串联自子句的子查询

  UNION 及 UNION ALL

  IN

  BETWEEN

  复合函数 SUM, COUNT, MIN, and MAX 等也能够使用上述架构。举例来说,下面这条查询指令即可由shard-query并行执行:

SELECT DayOfWeek, COUNT(*) AS c
FROM ontime_fact
JOIN dim_date USING(date_id)
WHERE Year
BETWEEN 2000 AND 2008
GROUP BY DayOfWeek
ORDER BY c DESC;

  根据基准测试的结果显示,通过并行处理的方式,该查询指令的响应时间缩短了85%左右,从原先的21秒降低至3秒。

  Shard-query并不是一款能够独立运行的工具;它需要诸如Gearman之类的其它程序提供支持,而且设置过程也相对比较复杂。但如果大家的数据分区及查询指令符合上面列出的构造,那么付出一些努力也是值得的,毕竟优化效果非常明显。

  下载地址: (svn checkout) http://code.google.com/p/shard-query/source/checkout

  维护负责人: Justin Swanhart

  更多信息: http://code.google.com/p/shard-query/

0
相关文章