与服务器一起的日子

  • mysql
  • linux
  • 高可用
  • nginx
与服务器一起的日子
冰冷的机器也熄不灭火热的心
  1. 首页
  2. 大数据
  3. 正文

什么是PostgreSQL

2018年2月10日 524点热度 0人点赞 0条评论

PostgreSQL是自由的对象-关系型数据库服务器(数据库管理系统),在灵活的BSD风格许可证下发行。它在其他开放源代码数据库系统(比如MySQL和Firebird),和专有系统(比如Oracle、Sybase、IBM的DB2和Microsoft SQL Server)之外,为用户又提供了一种选择。

PostgreSQL起源

PostgreSQL经历了长时间的演变。开始,PostgreSQL是以加州大学伯克利分校计算机系的Ingres计划,这个计划的领导者迈克尔·斯通布雷克在1982年离开Berkeley去商业化Ingres,但是最后还是返回了学术界。在1985年返回Berkeley之后,Stonebraker开始了post-Ingres计划来致力于在1980年代早期变得日益清楚的、当代数据库系统的问题。Postgres和Ingres的代码库开始(并保持)完全分离了。

PostgreSQL的存储类型

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

  • 任意精度的数值
  • 无限制长度文本
  • 几何图元
  • IPv4地址与IPv6地址
  • 无类域间路由地址块,MAC地址
  • 数组
  • JSON数据
  • 枚举类型
  • XML数据 (需要在PostgreSQL源码编译时指定 "--with-libxml"选项)

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

PostgreSQL用户定义对象

用户可以为数据库内几乎所有的对象定义新的类型,包括:

  • 索引
  • 操作符(可重载现有操作符。)
  • 聚合函数
  • 数据域
  • 数据类型转换
  • 会话(编码转换)

继承

数据表的结构及属性可从一个“父”表中继承,数据将在两者间共享。对子表中数据的插入或者删除也将在父表中体现,同样,对父表作出的修改,比如添加列等操作也会导致子表产生相应的改动。

其他功能

  • 关系完整性约束:包括外键,列约束与行检查
  • 视图
  • 内、外(全、左、右)连接
  • 子查询
  • 事务处理
  • 支持大部分SQL:2003标准的主要特征,以及不支持部分未来版本的支持情况,可至已有版本手册中查询。
  • SSL加密连接
  • 二进制/文本大对象的存储
  • 在线备份
  • 数据域
  • 表分区
  • 表空间
  • 保存点
  • 时刻点恢复
  • 二阶段提交
  • TOAST(The Oversized-Attribute Storage Technique,超大属性存储技术)用以透明地将超大表属性(如大MIME附件或XML消息)压缩后存储至独立的区域
  • 正则表达式

 

标签: PostgreSQL
最后更新:2018年2月10日

jhin

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2024 与服务器一起的日子. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang