2.2 SDO_RASTERオブジェクト型およびラスター・データ表
GeoRasterオブジェクト・リレーショナル・モデルでは、ラスター・データ表(RDT)使用して、ラスター・イメージ内のすべてのセル・データが格納されます。
GeoRasterオブジェクトのセル・データはブロック化され、各ブロックは1つの行としてRDTに格納されます。この表はSDO_GEORASTERオブジェクトのrasterDataTable
属性で指定します(「rasterDataTable属性」を参照)。セル・データを格納する前にRDTを作成する必要があります。
RDTは、SDO_RASTERオブジェクト型の表として、または含まれるすべての列がオブジェクト型SDO_RASTERによって定義されているリレーショナル表として定義されたオブジェクト表です。RDTの名前は、「ラスター・データ表」での説明のとおり、データベース内で一意である必要があります。
SDO_RASTERオブジェクト型の定義は次のとおりです。
CREATE TYPE sdo_raster AS OBJECT ( rasterID NUMBER, pyramidLevel NUMBER, bandBlockNumber NUMBER, rowBlockNumber NUMBER, columnBlockNumber NUMBER, blockMBR SDO_GEOMETRY, rasterBlock BLOB);
この項では、各SDO_RASTER属性の意味について説明します。
- rasterID属性
- pyramidLevel属性
- bandBlockNumber属性
- rowBlockNumber属性
- columnBlockNumber属性
- blockMBR属性
- rasterBlock属性
親トピック: GeoRasterのデータ型および関連構造
2.2.1 rasterID属性
SDO_RASTERオブジェクトのrasterID
属性には、関連付けられたSDO_GEORASTERオブジェクトのrasterID
の値と一致する数値を指定する必要があります。(SDO_GEORASTERオブジェクトのrasterID
属性については、「rasterID属性」を参照してください。)これらの数値が一致することによって、特定のGeoRasterオブジェクトに属しているラスター・ブロックが識別されます。
2.2.2 pyramidLevel属性
pyramidLevel
属性は、セルの特定のブロックのピラミッド・レベルを識別します。ピラミッド・レベルには、0(ゼロ)または任意の正の整数を指定します。ピラミッド・レベルは、必要な記憶域が小さい低解像度のイメージを作成するために使用されます。値が0 (ゼロ)のピラミッド・レベルは、元のラスター・データを示します(この場合、イメージの解像度は低下せず、必要な記憶域は変化しません)。値が0 (ゼロ)より大きくなるほど、イメージの解像度のレベルが低くなり、必要な記憶域が小さくなります。ピラミッドの詳細は、「ピラミッド」を参照してください。
この属性とbandBlockNumber
属性(「bandBlockNumber属性」を参照)は、ビットマップ・マスクおよびビットマップ・マスク・ピラミッドの指定にも使用します。ビットマップ・マスク、ビットマップ・マスク・ピラミッド、およびpyramidLevel
属性とbandBlockNumber
属性の使用方法は、「ビットマップ・マスク」を参照してください。
2.2.3 bandBlockNumber属性
bandBlockNumber
属性は、バンド次元でのブロック番号を識別します。バンドとレイヤーの詳細は、「バンド、レイヤーおよびメタデータ」を参照してください。ビットマップ・マスクおよびビットマップ・マスク・ピラミッドでのbandBlockNumber
属性の使用方法は、「ビットマップ・マスク」を参照してください。
2.2.6 blockMBR属性
blockMBR
属性は、特定のブロックの最小境界矩形(MBR)の(SDO_GEOMETRY型の)ジオメトリです。ジオメトリはセル空間に存在し(SRID値はNULL)、すべての座標は整数になります。座標は、このブロックに格納された最小行と最小列、および最大行と最大列を表します。