首页 > MySQL, nosql > Handler-Socket Plugin for MySQL – SQL的功能、NoSQL的性能

Handler-Socket Plugin for MySQL – SQL的功能、NoSQL的性能

2010年11月24日 谭俊青 发表评论 阅读评论

记得半年多前写过MySQL vs NoSQL ,且一直以来我比较坚持用数据库存储K/V数据,因为不只是对数据安全等能提供保障,主要是发现大部分系统的qps根本就没那么高,能上4k的水平已经很少了,这点MySQL完全可以满足,因为优化好的K/V请求,在MySQL的SQL层上能实现每核心5k左右的qps,而这一数据在HandlerSocket出来之后,得到了更大的提升。

HandlerSocket plugin for MySQL 已经出来一段时间了, 鉴于HandlerSocket和InnoDB的健壮、安全性, 可以预见HandlerSocket取代Memcached等NoSQL存储/Cache,已经是大势所趋。

HandlerSocket 是MySQL的一个插件,用于跳过MySQL的SQL层面,直接访问内部的InnoDB存储引擎,从而充分发挥InnoDB的性能优势;此外,InnoDB的ACID特性,可以保障数据的安全。

初步对比了下,HandlerSocket Plugin for MySQL性能跟Memcached差不多,原文中的测试数据显示更胜Memcached一筹,接下来准备跟ndbapi的性能进行对比测试,为系统构架提供参考。

                           approx qps     server CPU util
MySQL via SQL                105,000      %us 60%  %sy 28%
memcached                    420,000      %us  8%  %sy 88%
MySQL via HandlerSocket      750,000      %us 45%  %sy 53%

HandlerSocket源码地址:https://github.com/ahiguti/HandlerSocket-Plugin-for-MySQL/

HandlerSocket的客户端:

HandlerSocket Client for Perl

HandlerSocket Client for Python

HandlerSocket Client for PHP

HandlerSocket Client for Java

– ————————————-
update: 2011/04/08
在Dell R710 双四核 E5620 下,mysql版本为5.1.54,未修改任何源码,采用php的handler-socket扩展,测试结果稳定在33万+QPS,其中mysqld占用cpu约为50%

Related posts:

  1. NoSQL到MySQL+Memcache(d)重树MySQL王者地位
  2. MySQL vs NoSQL 效率与成本之争
  3. InnoDB Plugin 1.0.4 for MySQL 5.1.37
  4. InnoDB plugin 1.0.7
  5. Memcached and MySQL
  6. MySQL 5.5-m2的可伸缩性
  7. MySQL5.5新特性
  8. Gearman
分类: MySQL, nosql 标签: ,
  1. 2010年11月24日14:06 | #1

    不知有没有在运营环境下用过的呢?我很想让网站采用它

  2. 2010年11月24日17:27 | #2

    我们在同意的R710机器上重新它的测试步骤,而且在fushionc卡上,我们只能得到20W的QPS。 而且percona的人做的实验的数据是每分钟75W, 所以对这个数据保留怀疑的态度.

    值的注意的是我们同时关掉了计算校验并且crack了代码关掉了fsync.

    • 2010年11月24日17:31 | #3

      能否提供测试脚本?
      这个跟是否用ssd没关系,普通硬盘即可。只要将buffer pool设置足够大,能够将数据都buffer起来。

  3. 2010年11月24日21:42 | #4

    我是用嵌入式innodb测试的,CPU才能用到300%左右, 其他的CPU给网络部分是没啥问题的。但是即使这样QPS还是上不去,即使我们做了源码级别的很多优化,把spin_lock的开销都降下来了。

    我是淘宝核心系统数据库组专门搞mysql和innodb引擎的开发和优化的。

  4. 2010年11月26日16:04 | #5

    嵌入式Innodb? 好像没有相应的实现方法吧?另外percona那边是60万出头,原作者是75万。
    不知道你们的R710的硬件配置是什么

  5. 2011年4月8日17:00 | #6

    补充下,今天我用php的handler socket扩展测了下,Dell R710
    稳定在33万QPS以上,MySQLD占用CPU在50%左右。

  1. 2011年4月13日16:53 | #1