Home    |    Concepts   |   API   |   Samples
Concepts > Rasters
Raster database schema

In ArcSDE, rasters are stored in a series of business and user tables. When a raster is inserted into ArcSDE, ArcSDE adds a record to the Raster_Columns system table and also creates four system tables to store the raster images and metadata associated with each one. These tables are managed by ArcSDE and should not be directly modified by the user.

The following is the database schema used by ArcSDE for storing a raster object and its information in a database.

Database
Schema
Diagram

 

When a raster is imported into a DBMS, ArcSDE adds a raster column to the business table. The raster column can be given any name, as long as it conforms to the underlying DBMS column naming convention. ArcSDE restricts one raster column per business table.

The raster column is a foreign key reference to the raster_id column of the Raster table created during the addition of the raster column. Also joined to the raster table's raster_id primary key is the Raster Bands table, which stores the bands of the image. The Raster Auxiliary table joins one-to-one to the raster bands table by rasterband_id and stores the metadata of each raster band. The rasterbands_id also joins the Raster Band table to the Raster Blocks table in a many-to-one relationship. The Raster Blocks table rows store blocks of pixels, determined by the dimensions of the block.

The two metadata tables are used to store information about a raster and a raster band, such as the image dimensions and the pixel depth. The auxiliary table is used to save additional information about a raster band such as a color map and raster statistics. The block table is where the actual pixel blocks are stored.

Contains user's raster object and is stored in the user's schema. Example columns are shown here.

Name Data Null? Description
house_id INT32 NOT NULL The table's primary key
house_footprint INT32 NOT NULL A spatial column and foreign key reference to a feature table containing the house footprints
house_picture INT32 NOT NULL A raster column and foreign key reference to a raster table containing the images of the rooms located in the house
Contains reference to raster data in the band, block, and auxiliary tables. This table is an ArcSDE system table, owned by the ArcSDE administrator.


Name Data Null? Description
rastercolumn_id SE_INTEGER_TYPE NOT NULL The primary key of the raster column table
description SE_STRING_TYPE(65) NULL The description of the raster table
database_name SE_INTEGER_TYPE(32) NULL The database that stores the table (Field is always NULL for Oracle)
owner SE_STRING_TYPE(32) NOT NULL The owner of the raster column's business table
table_name SE_STRING_TYPE( 160 in Oracle; 128 in all other DBMSs) NOT NULL The business table name
raster_column SE_STRING_TYPE(32 in Oracle and SQL Server; 128 in all other DBMSs) NOT NULL The raster column name
cdate SE_DATE_TYPE NOT NULL The date the raster column was added to the business table
config_keyword SE_STRING_TYPE(32) NULL The DBTUNE configuration keyword whose storage parameters determine how the tables and indexes of the raster are stored in the database. For more information, see the ArcGIS Server or ArcGIS Desktop help topic DBTUNE configuration keywords.
minimum_id SE_INTEGER_TYPE NULL Defined during the creation of the raster, establishes value of the raster table's raster_id column

Contains metadata table for raster

Name Data Null? Description
raster_id SE_INTEGER_TYPE NOT NULL The primary key of the raster table and unique sequential identifier of each image stored in the raster table
raster_flags SE_INTEGER_TYPE NOT NULL A bit map set according to the characteristics of stored image
description SE_STRING_TYPE(65) NULL A text description of the image
Contains band metadata for the raster

 
Name Data Null? Description
rasterband_id SE_INTEGER_TYPE NOT NULL The primary key of the raster band table that uniquely identifies each raster band
sequence_nbr SE_INTEGER_TYPE NOT NULL An optional sequential number that can be combined with the raster_id as a composite key as a second way to uniquely identify the raster band
raster_id SE_INTEGER_TYPE NOT NULL The foreign key reference to the raster tables primary key

Uniquely identifies the raster band when combined with the sequence_nbr as a composite key

name SE_STRING_TYPE(65) NULL The name of the raster band
band_flags SE_INTEGER_TYPE NOT NULL A bit map set according to the characteristics of the raster band
band_width SE_INTEGER_TYPE NOT NULL The pixel width of the band
band_height SE_INTEGER_TYPE NOT NULL The pixel height of the band
band_types SE_INTEGER_TYPE NOT NULL A bitmap band compression data
block_width SE_INTEGER_TYPE NOT NULL The pixel width of the band's tiles
block_height SE_INTEGER_TYPE NOT NULL The pixel height of the band's tiles
block_origin_x SE_FLOAT_TYPE NOT NULL The left-most pixel
block_origin_y SE_FLOAT_TYPE NOT NULL The bottom-most pixel
eminx (optional) SE_FLOAT_TYPE NOT NULL The band's minimum X-coordinate
eminy (optional) SE_FLOAT_TYPE NOT NULL The band's minimum Y-coordinate
emaxx (optional) SE_FLOAT_TYPE NOT NULL The band's maximum X-coordinate
emaxy (optional) SE_FLOAT_TYPE NOT NULL The band's maximum Y-coordinate
cdate (optional) SE_DATE_TYPE NOT NULL The creation date
mdate (optional) SE_DATE_TYPE NOT NULL The last modification date
Contains statistics and colormap info for a raster

Name Data Null? Description
rasterband_id SE_INTEGER_TYPE NOT NULL The foreign key reference to the raster band table's primary key
type SE_INTEGER_TYPE NOT NULL A bit map set according to the characteristics of data stored in the object column.
object SE_BLOB_TYPE NOT NULL May contain such things as the image color map and image statistics.
Contains pixel data

Name Data Null? Description
rasterband_id SE_INTEGER_TYPE NOT NULL The foreign key reference to the raster band tables primary key
rrd_factor SE_INTEGER_TYPE NOT NULL The reduced resolution dataset factor, determines the position of the raster band block within the resolution pyramid

The resolution pyramid begins at 0 for the highest resolution and increases until the raster bands' lowest resolution level has been reached

row_nbr SE_INTEGER_TYPE NOT NULL The block's row number
col_nbr SE_INTEGER_TYPE NOT NULL The block's column number
block_data SE_BLOB_TYPE NOT NULL The block's tile of pixel data
feedback | privacy | legal