常用数据库的朋友,对PostgreSQL应该并不陌生,这个号称“世界***进的开源数据库系统”,着实让不少朋友着迷。
然而遗憾的是,PostgreSQL在国内的应用并不广泛,可能大家用的最多的,还是MySQL、SQL Server、Oracle这些数据库。
Oracle和SQLServer都是商业闭源数据库,都是美国的,MySQL又被Oracle收购了,其开源前景非常暗淡。
在目前中美贸易战的大背景下,连华为都在砸锅卖铁做到全流程国产化,我们作为搞数据库的所谓IT人士,真的应该开始花时间研究包括PostgreSQL在内的各类***开源系统了。
当然,今天我们聊PostgreSQL,主要出发点并不是因为当前的世界局势,而是PostgreSQL本身,她有着“世界***进的开源数据库系统”的名号,这名号不是吹出来的,是实实在在的。
今天,我们就谈谈PostgreSQL到底好在哪里。
有朋友会问,这一点真的很重要吗?我的回答是真的非常重要。PostgreSQL是属于全世界的开源数据库系统,她拥有一支遍布全球的非常活跃的开发队伍。除了登记注册的全球志愿者团队负责维护开发外,还包括很多***黑客都愿意为此奉献。
您试想一下,有如此众多高手的大力支持和无私奉献,PostgreSQL会差吗?您可以不相信微软、可以不相信Oracle,难道您连全世界***高手和***黑客的无私奉献都信不过?
从这个角度延伸一下,作为开源的系统,PostgreSQL的无私奉献真的很了不起。SQL Server、Oracle、DB2这些都是闭源的,PostgreSQL想要汲取它们的营养非常难,而反过来就很难说了。谁是伟大的、谁是无耻的,还需要明讲吗?
作为完全可以对标甚至超越Oracle、SQLServer的大型数据库系统,PostgreSQL对SQL标准的支持非常棒,基本全面覆盖了所有 SQL-2/SQL-92 和 SQL-3/SQL-99标准。换句话说,要说那个数据库最正统,那非PostgreSQL莫属。
PostgreSQL很早就是全功能的自由软件数据库。她支持非常丰富的数据类型(丰富到变态级别)、她支持支持事务和子查询、她支持多版本并行控制系统(MVCC)、她支持数据完整性检查等等。
无论您是入门级的数据库新手、还是高深莫测的数据库管理员,PostgreSQL奉献给您的,是最标准、最正统的SQL标准支持,如果您不选她、那选谁还会更合适呢?
无论是各种Linux、还是Windows,PostgreSQL的支持都非常棒;无论您是用C、还是用Pascal、PHP、GO、Python、Kotlin、C#、Java、Ruby等等,PostgreSQL都为您提供了非常***的编程接口支持。
当然,其它数据库可能也能做到,但作为完全开源的全功能数据库系统,能够获得所有主流编程语言的支持,实属难得啊。不要跟我提MySQL,这个被流氓公司收购了的前途未卜、半死不活的,根本没有跟PostgreSQL对比的资格。
所以说,无论您是数据库管理员、还是程序员,如果您希望选择一个相对***的数据库系统,我敢自信的说PostgreSQL绝对是最靠近***的那个。
对NoSQL和NewSQL比较了解的朋友应该清楚,JSON是NoSQL和NewSQL的基础,我们无法定论是JSON成就了NoSQL和NewSQL、还是NoSQL和NewSQL成就了JSON,总之NoSQL、特别是NewSQL已经是未来数据库发展的大方向,这是铁的事实。
PostgreSQL对JSON的支持,是所有传统关系型数据库中最彻底最全面的,她是字段级别的直接支持,而且提供了大量的JSON处理函数。从这个角度来看,PostgreSQL与NewSQL的距离越来越靠近。
当然,并不是说支持JSON好就算是NewSQL了,还有很多其它技术进步融合,包括OLAP、OLTP的***支持,PostgreSQL都在越做越好。拥抱PostgreSQL,从某种意义上也可以说是拥抱了未来。
这是重点,也是PostgreSQL在全世界受到极大青睐的主因之一。很多朋友理解性能和稳定性,喜欢从纯技术的角度出发,我这里换一个角度。
前几天,跟一个朋友聊起,他帮一个客户开发的系统,已经用了四五年了,单个表的数据量已经涨到了***别,他没做任何处理(分表、清理等都没做),现在的速度跟刚开始启用的时间没什么变化。
就问您服了没有?
说了这么多,如果您还是认为死贵死贵的Oracle和SQL Server是个宝,那就是我明珠暗投了。
拥抱PostgreSQL、您就拥抱了未来!
前言 关于Window,你了解多少呢?看看下面这些问题你都能答上来吗。 如果你遇到这...
从功能测试、性能测试、界面测试、安全性测试、易用性、兼容性测试、震动测试七...
首先给扑克牌中每张牌设定一个编号,下面算法实现的编号规则如下: u 红桃按照从...
本文实例讲述了jsp中page指令用法。分享给大家供大家参考。具体如下: 一、JSP ...
今日国内领先的智能数据服务运营商觉非科技完成近亿元A轮融资。本轮融资由和高资...
一、简介 本设计为硬币图像识别统计装置通过数码相机获取平铺无重叠堆积的硬币的...
大家好,今天我们来简单的聊一聊缓存问题。什么是缓存呢?它在系统设计中是在一个...
一、MVC MVC模式的意思是,软件可以分成三个部分。 视图(View):用户界面。 控...
我们知道微软将会在今年给Windows10更换全新设计的UI,让Windows10的界面更加整...
git工作区,暂存区,版本库之间的关系: 我们建立的项目文件夹就是工作区,在初...