1.PG简介
● PostgreSQL是加州大学伯克利分校计算机系开发的, 一个开源免费的关系式数据库管理系统,经过长达15年以上的积极开发和不断改进, PostgreSQL已在可靠性、稳定性、数据一致性等获得了业内相对高的声誉。 ● PostgreSQL可以运行在所有主流操作系统上, 包括Linux、AIX、HP-UX、Solaris和Windows等34种平台。 ● PostgreSQL是完全的事务安全性数据库, 完整地支持外键、联合、视图、触发器和存储过程(并支持多种语言开发存储过程)。 ● PostgreSQL支持了大多数SQL标准的数据类型, 包括整型、数值型、布尔型、字节型、字符型、日期型、时间型、二进制的大对像(图片、声音和视频)。 ● PostgreSQL的存储过程开发可以使用众多的程序语言, 包括Java、Perl、Python、Ruby、Tcl、C/C++和自带的PL/pgSQL, 其中的PL/pgSQL与Oracle的PL/SQL很相似,内置了数百个函数, 功能从基本的算术计算和字符串处理到加密逻辑计算并与Oracle有高度兼容性。 ● PostgreSQL对很多高级开发语言有原生的编程接口, 如C/C++、Java、.Net、Perl、Python、Ruby、Tcl和ODBC以及其他语言等,也包含各种文档。 ● PostgreSQL有很多高级功能,像多版本并发控制(MVCC)、 按时间点恢复(PITR)、表空间、异步复制、嵌套事务、在线热备、 复杂查询的规划和优化以及为容错而进行的预写日志等。 ● PostgreSQL支持国际字符集、多字节编码并支持使用当地语言进行排序、 大小写处理和格式化等操作。 ● PostqreSQL有很多高品质的图形化的PostgreSQL管理工具软件, 包括开源和商业性质的。 ● PostgreSQL的源代码可以自由获取,它的授权是在非常自由的开源授权下, 这种授权允许用户在各种开源或是闭源项目中使用、修改和发布PostgreSQL的源代码。 用户对源代码的可以按用户意愿进行任何修改、改进。 ● 目前有不少业务系统使用PostgreSQL在实际生产环境下管理着超过4TB的数据。 ● PostgreSQL的快速发展是由于MySQL被Oracle公司收购导致的, 同时在2019年微软官宣收购PostgreSQL初创公司Citus Data。
2.为什么学PG
1.PG是数据库管理系统,发展已有三十多年, 是国际内核编码者的智慧结晶,并仍在不断迭代更新, 基本每年都会有一个更完善的大版本发布(2019-10-03-PostgreSQL 12已发布); 2.PG是基础软件,不仅对企业的数据管理起着非常关键的作用, 而且随着技术的发展,能适用于多种领域、多种架构; 3.PG是开源软件,有着友好的开源协议, 可以获取源代码深入学习(源代码是C语言实现),还可以获得乐于分享的技术前辈的资源与帮助; 4.PG可以发挥的空间比较大,可以根据自己的兴趣参与数据建模、DB运维、应用或系统开发; 说到发挥空间,谈谈PG学以致用的三个方面: 1) 会使用,用的熟练,成为运维管理、数据库应用能手; 2) 会修改,改成适合自己业务场景的数据库,变成开发能力者; 3) 会重造,重造一个更好的数据库产品,开启数据库发展的新篇章。 我认为,技术人的追求是通过刻意的练习成为高手, 学以致用(建议阅读《刻意练习》这本书,对于有效学习会很有帮助)。
3.PG职业发展
接下来说一下与数据库相关的职业方向: 1.DBA (数据库管理人员): 主要负责数据库架构、部署、运维、排除故障、性能优化等工作内容。 2.DEV(应用开发人员): 负责企业应用程序开发、迁移、数据库应用开发建模、数据库应用优化等。 3.系统开发人员: 系统软件的开发主要面向操作系统、中间件、数据库、虚拟化系统环境的优化、裁剪、补丁修复。 4.系统运维人员: 面向网络、系统(操作系统、中间件、数据库、虚拟化)、硬件等基础环境的运行、维护、升级等。 5.数据分析人员: 面向企业海量数据的整合、分析,提供价值报表,实时动态, 为企业发展决策提供依据;当下热门的人工智能同样需要基于大量数据进行计算分析。 6.系统架构人员: 相对较高级的职位,负责整体架构的部署及优化,譬如虚拟化架构、 云计算平台架构、大数据平台架构等,数据库自然是架构中很重要的一环。 7.软件推广、销售人员:主要面向应用软件、系统软件的推广、营销、销售等工作 另外,国际新形势、国内新政策下,有多家知名公司已经基于PG研发自主可控的数据库产品, 其中主要包括:阿里POLARDB、亚信ANTDB、腾讯TBase、华为GaussDB、 瀚高HGDB等。其中势必蕴含了大量的技术人才需求,值得大家投入到学习PG的队伍中, 推动我们的数据库产品健康、蓬勃发展。
4.PG学习指引
1. 建议阅读《PostgreSQL学习的九层宝塔》: https://mp.weixin.qq.com/s/i7b6FvY3PYC2JENCgiVxjQ 2.可自主学习阅读PG应用管理基础文档, 本部分内容主要是中国PG分会培训认证PGCA课程的节选, 相关链接:http://www.postgresqlchina.com/tecdoc 3.PG学习的主力站点 PG国际社区:https://www.postgresql.org/ 1) PG概要:https://www.postgresql.org/about/ 2) PG在线帮助文档(英文版本,多PG版本): https://www.postgresql.org/docs/ 3)也可通过PG中文手册查阅学习,访问地址: http://www.postgres.cn/docs/10/; http://www.postgres.cn/docs/11/ 4)安装介质下载地址: https://www.postgresql.org/download/ 主要有二进制、源码编译安装两种方式,二进制安装介质对应不同的操作系统。 例外还有一种基于PG的产品发布版本的安装, 可以通过产品的公司官网获得安装介质及安装方法, 譬如阿里POLARDB、亚信ANTDB、腾讯TBase、华为GaussDB、瀚高HGDB等。 5)在线学习资源 https://www.postgresql.org/docs/online-resources/ 包含丰富的教程、动手练习资源
5.PostgreSQL证书
按照等级分为PGCA、 PGCE、PGCM,大家考个PGCE就可以,工作中够用了