大家好,又见面了,我是全栈君。
经常会有人问我PostgreSQL是什么?
这个问题不太好回答,因为PostgreSQL除了可以让你做到几乎所有其他主流关系型数据库能做的事情外,还可以做到很多别的数据库做不到的事情。
如果非要一个简单直接、便于理解的定义,那么你可以理解为一个开源可自由扩充的Oracle。
尽管这并不是非常准确。因为PostgreSQL对程序员要更友好一些,下图是来自StackOverflow 2017年的一些统计,参考Developer Survey Results 2017:
- 最想要的数据库
- 最爱的数据库
如果只是说关系型数据库,那么“StackOverflow年度统计中开发者最爱和最想要的关系型数据库”这个结论不难得出。
而对比其中的最热门:
你会发现一个有意思的现象:对你最好的未必是那个大家都知道的。
PostgreSQL好在哪里?
在回答了前面的回答之后,这是更多的人会想问的第二个问题。
而对于这颗沧海遗珠,用一句话其实难以尽述。如果非要总结,可以认为有以下几点:
性能
我们内部有些性能上的数据,TPCC的性能测试显示PostgreSQL的性能与商业数据库基本在同一个层面上。
谈到与商业数据库的对比,这里有一张比较有意思的图,权作消遣:
可以看得出来,PostgreSQL与很多商业数据库还是有一定历史渊源上的,大多是基于System R。
如果觉得不过瘾,再来点干的,看看PostgreSQL与这些数据库大厂这些年的恩爱情仇(图比较大,PG在左边最上面那条线,然后连着中间最上面第二条线):
如何开始
业务从一个数据库迁移到另外一个数据库,不是一件容易的事。那么,你是否要考虑一下,在新的业务上尝试不同的可能?
关于选型,这篇数据库选型十八摸 之 PostgreSQL – 致 架构师、开发者可能会帮到你。
Have fun!
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/108590.html原文链接:https://javaforall.cn