昨晚姜老师受邀出席开源中国举办的《MySQL vs PostgreSQL,谁是世界第一》的直播。
这其中诞生了多个世界名场面,让我们看到了 PGer 的下限。原来我不能理解姜老师对 PGer 为何如愤怒,现在我理解了,那就是:欺骗。
这个名场面发生在视频的19分15秒,大家可以在最后进行回看。
当对面 PGer 贴出这个 Google Trend 图时,我是菊花一紧的,难道姜老师是错的?然而,仔细看,会发现 PostgreSQL是用主题进行搜索,而MySQL是通过软件进行搜索(看上图的方框)。换句话说,这不是一个维度的搜索结果比较,而且仅限在俄罗斯这个国家。上述两个条件一叠加,当然可以构造出 PG 流行度大幅超越 MySQL 的假象。因为他知道俄罗斯是 PG 市场占用率最高的国家,而且利用不同维度的比较,可以进一步制造差距。

如果看中国的话,真实的结果是 PG 仅有 MySQL 的 1/10 左右:

所以,若真要看 Google Trend 的流行度,不是至少是看全球么?该 PGer 竟然能如此厚颜无耻地举例对自己有利的数据,隐瞒真实数据,真的是一个下头男。
这个名场面发生在视频的83分50秒,大家可以在最后进行回看。BEGIN;
INSERT INTO t VAVLUES (1,...);
INSERT INTO t VAVLUES (1,...); -- 主键冲突,报错
COMMIT;
SELECT * FROM t;
-- 得到1这条记录
复制
后来才发现,这是 MySQL 的正常逻辑,没有破坏任何事务的原子性。

因为用户最后选择了 COMMIT 而不是 ROLLBACK。后来在 IMG 的微信群,大家说 Oracle 、Microsoft SQL Server 也可以是这样的表现行为。
只不过,PG 对于上面的插入错误,可以自己主动回滚。这是一个 PG 的特性,而不代表 MySQL 的事务机制存在问题。这和原子性又有什么关系?和 ALL 和 Nothing 又有什么联系呢?而且通过设置参数 sql_mode ,MySQL 也可以有类似这样的处理:With TRADITIONAL mode enabled, an INSERT or UPDATE aborts as soon as an error occurs.交由用户自己来选择提交还是回滚,这不是更好地处理么?
这个名场面发生在视频的114分32秒,大家可以在最后进行回看。他说 TPC-C 是 30 年前的测试标准,是过时的标准,而且可以通过堆机器的方式提升性能。类似蚂蚁这样的厂商,去进行 TPC-C 测试是人傻钱多,SB 的行为。然而,在 OceanBase 成功打榜 TPC-C 第一后,人民日报第一时间颁奖:
今年 TDSQL 超越 OceanBase,登顶 TPC-C 榜首,人民日报同样给与肯定:
中国的两款国产数据库都在砥砺前行,打磨技术,确保中国人自己的数据库不但可以做到自主可控,而且能领先世界。为什么在这位 PGer 眼里这些都是 SB 行为?这样的 PGer 简直是是中国 PGer 的耻辱,是耻辱柱的耻辱。

可以看到他在阿里收购的友盟公司,做了2年半的时间,级别一直是稳定的 P5。
在简历中,竟然自称是架构师和 TL,一个 P5 怎么能如此厚颜无耻。Finplus平台,该位 PGer 也在直播中说是仅有3个人一起做的项目。此外,从他的履历上看,除了在苹果的经历比较拿得出手外,其他也就没了。

而且在苹果仅待了半年,没负责苹果的在线业务数据库,依然是一些离线分析的数据,甚至大概率没有通过试用期。没有大厂海量在线业务的工作经验,竟敢拿投资人的钱,为用户提供 PG 服务。
但凡稍微核心点的业务使用 PG,我想知道,这个人情有这么大么?
最后的最后,这场直播让我想起了王自如和老罗的辩论。拿着投资人的钱,用不专业的数据,吹嘘自己的产品有多好。中国互联网大厂,PG 的使用率只有 MySQL 的 5% 左右。
中国公有云市场,PG 的营收仅有 MySQL 的 0.1% 左右。至于 PG 的 JSON、向量、GIS、AP 等能力,这些功能目前的确比 MySQL 数据库做得好。对比上述这些功能,PG 也没有比 MongoDB、Redis、Weaviate、Hadoop、ClickHouse 做得更为优秀。各个领域,PG 的口号都很响亮,但一直处于打脸的地步。看完今天的这场直播,我终于明白为什么这么多年,PG 迟迟没有起来。
因为 PGer 不务实,不接地气,更重要的是人品极差。
BTW,想要看本次直播回放的,请私信加入 IMG 社区。