一、PostGIS介绍
PostGIS是一个空间数据库,空间数据库像存储和操作数据库中其他任何对象一样去存储和操作空间对象。
空间数据库将空间数据和对象关系数据库(Object Relational database)完全集成在一起。实现从以GIS为中心向以数据库为中心的转变。
PostGIS通过向PostgreSQL添加对空间数据类型、空间索引(R-Tree)和空间函数的支持,将PostgreSQL数据库管理系统转换为空间数据库,可以说PostGIS仅仅只是PostgreSQL的一个插件,但是它将PostgreSQL变成了一个强大的空间数据库!
最重要的只要接触过SQL语言,就可以利用PostGIS的SQL语法便捷的操纵装载着空间信息的数据框(数据表),这些二维表除了被设定了一个特殊的空间地理信息字段(带有空间投影信息、经纬度信息等)之外,与主流数据管理系统所定义的各种字段并无两样。
PostGIS安装不仅依赖于PostgreSQL,还依赖于很多插件:
GEOS几何对象库
GDAL栅格功能
LibXML2
LIBJSON
PostGIS的特点如下:
PostGIS支持所有的空间数据类型,这些类型包括:点(POINT)、线(LINESTRING)、面(POLYGON)、多点 (MULTIPOINT)、多线(MULTILINESTRING)、多面(MULTIPOLYGON)和几何集合 (GEOMETRYCOLLECTION)等。PostGIS支持所有的对象表达方法,比如WKT和WKB。
PostGIS支持所有的数据存取和构造方法,如GeomFromText()、AsBinary(),以及GeometryN()等。
PostGIS提供简单的空间分析函数(如Area和Length)同时也提供其他一些具有复杂分析功能的函数,比如Distance。
PostGIS提供了对于元数据的支持,如GEOMETRY_COLUMNS和SPATIAL_REF_SYS。同时,PostGIS也提供了相应的支持函数,如AddGeometryColumn和DropGeometryColumn。
PostGIS提供了一系列的二元谓词(如Contains、Within、Overlaps和Touches)用于检测空间对象之间的空间关系,同时返回布尔值来表征对象之间符合这个关系。
PostGIS提供了空间操作符(如Union和Difference)用于空间数据操作。
PostGIS 在对象关系型数据库 PostgreSQL 上增加了存储管理空间数据的能力,相当于 Oracle 的 spatial 部分。PostGIS 最大的特点是符合并且实现了 OpenGIS 的一些规范,是最著名的开源 GIS 数据库。
PostGIS 的版权被纳入到 GNU 的 GPL 中,也就是说任何人可以自由得到 PostGIS 的源码并对其做研究和改进。正是由于这一点,PostGIS 得到了迅速的发展,越来越多的爱好者和研究机构参与到 PostGIS 的应用开发和完善当中。
PostGIS 是由 Refractions Research Inc 开发的,Refractions 是一家 GIS 和数据库咨询公司,Refraction 公司最初是在 PostgreSQL 的基础上研究空间数据库的实 现,由于 PostgreSQL 所提供的空间数据类型和功能远远不能满足 GIS 的需求,研究工作经常陷入到进退维谷的境地,最终的结果往往是耗费了大量的人 力物力,而产品却极其复杂并且性能低下。这些原因直接或间接促成 PostGIS 项目的实施。
二、获取链接:链接:https://pan.baidu.com/s/1n9IODC0PJjAyFZ5nywnuvg
提取码:q10i