一、MariaDB vs Mysql
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。
MariaDB名称来自麦克尔·维德纽斯的女儿玛丽亚(英语:Maria)的名字。
MariaDB直到5.5版本,均依照MySQL的版本。因此,使用MariaDB5.5的人会从MySQL5.5中了解到MariaDB的所有功能。从2012年11月12日起发布的10.0.0版开始,不再依照MySQL的版号。10.0.x版以5.5版为基础,加上移植自MySQL 5.6版的功能和自行开发的新功能。
在存储引擎方面,10.0.9版起使用XtraDB(名称代号为Aria)来代替MySQL的InnoDB。
MariaDB的API和协议兼容MySQL,另外又添加了一些功能,以支持本地的非阻塞操作和进度报告等。
这意味着,所有使用MySQL的连接器、程序库和应用程序也将可以在MariaDB下工作。
同时,MariaDB以兼容MySQL的方式采取了更加强大的储存引擎,查询逻辑和插件等,使数据库的性能进一步加强,并且可以安全地从一个数据库系统过渡到另一个数据库系统。
二、MySQL(MariaDB) vs MangoDB
1.MySQL
MySQL 是一个功能齐全的开源关系数据库管理系统(RDBMS),最初由MySQL AB构建,目前由Oracle Corporation拥有。它将数据存储在分组到数据库中的表中,使用结构化查询语言(SQL)来访问数据,并使用“SELECT”,“UPDATE”,“INSERT”和“DELETE”等命令来管理它。相关信息可以存储在不同的表中,但JOIN操作的使用允许您关联它,跨各种表执行查询并最小化数据重复的可能性。同时,MySQL缺乏处理大数据量的速度,因此对于拥有较小数据库并寻求更通用解决方案的公司来说,它可以胜任。
MySQL 几乎兼容所有操作系统,即Windows,Linux,Unix,Apple,FreeBSD等等。它支持各种存储引擎,如InnoDB(它是默认的),Federated,MyISAM,Memory,CSV,Archive,Blackhole和Merge。
2.MangoDB
MangoDB 是一个流行的开源文档导向数据库,由10gen开发,后来称为MongoDB Inc.。文档创建并存储在BSON文件中,二进制JSON(JavaScript Object Notation)格式,因此所有JS类型的数据都是支持的。MongoDB通常应用于Node.js项目。除此之外,JSON还可以使用人类可读的格式在服务器和Web应用程序之间传输数据。在存储容量和速度方面,它也是一个更好的选择,因为它提供更高的效率和可靠性。
MongoDB 提供的最大好处之一是使用动态模式,无需预先定义结构,如字段或值类型。这种模型允许分层关系表示,数组存储,以及通过简单地添加或删除字段来更改记录结构的能力。这种NoSQL解决方案具有嵌入,自动分片和板载复制功能,可实现更好的可扩展性和高可用性。