Netezza と ArcGIS
Netezza データ ウェアハウス アプライアンスを使用している場合、ArcGIS からデータベースに接続して、データのサブセットに複雑な空間分析を実行できます。
ArcGIS で Netezza を使用するには、サポートされているバージョンの Netezza Spatial Package をデータベース管理システムにインストールし、データベース接続を行う ArcGIS クライアント コンピュータに Netezza ODBC ドライバをインストールおよび設定する必要があります。サポートされる Netezza データ ウェアハウス、空間パッケージ、およびODBC ドライバの一覧については、「ArcGIS の IBM Netezza データ ウェアハウス アプライアンス要件」をご参照ください。
データの操作
多くの場合、データ ウェアハウス アプライアンスには大量のデータがあります。ArcGIS から分析を実行するには、分析対象のデータのみを含むサブセットを使用します。そのサブセットをクエリ レイヤの定義として定義するか、またはデータのサブセットのみを返すデータベース ビューを作成することができます。
クエリ レイヤの定義を使用する場合、ArcMap で定義ファイルを作成します。[ファイル] → [データの追加] → [クエリ レイヤの追加] の順にクリックして、[新規クエリ レイヤ] ダイアログ ボックスを開き、データベースに接続してから、SQL ステートメントを入力し、データのサブセットを定義します。
まだデータのサブセットを定義していない場合は、ArcMap のカタログ ウィンドウのデータベース コネクションからマップへ直接データをドラッグしないでください。データ ウェアハウス アプライアンスに保存されているような非常に大きなデータセットは、マップに表示されるのに非常に長い時間がかかるためです。
データベース ビューを使用する場合、[データベース ビューの作成(Create Database View)] ジオプロセシング ツールを使用するか、または SQL を使用して、分析するデ。ータのサブセットを定義できます。
ArcGIS で使用される Netezza データのガイドライン
Netezza を使用する場合には、ArcGIS 固有の制限が 2 つあります。
- 従来の Netezza 空間タイプを使用する場合、テーブル内の空間列に「shape」という名前を付けるか、「shape」というエイリアスを作成する必要があります。
従来の空間タイプは VARCHAR データ タイプを使用します。したがって、「shape」列名またはエイリアスは、列がテキストではなく空間データを格納することを ArcGIS がどのように特定するかを示します。
- ArcGIS には、マップのフィーチャをレンダリングする一意の ID フィールドが必要です。マップに空間テーブルを追加するとき、この一意の ID フィールドを指定するよう求められます。
ArcGIS ツールは、データベースの一意の ID フィールドに新しい値を挿入しません。フィールドに値を挿入するには、データベースを使用します。Netezza は、データ タイプも、ID フィールドに値を入力するための組み込み機能も持たないため、データベース テーブルの新しい行を作成する ArcGIS ツールは、Netezza で使用できません。
もう 1 つの制限は、Netezza 自体に関連することです。Netezza ユーザには、Netezza Spatial にはシンプル データが格納されていることがわかっています。したがって、別のデータベースから Netezza にシンプル データ以外のデータを貼り付けることはできません。
また、Netezza ユーザは、行の合計サイズが 65,535 バイトに制限されていることを知っています。行サイズの計算に役立つように、以下の表で、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 の桁数を指定すると、double が作成されます。 |
numeric = 4 バイト double = 8 バイト |
GEOMETRY |
従来の Netezza Spatial Package を使用する場合、可変長 character(最大 64,000)の列が作成されます。 Netezza Spatial Esri Package を使用する場合、ST_Geometry 列が作成されます。 |
従来の Netezza Spatial Package の場合:
Netezza Spatial Esri Package の場合:
注意: フィーチャクラスにデータを挿入したときに、個々のジオメトリのサイズがフィールドのサイズを超えた場合、NULL ジオメトリが挿入されます。 たとえば、別のデータ ソースからポリゴン フィーチャクラスをコピーし、それを Netezza データベースに貼り付けた場合、ジオメトリ フィールド(最大 64,000 バイト)を含むテーブルが作成されます。次に、テーブルにレコードを挿入します。挿入されるジオメトリが 64,000 バイトを超えている場合、そのレコードと他のすべての属性は挿入されますが、ジオメトリ フィールドに NULL が挿入されます。 |
GUID |
固定長 character(38) |
40 バイト |
LONG INTEGER |
小数点以下桁数が 0 より大きい場合、numeric(p,s) が作成されます。小数点以下桁数が 0 の場合、integer が作成されます。 |
integer = 4 バイト 桁数が 9 以下の numeric = 4 バイト 桁数が 10 ~ 18 の numeric = 8 バイト 桁数が 19 ~ 38 の numeric = 16 バイト |
OBJECTID |
integer |
4 バイト |
SHORT INTEGER |
smallint |
2 バイト |
TEXT |
可変長 Unicode(p) P は、TEXT フィールドに指定するフィールド長です。デフォルト値は 50 です。 |
p x 4 = 使用されるバイト数 |