`
gaojingsong
  • 浏览: 1182722 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【数据库之PostgreSQL介绍】

阅读更多

自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选。

 

PostgreSQL是一个功能强大的开源数据库系统。经过长达15年以上的积极开发和不断改进,PostgreSQL已在可靠性、稳定性、数据一致性等获得了业内极高的声誉。目前PostgreSQL可以运行在所有主流操作系统上,包括Linux、Unix(AIX、BSD、HP-UX、SGI IRIX、Mac OS X、Solaris和Tru64)和Windows。PostgreSQL是完全的事务安全性数据库,完整地支持外键、联合、视图、触发器和存储过程(并支持多种语言开发存储过程)。它支持了大多数的SQL:2008标准的数据类型,包括整型、数值值、布尔型、字节型、字符型、日期型、时间间隔型和时间型,它也支持存储二进制的大对像,包括图片、声音和视频。PostgreSQL对很多高级开发语言有原生的编程接口,如C/C++、Java、.Net、Perl、Python、Ruby、Tcl 和ODBC以及其他语言等,也包含各种文档。

PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, macOS, Solaris, Tru64), and Windows. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation.

 

 



 

 

优点

事实上, PostgreSQL 的特性覆盖了 SQL-2/SQL-92 和 SQL-3/SQL-99,首先,它包括了可以说是目前世界上最丰富的数据类型的支持,其中有些数据类型可以说连商业数据库都不具备, 比如 IP 类型和几何类型等;其次,PostgreSQL 是全功能的自由软件数据库,很长时间以来,PostgreSQL 是唯一支持事务、子查询、多版本并行控制系统(MVCC)、数据完整性检查等特性的唯一的一种自由软件的数据库管理系统。 Inprise 的 InterBase 以及SAP等厂商将其原先专有软件开放为自由软件之后才打破了这个唯一。最后,PostgreSQL拥有一支非常活跃的开发队伍,而且在许多黑客的努力下,PostgreSQL 的质量日益提高。

从技术角度来讲,PostgreSQL 采用的是比较经典的C/S(client/server)结构,也就是一个客户端对应一个服务器端守护进程的模式,这个守护进程分析客户端来的查询请求,生成规划树,进行数据检索并最终把结果格式化输出后返回给客户端。为了便于客户端的程序的编写,由数据库服务器提供了统一的客户端 C 接口。而不同的客户端接口都是源自这个 C 接口,比如ODBC,JDBC,Python,Perl,Tcl,C/C++,ESQL等, 同时也要指出的是,PostgreSQL 对接口的支持也是非常丰富的,几乎支持所有类型的数据库客户端接口。这一点也可以说是 PostgreSQL 一大优点。

 

 

缺点

从 Postgres 开始,PostgreSQL 就经受了多次变化。

首先,早期的 PostgreSQL 继承了几乎所有 Ingres, Postgres, Postgres95 的问题:过于学院味,因为首先它的目的是数据库研究,因此不论在稳定性, 性能还是使用方方面面,长期以来一直没有得到重视,直到 PostgreSQL 项目开始以后,情况才越来越好,PostgreSQL 已经完全可以胜任任何中上规模范围内的应用范围的业务。目前有报道的生产数据库的大小已经有 TB 级的数据量,已经逼近 32 位计算的极限。不过学院味也给 PostgreSQL 带来一个意想不到的好处:大概因为各大学的软硬件环境差异太大的缘故,它是目前支持平台最多的数据库管理系统的一种,所支持的平台多达十几种,包括不同的系统,不同的硬件体系。至今,它仍然保持着支持平台最多的数据库管理系统的称号。

其次,PostgreSQL 的确还欠缺一些比较高端的数据库管理系统需要的特性,比如数据库集群,更优良的管理工具和更加自动化的系统优化功能 等提高数据库性能的机制等。

 

 

数据类型

PostgreSQL内置丰富的数据类型,包括:

任意精度的数值

无限制长度文本

几何图元

IP地址与IPv6地址

无类域间路由地址块,MAC地址

数组

此外,用户可以创建自定义数据类型,通常通过PostgreSQL的GiST机制,它们也能被很好得索引,比如PostGIS地理信息系统的数据类型。

  • 大小: 13.4 KB
0
1
分享到:
评论

相关推荐

    PostgreSQL数据库内核分析

    PostgreSQL数据库内核分析PostgreSQL数据库内核分析PostgreSQL数据库内核分析PostgreSQL数据库内核分析PostgreSQL数据库内核分析PostgreSQL数据库内核分析PostgreSQL数据库内核分析PostgreSQL数据库内核分析...

    PG-13.7 数据库安装包 postgresql-13.7-1-windows-x64.exe

    PG-13.7 数据库安装包 postgresql-13.7-1-windows-x64.exe 官方下载的安装包 windows下 直接安装即可

    PostgreSQL数据库介绍

    ### PostgreSQL数据库介绍 #### PostgreSQL概览 PostgreSQL是一款先进的开源关系型数据库系统,它结合了传统商业数据库的强大功能与下一代数据库管理系统(DBMS)的创新特性。作为一个面向目标的数据库解决方案,...

    postgresql10数据库生成文档工具

    PostgreSQL 10数据库生成文档工具是一款高效实用的软件,专为PostgreSQL 10数据库设计,旨在简化数据库管理和文档编制工作。通过该工具,用户能够轻松地从数据库中提取信息,生成详细的文档,以便更好地理解和维护...

    PostgreSql+PostGis创建空间数据库

    PostgreSql+PostGis 创建空间数据库 PostgreSql 是一个功能强大且开源的关系数据库管理系统,它提供了一个强大的平台来存储和管理数据。PostGis 是一个基于PostgreSql 的空间数据库扩展,它提供了对空间数据的支持...

    postgreSQL数据迁移到达梦数据库操作

    PostgreSQL 数据迁移到达梦数据库操作 PostgreSQL 数据迁移到达梦数据库操作是指将 PostgreSQL 数据库中的数据迁移到达梦数据库中的过程。该过程需要使用 Navicat for PostgreSql 工具生成 SQL 脚本,然后使用达梦...

    postgresql-42.2.14.数据库驱动jar

    PostgreSQL是一种开源的对象关系型数据库管理系统(ORDBMS),它以其强大的功能、高度的灵活性和稳定性赢得了广大开发者的青睐。而"postgresql-42.2.14.jar"是PostgreSQL数据库的一个Java驱动程序,也被称为JDBC...

    postgresql数据库的例子

    postgresql数据库的一个关于租赁DVD的商店的例子,里面详细介绍了DVD租赁的一些逻辑表。

    连接postgresql数据库需要的jar包

    在Java编程中,连接到PostgreSQL数据库通常需要特定的驱动程序,这个驱动程序通常是以JAR(Java Archive)文件的形式存在。"连接postgresql数据库需要的jar包"指的是用于建立Java应用程序与PostgreSQL数据库之间通信...

    PostgreSQL数据库介绍ppt

    阿里巴巴唐成的PostgreSQL数据库介绍ppt文档。值得一看,收获很大,对初学者有用,老手也可以重新看一遍。温故知新嘛。

    PostgreSQL数据库内核分析.pdf

    PostgreSQL数据库内核分析.pdf

    PostgreSQL数据库内核分析 完整版

    《PostgreSQL数据库内核分析》彭智勇 完整版44M

    C# 操作PostgreSQL 数据库

    PostgreSQL则是一款强大的开源关系型数据库管理系统,以其稳定性、可扩展性和丰富的功能著称。本文将深入探讨如何使用C#来操作PostgreSQL数据库。 首先,我们需要安装必要的库以在C#中与PostgreSQL进行交互。Npgsql...

    如何恢复PostgreSQL数据库

    下面将详细介绍如何恢复 PostgreSQL 数据库。 一、备份和恢复 PostgreSQL 数据库 恢复 PostgreSQL 数据库通常是通过备份和恢复实现的。在特殊情况下,系统故障,PostgreSQL 数据库无法打开,这时候只有求助与存放...

    nacos适配postgresql数据库

    1.nacos服务,适配postgresql数据库。 2.提供nacos,postgresql的创建nacos数据库脚本。 3.nacos/conf/nacos-pg.sql数据库脚本文件。 4.nacos版本1.4.2。

    PostgreSQL数据库内核分析 清晰版

    PostgreSQL数据库内核分析 清晰版,完整415页

    Python编写PostgreSQL数据库结构比对程序源代码

    在IT行业中,数据库管理是至关重要的任务之一,特别是在软件开发和数据分析领域。PostgreSQL是一种流行的开源关系型数据库管理系统,以其强大的功能和稳定性受到广大开发者喜爱。Python作为一种易学且功能丰富的编程...

    postgresql数据库备份和恢复

    PostgreSQL,作为一种流行的开源对象关系数据库系统,它为用户提供了多种工具和方法来实现数据的备份和恢复。 在PostgreSQL数据库备份方面,通常的工具包括内置的客户端工具pgAdmin,它提供了用户图形界面来进行...

    WIN7上安装Ofbiz 数据库 postgresql

    在本文中,我们将详细介绍如何在Windows 7操作系统上安装OFBiz企业应用框架,并配置PostgreSQL作为其数据库。OFBiz是一个开源的企业级应用平台,而PostgreSQL是一个强大的对象关系型数据库管理系统,它们共同为企业...

Global site tag (gtag.js) - Google Analytics