这回是 mysql5.7 和 pg9.6 了, mysql 还是差 pg 很多

2016-10-19 11:52:01 +08:00
 cstj0505

上次发现 mysql 和 pg 性能差太多,然后就发了个帖: https://www.v2ex.com/t/298841#reply22

不少人说 mysql 改用 5.7 ,然后发现默认下 5.7 性能还不如 5.5. 数据库写入 mysql 的 InnoDB 实在太慢, SSD 情况下也才 1 万 5 左右, 4 个线程同时写入每个 1.3 万。 pg 一个线程就 7.8 万了。

然后全表扫描上,我把 mysql 的 InnoDB 和 MyISAM 都尝试了, sql 是: select max(sa) from (select c,sum(a) sa from PXFTEXTTB group by c order by 2) t; 1 亿条数据的时候, InnoDB 67.59 秒, MyISAM 40.92 秒, pg 是 12.28 秒 5000 万差别最大, InnoDB 34.34 秒, pg9.6 4.14 秒

而且索引 pg 也比 mysql 快。 a 字段是 sequence ,值从 1-1 亿。在 a 上创建 btree 索引,对 10 万条汇总。 sql 为: select sum(c) from PXFTEXTTB2 where a<70000000 and a>69900000; InnoDB : 0.19 秒 MyISAM : 0.14 秒, pg : 0.038 秒

2582 次点击
所在节点    数据库
29 条回复
Sharuru
2016-10-19 15:55:46 +08:00
pgAdmin4 竟然是 web application...启动速度感人。
cstj0505
2016-10-19 15:57:32 +08:00
@Sharuru web application 了?汗,还在用 3
kideny
2016-10-19 16:10:20 +08:00
不是为了省钱, 100 万台 access 服务器,也能抗大型网站吧。
cstj0505
2016-10-19 16:11:14 +08:00
@twl007 用 mariaDB10.1 试了下, 3 个线程同时写, InnoDB 表单线程写入 2 万,比 mysql 的 1.3 万高了 50%.
奇怪 MyISAM 只有 1 万 8 。 3 线程写, pg 单线程 6.5 万

1000 万条执行上面那个 max 查询:
InnoDB : 28.10s
MyISAM : 1.90s
pg : 0.857s
lightening
2016-10-19 16:12:54 +08:00
@dontwanttologin 我用 Postico
cheetah
2016-10-19 16:22:04 +08:00
Postico+1
reus
2016-10-19 20:44:40 +08:00
就算比 mysql 慢,还是用它,因为查询、数据类型都比 mysql 强太多。
banxi1988
2016-10-19 21:06:53 +08:00
Postico + 1
很好用. 不过注意是 Mac Only
Jaylee
2016-10-20 10:37:09 +08:00
Postico+2

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/313812

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX