与服务器一起的日子

  • mysql
  • linux
  • 高可用
  • nginx
与服务器一起的日子
冰冷的机器也熄不灭火热的心
  1. 首页
  2. mysql
  3. 正文

PostgreSQL 与 MySQL 的优缺点

2018年3月9日 888点热度 0人点赞 0条评论

本文根据知乎的问题(PostgreSQL 与 MySQL 相比,优势何在?)回答总结而成。如有出入,请谅解。

1、MySQL和PostgreSQL 都是开源的软件,都可以下载到源代码。

2、MySQL具有高性能,多用户,权限管理。而PostgreSQL 的用户权限管理远远没有MySQL严格。

3、MySQL使用的是线程,PostgreSQL 是用的进程。在不同线程之间的环境转换和访问公用的存储区域显然要比在不同的进程之间快得多。

4、列级的权限,PostgreSQL可以通过建立视图,并确定视图的权限来弥补,而MySQL却不支持视图。

5、Postgres更接近oracle的使用习惯。

6、

pgsql 已经可以支持把sql 编译为bytecode,通过llvm jit技术转化为native code 执行,对复杂查询加速效果明显,普通点查询效果一般。当然有了llvm 的黑科技还很方便做vector 加速。这些新特性在olap 领域相当重要。oracle 早就支持把存储过程编译为bytecode 了,mysql 还在解释器时代。

作者:王磊

7、虽然mysql也支持json了,但是pg的json实在太好用
8、对于想读数据库内核代码的朋友,PostgreSQL是在短时间内可读的, 而MySQL不是。
9、MySQL为了适应联机事务查询把内存调整的很高。
10、mysql做数据报表计算后台最大缺点就是没有grouping sets和一些窗口函数,替代方案很麻烦而且效率低。
11、postgresql的性能应该是远远甩mysql三条街的,而且也稳如死狗,相同的数据量复杂计算,postgresql时间一般只有mysql 1/4左右,当然这个时间只是我这边业务我的使用情况,其他环境可能不一样,我这边是多表join,维度聚合等等比较多。还有将大量log文件导入数据库,也是pgsql快得多。
12、postgresql有grouping sets函数。gsql还有挺多很好用的窗口函数之类
13、pgsql对json支持比较好,还有很逆天的fdw功能,就是把别的数据库的表当自己的用,减少了我这边很多工作
14、pgsql表名就让我这种强迫症的人很难受,pgsql对表名大小写不敏感的
 15、pgsql对语法简直严苛到有时候你认为变态的地步。
16、pgsql的分区简直就是灾难级别的。使用的继承之类的概念。建一个主表,然后建立很多小表,继承到主表,建索引得一个一个在小表上面建立。小表建表的时候指定了分割规则,你导入的时候还是得很傻的按照这个规则去指定那个表导入,pgsql不会对你说,你插入主表,我根据你的建表规则去分配数据。还有它的分表性能差的要死。据说10会内置分区。

标签: PostgreSQL
最后更新:2018年3月9日

jhin

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2024 与服务器一起的日子. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang