还是喜欢简单点的东西
转载
还是喜欢简单点的东西,相对复杂的东西来说,我[b]更有可能[/b]掌握它。
看到一篇[url=http://developers.solidot.org/article.pl?sid=09/09/05/0710227]云计算没有关系数据库[/url]的时候,认为这又佐证了自己的观点是正确的。以前强调过我对 MyISAM 是多么的喜爱,事实上关系数据库的功能,在我的实现里也就用到了一半,我对 key/value 形式还是非常偏爱的。当然,对此如何评价并不重要,如果有人对我说“你的智力层面也就够用用 MyISAM,还上升不到 InnoDB 的高度”,我也欣然接受。
虽然我还是理解不了绝大部分东西。我跟刘涛说,我能理解 B 树,但我理解不了在 BDB 在高速写入文件的时候数据是怎么变化的,如果文件膨胀了一倍,那势必有很多数据所在的位置要发生过很多次变动,如果数据文件从 1G 在几十分钟内增长到 2G 的时候,在我看来应该有总和至少数秒的“假死”,也就是大段数据移动位置的情况啊。
很早之前就看到张宴介绍 [url=http://blog.s135.com/read.php?362]Tokyo Tyrant[/url] 和其他一些称得上 NB 的东西,就我自己的实验来说,并不理想。我是认准这么一个道理,高并发的时候,磁盘完全不够看,必须有相当的内存做缓存,并学会容忍死机时大量数据丢失等问题。我可以断言所有在内存使用上没有大量微调选项的软件都扛不住高并发。而且“高并发”这类词可能和“光年”一样容易误解,我理解的高并发是各种方案对硬件的高利用率,而不是单纯的说的 xxx 硬件能扛住 xxx 连接数,这里用不同的说法来说差异太大,记得好像是关于 MySQL 的某个改进版的新闻,我不知道是翻译有问题还是开发者吹 NB 吹的实在太过了,号称几秒内能写入几T的数据之类,前几条评论里就有人说,CPU 的 L1 速度能达到他说的速度么。很显然,他说的应该是整套集群的平均读写速度,但是这软件的效率到底如何,还是没法比较。
有张图是直观形象的说 L1/L2/内存/硬盘 的速度对比的,忘了从哪看的了,刚才 google 半天找到了,存本地一份,[url][file=112][/url],应该都看过了吧。很多人没看懂我估计是被浏览器的自适应缩放给害了。
此外,搞互联网上的应用完全不应该有“高转速硬盘 + ECC 内存”的传统思维,那太奢侈了,简直是罪恶。
MySQL 跟 Oracle 一比,在功能上完全不叫个东西,但在很多场合,即使 MySQL 都太 overhead 了。