专栏首页杨建荣的学习笔记由MySQL中的falcon存储引擎引申的八卦杂谈(r5笔记第23天)

由MySQL中的falcon存储引擎引申的八卦杂谈(r5笔记第23天)

今天在看<<MySQL技术内幕>>这本书时 ,看到大师paul Dubois对于Falcon存储引擎的介绍,这是一种用来进行事务处理的存储引擎。在设计时增加了一些自我优化和免维护的功能,描述总体感觉和InnoDB很相似,不过整本书中讲解存储引擎的篇幅基本还是MyISAM和InnoDB为主。 所以对Falcon产生了好奇,网络中对于Falcon的大体描述如下。 Falcon存储引擎是MySQL当时寄以厚望的存储引擎,主要是为了面对当时Oracle收购了InnoBase公司的情况,用来取代InnoDB的一个存储引擎。Falcon引擎的主导人员是大师Jim Starkey,从2006年开始开发,到2008年发布Beta版本,至今为止也没有走入主流。2008年中旬,Falcon的主架构师Jim Starkey宣布从MySQL公司辞职,加入了一家创业公司NimbusDB担任CEO,去设计和开发运行在云计算上面的关系/语义数据库,按照2010年目前NoSQL市场的发展来看,他的选择是正确的,但是带来的结果是Falcon陷入一个没有主导人员的地步,导致了至今都属于性能糟糕,半死不活的状态。 看了这段话,干脆把书放在一旁,开始八卦起来了。 因为Falcon是InnoDB的竞争产品,所以我们来看看InnoDB的发展历程。

可以看到InnoDB的规划时间是很早的了,发展历程竟然比MySQL还要早,时间上远远甩开了现在各种高大上的开发语言和技术,不过MySQL的雏形时间可以追溯到1979年左右,那时候关系型数据库的发展也是初期,Michael Widenius在有限的资源情况下还是坚持了下来,以坚持就是近20年,直到1996年,MySQL 1.0发布,后来逐渐迁移到linux平台,也从最初的1.0发展到了3.0, 再到1999左右,MySQL AB公司在瑞典成立,这个过程中为了支持事务,他们开发了Berkeley DB引擎,所以可以想象当时InnoDB最开始的推广也还是蛮艰难的,大概在2001年左右Heikki Tuuri向MySQL提出建议,希望能集成InnoDB,因为也是支持事务的,Berkeley DB的发展后来不知怎么样,不过现在能从官网看到已经是Oracle产品线的一部分了,直到2005年左右,oracle收购了InnoBase公司,这个时候Jim Starkey坐不住了,为了面对Oracle收购InnoBase的情况,自己主导开发Falcon这个存储引擎,这个过程持续了大概2年左右,最后出了beta版本,但是后来又是反复上线收购,MySQL被SUN收购,SUN被Oracle收购,不过从MySQL被SUN收购的那一年(2008)年,Jim Starkey就选择了离开,这个时候Falcon的发展受到了致命打击,虽然说从设计上有很多的额优势,但还是有很多的问题,至今也没发展起来。我手头有MySQL5.6版本的软件,这个时候查看存储引擎,发现falcon已经从列表中去除了。InnoDB也是拿过了MyISAM的交椅,成为了默认的存储引擎。

mysql> show engines;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
9 rows in set (0.01 sec)

后来,Jim Starkey创办了NimbusDB,致力于设计和开发运行在云计算上面的关系/语义数据库,从现在的情况来看眼光还是很准的。MySQL的阵营中也是百花齐放,就有了后来的MariaDB, MariaDB是MySQL的一个分支,也是开源社区在维护,采用GPL授权许可,完全兼容MySQL,在存储引擎方面,使用XtraDB来代替MySQL的InnoDB。 可以看到Falcon算是一个被抛弃的角色了,而技术变更也是一场没有硝烟的战争,一旦失去了核心主导,一下子就没有了发展动力。而现在InnoDB毫无疑问算是MySQL阵营中绝对的王者了,技术的发展就在这样的竞争和创新中慢慢演进,另外值得一提的是,两大开放源码阵营MySQL和Linux都是出自芬兰人之手,按照采访michal的说法,芬兰人的本性就是固执和讨厌放弃,即使其他人都说他们做的事一点用都没有,想想也还是蛮有道理的。

本文分享自微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-05-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • RAC一个节点自动重启问题分析

    题记:在RAC数据库的故障当中,节点重启的现象很常见,在这种问题的处理当中,有一定的规律性。为了更好的说明这个问题的处理过程,保证出现该类问题的时候,能够有序的...

    数据和云
  • 【云和恩墨大讲堂】复合索引与绑定变量

    讲师简介 ? 邓秋爽(小鱼) 云和恩墨专家,有超过5年超大型数据库专业服务经验,擅长oracle 数据库优化、SQL优化和troubleshooting 今晚的...

    数据和云
  • 利用硬链接和truncate降低drop table对线上环境的影响

    作者简介 ? 肖鹏 微博研发中心数据库技术负责人,主要负责微博数据库(MySQL/Reids/HBase/Memcached)相关的业务保障,性能优化,架构设计...

    数据和云
  • 防范攻击 加强管控 - 数据库安全的16条军规

    近日的数据安全事故,引发了很多企业的普遍关注,而不少用户从彻查中确实发现自己的数据库已经被注入,这为大家上了数据安全的重要一课。 甚至有的企业要求停用PL/SQ...

    数据和云
  • 知己知彼-关于Oracle安全比特币勒索问题揭秘和防范

    风险从来都不是臆想和草木皆兵,就在你不经意的时刻,可能风险就突然降临到我们的身边。 近期,国内很多用户的 Oracle 数据库,突然遭遇到莫名其妙的攻击事件,...

    数据和云
  • Oracle 12.2新特性掌上手册 - 第一卷 Availability

    注:文章内容来自官方文档翻译。若需要了解更多,请查阅官方文档。 1、Multi-Instance Redo Apply (多实例redo应用) 在Oracle ...

    数据和云
  • 微博MySQL优化之路 - 肖鹏

    肖鹏老师对于开源数据库尤其是MySQL的研究特别深入,今天我们来一起听他分享自己对MySQL数据库的优化经验! 作者简介 ? 肖鹏 微博研发中心数据库技术负责人...

    数据和云
  • 终将日落:Solaris 不死,只是渐渐离去

    据thelayoff报道,Larry 亲自下令,Solaris操作系统将停止发布,至此,这枚辉煌了几十年了太阳就此日落西山,退出IT 领域。最终版本11.4. ...

    数据和云
  • 以12c Identity类型示范自我探索式学习方法

    作者简介: ? Oracle ACE总监,ACOUG联合创始人,云和恩墨的联合创始人,致力于通过不断的技术探索,帮助中国用户理解和接触新技术,推广数据库技术应...

    数据和云
  • “月底难过”- 都是统计信息惹的祸

    作者简介 ? 案例说明 某大型电商公司数据仓库系统经常出现在月底运行缓慢的情况,但在平时系统运行却非常正常。这是因为月底往往有月报等大批量作业运行,而就在这个时...

    数据和云

扫码关注云+社区

领取腾讯云代金券