超越MongoDB, PostgreSQL引领开发新未来

标签: 业界 开发 MongoDB NoSQL PostgreSQL | 发表时间:2014-10-15 03:37 | 作者:塔塔
出处:http://blog.jobbole.com

最新一轮的针对PostgreSQL和MongoDB的性能比较的多次几近重复的结果证明了PostgreSQL的性能已经超越了MongoDB。 Postgres在JSON和JSONB方面取得的进展使得Postgres可以支持文档型数据库。

能在一个关系型数据库中创建文档型数据库的能力是一项令人印象深刻的成就,尤其是它比当今主流的NOSQL解决方案还要好用!但更重要的是他对终端用户产生的重大意义:更高水平的速度、效率以及灵活性。

Postgres vs. Mongo

EnterpriseDB (EDB) 通过比较性的评估来帮助用户正确的认识Postgres NOSQL的能力。最初的几项测试在单节点的MongoDB v2.6和Postgres v9.4 beta这二者之间展开的。两个系统都被部署在32G内存的Amazon Web Services M3.2XLARGE实例中。

MongoDB 2.4/PostgreSQL 9.4相对性能比较(5000万条文档)

EDB发现在基于5000万记录的测试中,Postgres在查询、加载、插入复杂的文档数据的情况下都要优于MongoDB。

  • Postgres加载大数据的速度要比MongoDB快2.1倍
  • MongoDB要多消耗33%的磁盘空间
  • 插入数据时MongoDB几乎花了三倍于Postgres的时间
  • MongoDB在查询数据时要比Postgres多花2.5倍的时间

基于 1000万条记录的测试结果和上面的基本一致,但是早些的测试版本有一点需要注意:PostgreSQL社区成员Alvaro Tortosa发现MongoDB的控制台不允许插入大于4k的文档。这导致Benchmark时准备的数据中有大约25%是没有插入MongoDB的。

我们已经公布了 测试框架以方便公众来核验并邀请大家填入自己的测试结果并对我们的测试方法和新的测试框架提出建议。测试框架在EDB的 Github仓库中。

开发者自由

最新版本的PostgreSQL为开发人员开创了数据灵活性的新纪元,它甚至超越了当初NOSQL-only解决方案给带来他们的自由。 类似MongoDB这类NoSQL-only解决方案的需求不断增长是因为开发者不想被关系型数据库的结构化数据模型所牵绊。 他们需要对新的数据类型做出快速响应, 最后选择了强大但是功能有限的方案来解决这些问题, 这样的话他们就不需要喊DBA来帮忙做一些数据结构的调整了。

然而, 随着数据在整个组织中的作用变得越来越珍贵,在一段时间之后他们发现成功的应用往往需要结构化的数据。

Postgres赋予了开发人员一个新的选择: 从非结构化数据着手开发,随着需求的变化,就可以在一个兼容ACID的环境中使用同一个数据库引擎来整合这些非结构化和结构化的数据。

这些代码展示了Postgres有处理文档型数据的能力,而我们的性能比较证实Postgres能够应对这些负载。

你可以在EDB的 Github仓库找到这个测试框架的源码或者 联系我们学习Postgres如何在你的DevOps策略中助一臂之力。

超越MongoDB, PostgreSQL引领开发新未来,首发于 博客 - 伯乐在线

相关 [超越 mongodb postgresql] 推荐:

超越MongoDB, PostgreSQL引领开发新未来

- - 博客 - 伯乐在线
最新一轮的针对PostgreSQL和MongoDB的性能比较的多次几近重复的结果证明了PostgreSQL的性能已经超越了MongoDB.  Postgres在JSON和JSONB方面取得的进展使得Postgres可以支持文档型数据库. 能在一个关系型数据库中创建文档型数据库的能力是一项令人印象深刻的成就,尤其是它比当今主流的NOSQL解决方案还要好用.

PostgreSQL 9.1发布

- Kai Chen - Solidot
开源数据库项目PostgreSQL发布了v9.1版. 新版本主要的特性包括:同步复制,序列化快照隔离,支持基于列的排序,近邻邻近索引,外来数据封装,支持SELinux许可控制,等等.

PostgreSQL 9.2发布

- - Solidot
时隔一年之后,开源数据库PostgreSQL发布了v9.2版. 主要新特性包括:原生JSON支持,覆盖索引(covering indexes),改进复制和性能等. PostgreSQL显著改善了可伸缩性:线性可扩展性支持最高64核,仅扫描索引,减少CPU消耗;改进垂直可伸缩性:有效利用大服务器硬件资源,锁管理,仅访问索引等底层操作允许数据库引擎处理更大的工作负荷——每秒最高35万只读查询,每秒写入1.4万条数据.

[mongodb] java操作mongodb

- - 数据库 - ITeye博客
           //实例化Mongo对象,连接27017端口.                               //连接名为yourdb的数据库,假如数据库不存在的话,mongodb会自动建立. //从Mongodb中获得名为yourColleection的数据集合,如果该数据集合不存在,Mongodb会为其新建立.

Mysql 和 Postgresql 对比

- - 膘叔
vampire告诉我服务器上安装好了postgreSQL,他也一直在推荐这个玩意,所以了解了一下. Mysql 使用太广泛了,以至于我不得不将一些应用从mysql 迁移到postgresql, 很多开源软件都是以Mysql 作为数据库标准,并且以Mysql 作为抽象基础的,但是具体使用过程中,发现Mysql 有很多问题,所以都迁移到postgresql上了,转一个Mysql 和Postgresql 对比的文章:.

PostgreSQL与MySQL比较

- - 数据库 - ITeye博客
通过执行 MySQL 命令(mysqld)启动实例. 一个实例可以管理一个或多个数据库. 一台服务器可以运行多个 mysqld 实例. 一个实例管理器可以监视 mysqld 的各个实例. 通过执行 Postmaster 进程(pg_ctl)启动实例. 一个实例可以管理一个或多个数据库,这些数据库组成一个集群.

PostgreSQL新手入门

- - 阮一峰的网络日志
自从MySQL被Oracle收购以后, PostgreSQL逐渐成为开源关系型数据库的首选. 本文介绍PostgreSQL的安装和基本用法,供初次使用者上手. 以下内容基于Debian操作系统,其他操作系统实在没有精力兼顾,但是大部分内容应该普遍适用. 首先,安装PostgreSQL客户端. 然后,安装PostgreSQL服务器.

PostgreSQL配置优化

- - CSDN博客推荐文章
转载请注明原文出处: http://blog.csdn.net/roddick621. PostgreSQL配置优化. 200W(整个数据库大小约为300M). 准备命令:pgbench -i -s 20 pgbenchdb. 测试命令:pgbench -r -j4 -c4 -T60 testdb.

PostgreSQL Maestro 14.5 发布

- - 开源中国社区最新新闻
SQL Maestro Group 发布了 PostgreSQL Maestro 14.5 ,这是一个强大的 Windows 下图形化的 PostgreSQL 数据库服务器管理和开发的解决方案. 新版本可通过这里 下载..

【MongoDB】MongoDB之优化器Profiler

- - CSDN博客数据库推荐文章
在mysql数据库中,慢查询日志经常作为优化数据库的依据, mongodb中依然有类似的功能. Mongodb自带的profiler,可以方便地记录所有耗时的操作,以便于调优;. 一、开始profiler功能. 开启profier功能有两种:. 第一种就是直接在启动参数里面进行设置,就在茄冬mongodb时候添加-profile=级别.