Navigation

    MemFireDB论坛

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    为什么全网都在劝你在学PG,而不是MySQL?

    灌水区
    1
    1
    12
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      isware last edited by

      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就可以,工作中够用了

      转发来自:https://developer.aliyun.com/article/943818?spm=a2c6h.12873639.article-detail.44.5ca0c79cWKSaJ2&scm=20140722.ID_community@@article@@943818._.ID_community@@article@@943818-OR_rec-V_1-RL_community@@article@@59097

      1 Reply Last reply Reply Quote 0
      • First post
        Last post