Netezza 和 ArcGIS
如果您正在使用 Netezza 数据仓库设备,则可从 ArcGIS 连接至数据库以对数据子集执行复杂的空间分析。
要在 ArcGIS 中使用 Netezza,必须在数据库管理系统中安装受支持版本的 Netezza Spatial Cartridge,并在 ArcGIS 客户端计算机上安装和配置 Netezza ODBC 驱动程序,以便从客户端计算机建立数据库连接。

在 Windows 上设置 ODBC 数据源名称时,请确保选择了用于优化 ASCII 字符集的选项。在 Linux 上设置 ODBC 数据源名称时,将 CharacterTranslationOption 设置为 latin9,并将 UnicodeTranslationOption 设置为 utf16。
处理数据
在大多数情况下,您将在数据仓库设备中存储大量数据。要从 ArcGIS 执行分析,您将使用一个仅包含有兴趣对其进行分析的数据的子集。您可以在查询图层定义中定义此子集,也可以创建一个只返回数据子集的数据库视图。
如果要使用查询图层定义,请在 ArcMap 中创建定义文件。单击文件 > 添加数据 > 添加查询图层,可打开新建查询图层 对话框,连接至数据库,然后键入 SQL 语句定义数据子集。

如何尚未定义数据子集,请不要将数据直接从 ArcMap 的目录 窗口中的数据库连接拖到地图中。正常存储在数据仓库设备中的超大型数据集需要耗费很长时间才能显示在地图上。
如果要使用数据库视图,您可以使用创建数据库视图地理处理工具或 SQL 定义要分析的数据子集。
ArcGIS 中使用的 Netezza 数据指南
在使用 Netezza 方面针对 ArcGIS 的唯一限制是表中的空间列名称或别名必须为 shape。Netezza 空间列目前使用 VARCHAR 数据类型,因此,通过该列的名称或别名,ArcGIS 可识别出该列所存储的是空间数据而非文本。
作为 Netezza 用户,我们知道 Netezza 空间存储的是简单数据。因此,您无法将非简单数据从其他数据库粘贴至 Netezza 中。
为帮助计算行的大小,下表列出了您通过 ArcGIS 在 Netezza 中创建表或要素类时所创建的 Netezza 数据类型:
ArcGIS 字段类型 | 所创建的 Netezza 数据类型 | 磁盘空间使用率 |
---|---|---|
DATE | timestamp | 8 字节 |
DOUBLE | numeric(p,s) 默认情况下,p(精度)= 38 且 s(比例)= 8 | 精度小于等于 9 = 4 字节 精度为 10-18 = 8 字节 精度为 19-38 = 16 字节 |
FLOAT | 如果指定的精度小于等于 6,将创建 numeric(p,s)。如果指定的精度为 7-15,将创建双精度。 | 数字 = 4 字节 双精度 = 8 字节 |
GEOMETRY | 变量长度、字符有所不同(最多为 64,000) | 作为字符创建的点几何有所不同 (80)。 所有其他几何的基本大小均为 64,000 字节。但是,如果创建如此大小的几何会导致行的总大小超过 65,535 字节,则将使用更小的精度创建几何字段。 例如,如果行中所有其他字段的总大小为 2,000 字节,则将作为字符创建的几何字段会有所不同 (63,535)。 |
GUID | 固定长度字符 (38) | 40 字节 |
LONG INTEGER | 如果比例大于 0,将创建 numeric(p,s)。如果比例为 0,将创建整数。 | 整数 = 4 字节 numeric 的精度小于等于 9 = 4 字节 numeric 的精度为 10-18 = 8 字节 numeric 的精度为 19-38 = 16 字节 |
OBJECTID | 整型 | 4 字节 |
SHORT INTEGER | smallint | 2 字节 |
TEXT | 变量长度,Unicode(p) 其中 p 表示针对 TEXT 字段指定的字段长度。默认值为 50。 | p x 4 = 使用的字节数量 |