首页 > 数据库 >在必学的数据库里面应该有postgresql

在必学的数据库里面应该有postgresql

时间:2022-09-30 23:46:31浏览次数:59  
标签:POSTGRESQL 数据库 必学 PG SQL ORACLE postgresql

最近关注postgresql的书籍, 与其他的数据库如SQL SERVER , ORACLE ,MYSQL ,MONGODB 等等不同,POSTGRESQL 的书籍中掺杂了一些这样的书。


答案很简单,有不少人在研究POSTGRESQL 的代码,并进行二次开发,而且很多都是商业性的。继续推演,必然有不少对POSTGRESQL 进行二次开发的公司存在, 在继续往下想,那也就一定有不少有基于postgresql产品的用户存在。

所以从上面的逻辑导出postgresql 在必学的数据库的list 是应该。下面以三种角度来阐述,“在必学的数据库里面应该有postgresql “。


1  数据库的体系结构

说到数据库体系结构,POSTGRESQL 必然是一种特殊体的存在,从设计的角度来说POSTGRESQL 的设计者,使用了与其他传统数据库设计中不类似的方式来设计数据库的事务管理和MVCC的实现方式。

MYSQL 和 ORACLE 都具备UNDO 表空间,通过集中式的管理的模式来进行事务的回滚和事务的多版本的控制。即使是SQL SERVER 的MVCC 与UNDO 也类似MYSQL 和ORACLE 采用了 TEMPDB 库作为这些数据的存储地,我们也可以理解为另一种UNDO 表空间的存在。这里只有POSTGRESQL 是将UNDO 表空间表达在每个表中。从数据库中最重要的UNDO MVCC 的设计中,POSTGRESQL 的理念就与其他的数据库不同。

在必学的数据库里面应该有postgresql_sql


另外一个设计的理念的不同就是extension ,这使得其他数据库还在为扩展一个功能而伤透脑筋,但在POSTGRESQL 中对于功能的扩展是极其简单的,这也是从数据库体系机构看与其他数据库设计理念不同的地方。所以学习数据库实际上也是要理解不同数据库设计的理念,学习就要学习不同的理念。


2  数据迁移

数据库迁移中,兼容性是最重要的, 兼容性从如下几个角度来考虑 

1  SQL 语法的兼容和宽容度

2  字段类型的包容和接纳

3  单表数据库存储的容量限制

4  管理方式的兼容


从上面四个角度看,无论是SQL SERVER , MYSQL , ORACLE ,这些数据库之间迁移是比较困难的,而这些数据库迁移到 POSTGRESQL是相对简单的。

1 从SQL 语法的兼容度来看,目前这几种数据库中SQL 的功能,函数以及语法最接近ORACLE的是POSTGRESQL ,基本上ORACLE 提供的大部分比较难的语法都能在POSTGRESQL 上找到解决方案, 例如 物化视图。

2  字段类型的包容和接纳程度, 这点了解POSTGRESQL的字段类型的同学应该知道,PG是支持的数据TYPE类型是这几种数据库中最多的,将表中的数据从这些数据库转移到 POSTGRESQL 也是最简单,没有太多烦恼的。

3  单表的容量限制,这点在迁移数据库有时是一个关键,如应用不对单表的数据库进行分区,分库,分表,则单表的数据承受力也是一个关键,这点PG毫无疑问也是OK的,HEAP 表的承载能力在这几种数据库中并不吃亏。

4   管理方式的兼容,可以按照ORALCE的 SCHEMA 管理方式进行管理,也可以按照MYSQL建立多个数据库的方式来管理,甚至可以接受类似SQL SERVER 即SCHEMA 管理的同时也进行多database的管理。对于管理人员的转换提供了方便。


3   实现针对特定业务逻辑的支持能力, PG 可以变成地理位图数据库, 也可以变成存储JSON 的专业类数据库,或者也可以成为存储时序性数据的数据库,甚至可以变身为图数据库。基于任何一个分支,都可以进行更有深度的使用和研究,这也是其他数据库不能做到的。使得一个数据库成为无限类型数据库的可能成为可能。


4  基于POSTGRESQL 的二次开发方便,并且大部分国产数据库都是基于PG为原型开发,这对了解和使用更多的国产数据库提供了方便,国产数据库种类多,但不变的是基于PG的核心,拿刀先拿刀柄,操作起来才方便。


综上所述,无论是数据库开发,还是DB, 还是一般使用者,或者是国产数据库的拥护者, 从哪个角度学习PG 都是一件怎么都不吃亏的买卖,你说是吧! 

 

在必学的数据库里面应该有postgresql_sql_02


标签:POSTGRESQL,数据库,必学,PG,SQL,ORACLE,postgresql
From: https://blog.51cto.com/u_14150796/5727513

相关文章