注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

风轻扬

活着就是为了追求幸福

 
 
 

日志

 
 

NTSE性能提升,稳定性有待加强及随想  

2010-06-22 17:42:41|  分类: NTSE/TNT |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
经过几个月的努力,新发布的NTSE 0.4不但实现了NTSE自主写binlog功能,性能也有很大提高。以下是NTSE与InnoDB的对比测试,在内存是数据量的10-20%时,NTSE开启MMS时的性能有了很大的提升,达到InnoDB的9倍左右,是InnoDB结合Memcached使用时的4倍左右。其实InnoDB的性能比之前也提高不少,原因是这次测试将sync_binlog设成0,之前设为1过于严格,导致InnoDB性能很差。

NTSE性能提升,稳定性有待加强及随想 - 风轻扬 - 风轻扬
 
不过NTSE的稳定性还有待提高,目前还已知两个问题,一是NTSE写的binlog有可能某些时候不对,二是堆和索引有时会不一致,虽然通过重建索引可以解决,但不能确定结果是不是百分百正确的。

NTSE的性能优势已经很明显了,暂时没有太大的必要再优化,目前最重要的工作是提高稳定性。在第一步都没有坚实的跨出去的时候,应该把系统搞得简单点,这是我做NTSE所获得的教训。作为第一步,NTSE最核心的一点应该就只有性能,而对性能来说最核心的只有两点:
1、内置的行级缓存,且UPDATE也可以被缓存,进行检查点时被UPDATE的记录不能强制更新到堆中;
2、大对象压缩
只要有这两点,NTSE相对于InnoDB的性能优势就应该是板上钉钉的事情。考虑到将来改起来不易,最多再加个索引前缀压缩。现在回顾一下,其实目前NTSE实现的很多功能,都不是必需的,比如:
1、高性能UPDATE。这个功能虽然对某类特殊的应用有很大作用,但对普通应用并没有太大价值;
2、定长和变长两种堆。单独为定长记录设计一种堆格式并没有太大价值;
3、面向提供高可用性的在线创建索引和OPTIMIZE。借助于MySQL的复制技术也可以实现在线的表结构修改和OPTIMIZE(在Slave上完成操作到再切换),NTSE提供这两者只是带来很大的便利,而不是有与没有的巨大区别。

虽然在NTSE的开发过程中也曾注意裁剪那些可有可无的设计,比如行级缓存原来还实现了一个从主键到记录的映射表,导致行级缓存的实现很复杂,后来被无情的去掉了。但是现在看来对NTSE需求的控制还是做得不够好,做了一些初期不应该做的功能。上述那些功能后期当然是应该增加的,但第一期不应该包括进去胡搅蛮缠。假如把上面那些东西都去掉的话,虽然NTSE的实现还是非常复杂的,但节约3-5个月的时间还是有可能的。

之所以想在产品中一下子就塞进去这么多看起来很好的功能,主要的原因在于,对产品的不充分思考和不自信。没有深入的思考NTSE最核心的是什么,不能非常自信的说出我只要做到哪几点,就一定会成功。由于不自信,总想把能想到的所有觉得有用的东西都做进去,从而导致系统不必要的复杂。系统的复杂一定不是没有成本的。杰克.韦尔奇说:不自信的管理者制造复杂,很有道理。

因此崇拜Apple,做事总显得那么自信,而且很少失败,即便失败时也是如此。Apple做iPad,就是三件事:玩游戏、看书、看电影,因此要键盘干嘛?要手写笔干嘛?但重力感应,那是绝对需要的。Apple做iPhone,就是体验和App Store,因此,要Flash干嘛?要多任务干嘛?白鸭说Apple并不是只会自己YY,Jobs一个人拍脑袋的,不考虑用户需求的,而是非常非常的重视用户需求和调研,用户调研做得极其充分,白鸭说有空他会介绍一下,可惜似乎到现在也没见介绍。不过可能见了介绍也没有用,面对同样的需求调研结果,有的人就会觉得什么都需要做,有的人就会觉得很多东西都没必要做。

再回到NTSE,老大说“知行合一”,既然稳定最重要,接下来就全力做稳定性,某些可有可无的功能就不做,比如对分区表的支持,我仅管大声宣布我们不支持分区表就行了。某些功能即便已经实现,但会导致系统更复杂,测试更难的,就暂时去掉。比如高性能UPDATE功能暂时会被禁用,即便没有这个性能优化,NTSE的性能也是远远高于InnoDB的,但这个功能会 导致很多地方都麻烦很多,在最关键的功能都不稳定时,这类没有核心价值的优化对保证系统的稳定性无疑是雪上加霜。

不过我同时还会在“行进中开火”,虽然NTSE现在还不很稳定,但那些问题都是偶发事件(要不是偶发事件要知道怎么回事了),在复制的保驾护航下,在一些非核心应用中用还是可以的,因此还是要用,用,才能发现问题。而问题,总是能被解决的。
  评论这张
 
阅读(3128)| 评论(6)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018