作为一名软件开发人员或DBA,其中一份必不可少的工作就是与数据库打交道,比如MS SQL服务器、MySQL、Oracle、PostgreSQL、MongoDB等等。众所周知,其中MySQL是目前使用最广泛最好的免费开源数据库,此外,还有一些你不知道或者没用过但又非常出色的开源数据库,例如 PostgreSQL、 MongoDB、HBase、Cassandra、Couchbase、Neo4j、Riak、Redis、Firebird 等。 在本文,作者总共总结了21个最优秀的开源数据库,不妨让我们一起来看下吧。 1.MySQL MySQL是一个开源的关系型数据库管理系统,为甲骨文公司产品。支持多种存储引擎、集群、全文 MySQL由于性能高、成本低、可靠性好已经成为最流行的开源数据库,并且被广泛应用在Web应用程序以及其它中小型项目上。从WordPress 到Movable Type都把MySQL作为默认的数据库。此外,自甲骨文收购MySQL以后,有将MySQL闭源的潜在风险,因此社区采用分支的方式避开这种风险,开发并运营着完全兼容MySQL的MariaDB数据库。 PostgreSQL可以简称为“postgres”,是一款对象-关系型数据库管理系统,PostgreSQL采用的是比较 PostgreSQL是全功能的自由软件数据库,很长时间以来,PostgreSQL是唯一支持事务、子查询、多版本并行控制系统(MVCC)、数据完整性检查等特性的唯一一种自由软件的数据库管理系统。许多云服务提供商比如Heroku等,都用PostgreSQL作为他们的RDBMS存储。 缺点方面,PostgreSQL还欠缺一些比较高端的数据库管理系统需要的特性,比如数据库集群,更优良的管理工具和更加自动化的系统优化功能等提高数据库性能的机制等。 3.MongoDB MongoDB是一款开源、面向文档并且也是当下人气最旺的NoSQL数据库,它也是一款介于关系数据 Hadoop (HBase)是一个开源的、基于列存储模型的分布式数据库,它是Apache Hadoop项目的一部分,开发语言为Java。 HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是 HBase是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,用以存储大规模结构化数据。HBase利用Hadoop HDFS作为其文件存储系统;Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduce来处理HBase中的海量数据;Google Bigtable利用 Chubby作为协同服务,HBase利用Zookeeper作为对应。 Apache Cassandra是一套开源分布式NoSQL数据库系统,类似于Google的BigTable。它最初由 |