网站大量收购闲置独家精品文档,联系QQ:2885784924

一篇文章,掌握所有开源数据库的现状.pdf

一篇文章,掌握所有开源数据库的现状.pdf

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

⼀⼀篇篇⽂⽂章章,,掌掌握握所所有有开开源源数数据据库库的的现现状状

摘要:数据库作为业务的核⼼,在整个基础件栈中是⾮常重要的⼀环。近⼏年社区也是新的⽅案和思想层出不穷,接下来我将总结⼀下近

⼏年⼀些主流的开源数据库⽅案,其背后的设计思想以及适⽤场景。本⼈才疏学浅如有遗漏或者...

数据库作为业务的核⼼,在整个基础件栈中是⾮常重要的⼀环。近⼏年社区也是新的⽅案和思想层出不穷,接下来我将总结⼀下近⼏年⼀

些主流的开源数据库⽅案,其背后的设计思想以及适⽤场景。本⼈才疏学浅如有遗漏或者错误请见谅。本次分享聚焦于数据库既结构化数据

存储OLTP及NoSQL领域,不会涉及OLAP、对象存储、分布式⽂件系统。

1开源RDBMS与互联⽹的崛起

很长时间以来,关系型数据库⼀直是⼤公司的专利,市场被Oracle/DB2等企业数据库牢牢把持。但是随着互联⽹的崛起、开源社区的发

展,上世纪九⼗年代MySQL1.0的发布,标志着关系型数据库的领域社区终于有可选择的⽅案。

MySQL

第⼀个介绍的单机RDBMS就是MySQL。相信⼤多数朋友都已经对MySQL⾮常熟悉,基本上MySQL的成长史就是互联⽹的成长史。我接

触的第⼀个MySQL版本是MySQL4.0,到后来的MySQL5.5更是经典——基本所有的互联⽹公司都在使⽤。

MySQL也普及了「可插拔」引擎这⼀概念,针对不同的业务场景选⽤不同的存储引擎是MySQLtunng的⼀个重要的⽅式。⽐如对于有事

务需求的场景使⽤InnoDB;对于并发读取的场景MyISAM可能⽐较合适;但是现在我推荐绝⼤多数情况还是使⽤InnoDB,毕竟5.6后已经成

为了官⽅的默认引擎。⼤多数朋友都基本知道什么场景适⽤MySQL(⼏乎所有需要持久化结构化数据的场景),我就不赘述了。

另外值得⼀提的是MySQL5.6中引⼊了多线程复制和GTID,使得故障恢复和主从的运维变得⽐较⽅便。另外,5.7(⽬前处于GA版本)是

MySQL的⼀个重⼤更新,主要是读写性能和复制性能上有了长⾜的进步(在5.6版本中实现了SCHEMA级别的并⾏复制,不过意义不⼤,倒

是MaraDB的多线程并⾏复制⼤放异彩,有不少⼈因为这个特性选择MaraDB。MySQL5.7MTS⽀持两种模式,⼀种是和5.6⼀样,另⼀种

则是基于bnloggroupcommt实现的多线程复制,也就是MASTER上同时提交的bnlog在SLAVE端也可以同时被apply,实现并⾏复制)。

如果有单机数据库技术选型的朋友,基本上只需要考虑5.7或者MaraDB就好了,⽽且5.6、5.7由Oracle接⼿后,性能和稳定性上都有了

明显的提升。

PostgreSQL

PostgreSQL的历史也⾮常悠久,其前⾝是UCB的Ingres,主持这个项⽬的MchaelStronebraker于2015年获得图灵奖。后来项⽬更名为

Post-Ingres,项⽬基于BSDlcense下开源。1995年⼏个UCB的学⽣为Post-Ingres开发了SQL的接⼝,正式发布了PostgreSQL95,

随后⼀步步在开源社区中成长起来。

和MySQL⼀样,PostgreSQL也是⼀个单机的关系型数据库,但是与MySQL⽅便⽤户过度扩展的SQL⽂法不⼀样的是,PostgreSQL的

SQL⽀持⾮常强⼤,不管是内置类型、JSON⽀持、GIS类型以及对于复杂查询的⽀持,PL/SQL等都⽐MySQL强⼤得多。⽽且从代码质

量上来看,PostgreSQL的代码质量是优于MySQL的,另外PostgreSQL的SQL优化器⽐MySQL强⼤很多,⼏乎所有稍微复杂的查询(当

然,我没有对⽐MySQL5.7,也可能这个信息outdated了)PostgreSQL的表现都优于MySQL。

从近⼏年的趋势上来看,PostgreSQL的势头也很强劲,我认为PostgreSQL的不⾜之处在于没有MySQL这样强⼤的社区和群众基础。

MySQL经过那么多年的发展,积累了很多的运维⼯具和最佳实践,但是PostgreSQL作为后起之秀,拥有更优秀的设计和更丰富的功能。

PostgreSQL9以后的版本也⾜够稳定,在做新项⽬技术选型的时候,是⼀个很好的选择。另外也有很多新的数据库项⽬是基于PostgreSQL

源码的基础上进⾏⼆次开发,⽐如Greenplum等。

我认为,单机数据

文档评论(0)

寒寒 + 关注
实名认证
内容提供者

好文件大家都可以分享

1亿VIP精品文档

相关文档