数据格式类型

每种类型的数据都由数据源和(一个或多个)层组成。这两个定义适用于mapserver和ogr。

Data Source -存储在公共存储库中的一组层。这可能是一个处理其中多个层的文件,也可能是一个包含多个文件的文件夹。

Layer -数据源的一个子集,通常包含一种矢量格式(点、线、多边形)的信息。

有三种类型的数据映射和GIS数据格式。每种类型的处理方式都不同。以下是类型和一些示例格式:

  • 基于文件-形状文件、MicroStation设计文件(DGN)、geotiff图像

  • 基于目录的-esri arcinfo coverages,美国人口普查老虎

  • 数据库连接-Postgis、ESRI ArcSDE、MySQL

基于文件的数据

基于文件的数据由存储在任意文件夹中的一个或多个文件组成。在许多情况下,使用单个文件(例如dgn),但esri shapefiles(例如)至少由3个文件组成,每个文件具有不同的文件扩展名:shp、dbf、shx。在这种情况下,所有3个文件都是必需的,因为它们各自在内部执行不同的任务。

文件名通常用作数据源名称,并包含文件名中可能明显或不明显的层。例如,在shapefiles中,每个shapefile有一个数据源,一个与该文件同名的层。

基于目录的数据

基于目录的数据由父文件夹中以特定方式存储的一个或多个文件组成。在某些情况下(如覆盖),它们可能还需要文件树中其他位置的其他文件夹才能访问。目录本身可能是数据源。目录中的不同文件通常表示可用的数据层。

例如,esri arcinfo coverages包含一个文件夹中多个具有ADF文件扩展名的文件。pal.adf文件表示多边形数据。arc.adf保存弧或线串数据。文件夹保存数据源,每个ADF文件都是一个层。

数据库连接

数据库连接在一个方面与基于文件和目录的结构非常相似:它们提供地理坐标数据供MapServer解释。这可能过于简单化了MapServer内部所发生的事情,但本质上,您所需要的就是访问构成向量数据集的坐标。

数据库连接提供临时存储(例如内存中)并由MapServer读取以创建地图的坐标数据流。可能还需要其他属性或表格数据,但本指南的重点是坐标数据。

必须区分数据库之间的一个重要区别。这里讨论的数据库是空间数据库,可以将地理数据保存在自己的数据类型中。这与严格的表格数据库不同,后者不能以同样的方式保存地理坐标。可以将一些非常简单的坐标数据存储在常规表中,但是除了最简单的使用之外,还需要一个空间数据库。许多数据库都有空间扩展(开源和商业)。其中一个最健壮的是PostGIS对PostgreSQL数据库的扩展。这个数据库不仅允许存储地理数据,还允许使用SQL命令操作这些数据。另一个具有空间功能的开源数据库是mysql。

到数据库的连接通常由以下连接信息组成:

Host -指向承载数据库的服务器或计算机的说明。

Database name -要访问的主机上运行的数据库的名称。

User name / passwords -访问权限通常由用户限制。

备注

一些数据库(例如Oracle)使用名称服务标识符,该标识符包括主机名和数据库名。

访问特定的坐标数据通常需要:

Table/View name -保存坐标数据的表或视图的名称。

Geographic column name -存储几何图形或坐标的位置。