Datasets ráster y catálogos de ráster de una geodatabase en PostgreSQL
Los datos ráster son datos espaciales representados en un conjunto de celdas del mismo tamaño colocadas en filas y columnas. Los datos ráster pueden estar formados por una o más bandas de ráster. Para obtener una explicación completa de los datos ráster y sus atributos, consulte el libro "Entender los datos ráster" que se encuentra en esta ayuda. Puede comenzar con el tema ¿Qué son los datos ráster?
Rásteres en ArcGIS Desktop
En ArcGIS, los datos ráster se pueden almacenar en un dataset ráster único, catálogo de ráster o dataset de mosaico. Para obtener una descripción de estos dos tipos de almacenamiento de ráster, consulte Organización de datos ráster.
En el árbol de catálogo, los datasets ráster individuales en PostgreSQL tienen el siguiente icono:
Un catálogo de ráster dentro del árbol de catálogo tiene el siguiente icono:
Los nombres de los catálogos de ráster y datasets ráster en PostgreSQL constan del nombre de la base de datos, el nombre del propietario del catálogo de ráster o del dataset ráster, y el nombre del catálogo de ráster o dataset ráster en sí.
Por ejemplo, un dataset ráster, qa_ras_seattle2, propiedad del usuario rocket, en la base de datos m8db podría aparecer como m8db.rocket.qa_ras_seattle2 en la jerarquía de catálogo.
Obtenga información sobre la manera en que se almacenan los datasets de mosaico en una geodatabase, vea Datasets de mosaico en la geodatabase en PostgreSQL.
Tablas ráster en una base de datos PostgreSQL
Las geodatabases de ArcSDE en una base de datos PostgreSQL pueden almacenar datos ráster tanto en la columna bytea nativa de PostgreSQL como en el tipo de almacenamiento ST_Raster.
Rásteres almacenados en bytea
Se agrega una columna ráster a una tabla de negocios y cada celda de la columna ráster contiene una referencia a un ráster almacenado en una tabla ráster independiente. Por tanto, cada fila de una tabla de negocios hace referencia a todo un ráster.
Cuando importa un ráster a una geodatabase de ArcSDE, se agrega una columna de ráster a la tabla de negocios que elija. Cada celda de la columna de ráster contiene una referencia a un ráster almacenado en otra tabla de ráster. Por tanto, cada fila de una tabla de negocios hace referencia a todo un ráster. ArcSDE restringe a una columna ráster por tabla de negocios.
Puede darle a la columna de ráster el nombre que desee, siempre que siga las convenciones de denominación de columnas de PostgreSQL.
Un dataset ráster está formado por cinco tablas: negocios, auxiliar, bloque, banda y ráster. A continuación se muestran las tablas del dataset ráster qa_ras_seattle2_xf.
Los números que se encuentran en las tablas sde_ras, sde_bnd, sde_aux y sde_blk se corresponden con el rastercolumn_id de la tabla sde_raster_columns.
La tabla de negocios
La tabla de negocios es una tabla de DBMS que almacena atributos y que se habilita espacialmente mediante la inclusión de una columna de ráster. Esta almacena la huella (delimita el área) del ráster. En el ejemplo anterior, la tabla de negocios es la tabla qa_ras_seattle2_xf.
Una tabla de negocios con una columna de ráster es un dataset ráster o un catálogo de ráster. Un dataset ráster puede tener solo una fila de tabla de negocios, mientras que un catálogo de ráster puede tener más. La tabla de sistema sde_raster_columns contiene información sobre la columna de ráster. La tabla de sistema sde_table_registry contiene información sobre todas las tablas de negocios, sin importar si tienen una columna espacial o una columna de ráster.
Tablas de imagen ráster
Estas tablas almacenan las imágenes ráster actuales.
Las tablas de ráster solo se encuentran en la base de datos si existen datos ráster en la geodatabase.
La tabla auxiliar ráster almacena el mapa de color de imagen, las estadísticas de imagen y la máscara de bit opcional, que se utiliza para realizar superposiciones y mosaicos.
ArcSDE almacena automáticamente todos los metadatos de imagen existentes, como estadísticas de imagen, mapas de color o máscaras de bit, en la tabla auxiliar ráster. La columna rasterband_id de la tabla auxiliar ráster es una referencia de clave externa a la clave principal de la tabla de bandas de ráster. Cuando se accede a los metadatos de una banda de ráster, ArcSDE une las dos tablas en esta referencia de clave externa o principal.
Nombre de campo |
Tipo de campo |
Descripción |
¿Nulo? |
---|---|---|---|
rasterband_id |
integer |
Un número que representa una banda de ráster; por ejemplo, un dataset ráster con dos bandas de ráster tendría dos valores diferentes en este campo: 1 y 2. |
NO NULO |
type |
integer |
Los valores incluyen |
NO NULO |
object |
bytea |
Contiene los datos reales, ya sea un índice de mapa de color, estadísticas de ráster o una transformación de coordenadas. |
NO NULO |
La tabla de bloques de ráster almacena los datos de imagen reales para cada banda de la imagen.
Esta tabla almacena los píxeles de cada banda de ráster. ArcSDE tesela los píxeles en bloques de acuerdo a la dimensión definida por el usuario. ArcSDE no cuenta con una dimensión predeterminada; sin embargo, las aplicaciones que almacenan datos ráster en geodatabases de ArcSDE sí la tienen. Las herramientas de geoprocesamiento y ArcCatalog, por ejemplo, utilizan dimensiones de bloques de ráster predeterminadas de 128 por 128 píxeles por bloque. Las dimensiones del bloque ráster, junto con el método de compresión, si se especifica alguno, determinan el tamaño de almacenamiento de cada bloque de ráster. Debe seleccionar las dimensiones de bloque ráster que, combinadas con el método de compresión, permiten que las filas de la tabla de bloques de ráster entren en el DBMS.
La tabla de bloques de ráster contiene la columna RASTERBAND_ID, que es una referencia de clave externa a la clave principal RASTERBAND_ID de la tabla de bandas de ráster. Cuando se accede a los bloques de las bandas de ráster, estas tablas se unen en la referencia de clave externa o principal.
La tabla de bloques de ráster se completa de acuerdo a una pirámide de resolución descendente. La altura de la pirámide se determina por la cantidad de niveles especificados por la aplicación. La última, al igual que las herramientas de geoprocesamiento o ArcCatalog, puede permitir definir los niveles, solicitar que ArcSDE los calcule o ambas. La pirámide comienza desde la base, o nivel 0, que contiene los píxeles originales de la imagen. Luego continúa en dirección a la cúspide uniendo cuatro píxeles del nivel anterior para formar un solo píxel en el nivel actual. Este proceso continua hasta que ArcSDE alcanza la cúspide, que puede definirse automáticamente o por el usuario.
Los niveles adicionales de la pirámide aumentan la cantidad de bloques de ráster hasta un tercio más. Sin embargo, ya que se puede especificar la cantidad de niveles, es posible que el tamaño de la pirámide sea menor. El primer nivel de la pirámide es el 25 por ciento de la base. También debe tener en cuenta que el primer nivel puede saltearse, lo cual puede reducir en gran medida el tamaño de la pirámide.
Al crear una pirámide, se generan más rásteres mediante el submuestreo progresivo del nivel anterior en un factor de dos hasta la cúspide. A medida que la aplicación se aleja y las celdas ráster se hacen más pequeñas que el umbral de resolución, ArcSDE selecciona un nivel más alto en la pirámide. El propósito de la pirámide es optimizar el rendimiento de visualización.
Nombre de campo |
Tipo de campo |
Descripción |
¿Nulo? |
---|---|---|---|
rasterband_id |
integer |
Un número que representa una banda de ráster; por ejemplo, un dataset ráster con dos bandas de ráster tendría dos valores diferentes en este campo: 1 y 2. |
NO NULO |
rrd_factor |
integer |
Nivel de pirámide; los niveles de pirámide comienzan en 0 y pueden aumentar a partir de allí. |
NO NULO |
row_nbr |
integer |
Posición de número de fila de tesela |
NO NULO |
col_nbr |
integer |
Posición de número de fila de columna |
NO NULO |
block_data |
bytea |
Datos de píxel almacenados en la tesela |
NO NULO |
La tabla de bandas de ráster almacena información sobre las bandas de las imágenes. Existe un registro para cada banda de ráster.
Las geodatabases de ArcSDE almacenan bandas de ráster en la tabla correspondiente a estas. ArcSDE une la tabla de bandas de ráster con la tabla de ráster en la columna RASTER_ID. El RASTER_ID de la columna de la tabla de bandas de ráster es una referencia de clave externa a la clave principal de la tabla de ráster.
Nombre de campo |
Tipo de campo |
Descripción |
¿Nulo? |
---|---|---|---|
rasterband_id |
integer |
Un número que representa una banda de ráster; por ejemplo, un dataset ráster con dos bandas de ráster tendría dos valores diferentes en este campo: 1 y 2. |
NO NULO |
sequence_nbr |
integer |
Secuencia de la banda de ráster dentro del dataset ráster |
NO NULO |
raster_id |
integer |
El identificador único del dataset ráster; corresponde al valor en la columna de ráster de la tabla de negocios |
NO NULO |
name |
varchar(65) |
Nombre de banda de ráster opcional |
|
band_flags |
integer |
Una máscara de bits que contiene propiedades acerca de la banda |
NO NULO |
band_width |
integer |
El ancho de píxel de la banda |
NO NULO |
band_height |
integer |
La altura de píxel de la banda |
NO NULO |
band_types |
integer |
Una máscara de bits que contiene propiedades acerca de la banda |
NO NULO |
block_width |
integer |
El ancho de píxel de un bloque |
NO NULO |
block_height |
integer |
La altura de píxel de un bloque |
NO NULO |
block_origin_x |
precisión doble |
Coordenada x del origen de ráster |
NO NULO |
block_origin_y |
precisión doble |
Coordenada y del origen de ráster. |
NO NULO |
eminx |
precisión doble |
Valor x mínimo de una banda de ráster |
NO NULO |
eminy |
precisión doble |
Valor y mínimo de una banda de ráster |
NO NULO |
emaxx |
precisión doble |
Valor y máximo en una banda de ráster |
NO NULO |
emaxy |
precisión doble |
Valor y máximo en una banda de ráster |
NO NULO |
cdate |
integer |
La fecha de creación de la banda de ráster |
NO NULO |
mdate |
integer |
La fecha de la última modificación de la banda de ráster |
NO NULO |
La tabla de descripción de ráster almacena la descripción de las imágenes dentro de una columna de ráster.
Nombre de campo |
Tipo de campo |
Descripción |
¿Nulo? |
---|---|---|---|
raster_id |
integer |
El identificador único del dataset ráster; corresponde al valor en la columna de ráster de la tabla de negocios |
NO NULO |
raster_flags |
integer |
Reservado para uso futuro |
|
description |
varchar(65) |
La descripción del dataset ráster |
Otras tablas del sistema para hacer el seguimiento de los rásteres
Al igual que otros tipos de datos, los catálogos de ráster y datasets ráster se rastrean en las tablas gdb_items y sde_layers. Las columnas de tipo de ráster se rastrean en la tabla sde_raster_columns. Existe una entrada para todas las tablas que contienen una columna de ráster.
Puede haber tablas de atributos adicionales como parte del dataset ráster o del catálogo de ráster. Solo habrá una tabla de atributos de ráster por dataset ráster. Sin embargo, los catálogos de ráster pueden contener varias tablas de este tipo. Las tablas de atributos de ráster se utilizan para definir los atributos de determinados valores de celdas ráster. Para obtener más información sobre el uso de estas tablas, consulte el tema Tablas de atributos de datasets ráster.
Puede utilizar la herramienta Construir atributos de ráster del conjunto de herramientas Propiedades de ráster que se encuentra en el conjunto Ráster de la caja de herramientas Administración de datos. Para obtener detalles sobre esta herramienta, consulte el tema Construir tabla de atributos ráster (Administración de datos).
Para datasets ráster, las tablas de atributos adicionales se nombran con el formato sde_vat_<raster_column_ID>. Para catálogos ráster, el nombre de tabla está en el formato sde_vat_<raster_column_ID>_<Object_ID>.
View a diagram of a raster dataset using bytea storage in PostgreSQL.
Las líneas discontinuas indican relaciones implícitas entre las columnas.
Necesita Adobe Acrobat Reader para abrir el archivo.
Rásteres almacenados en formato ST_Raster
ST_Raster es un tipo de objeto definido por el usuario que consta de subtipos. Un dataset ráster que utiliza almacenamiento ST_Raster está formado por tres tablas: la tabla de negocios, la tabla auxiliar y las tablas de bloque. Cuando se utiliza el almacenamiento ST_Raster en una geodatabase, la información equivalente que se almacenaría en las tablas de banda de ráster y ráster para rásteres binarios forma parte del objeto ST_Raster en la tabla base. El objeto ST_Raster también almacena la geometría para el ráster.
Los rásteres almacenados en el formato ST_Raster tienen tablas auxiliar (sde_aux_<raster_ID>) y de bloque (sde_blk_<raster_ID>) (consulte la sección de este tema "Tablas de imagen ráster"), pero no utilizan las tablas de banda de ráster (sde_bnd_<raster_ID>) ni ráster (sde_ras_<raster_ID>)
View a diagram of a raster dataset using ST_Raster storage in PostgreSQL.
Las líneas discontinuas indican relaciones implícitas entre las columnas.
Necesita Adobe Acrobat Reader para abrir el archivo.
Rásteres en un documento del espacio de trabajo XML
Los datasets ráster están encerrados en etiquetas DataElement dentro de un documento XML. Estas etiquetas tienen el valor "esri:DERasterDataset".
<DataElement xsi:type="esri:DERasterDataset"> <CatalogPath>/V=sde.DEFAULT/RD=m8db.rocket.qa_ras_seattle2_xf</CatalogPath> <Name>m8db.rocket.qa_ras_seattle2_xf</Name> <Children xsi:type="esri:ArrayOfDataElement"> <DataElement xsi:type="esri:DERasterBand"> <CatalogPath>/V=sde.DEFAULT/RD=m8db.rocket.qa_ras_seattle2_xf/RB=Band_1</CatalogPath> <Name>Band_1</Name> <DatasetType>esriDTRasterBand</DatasetType> <DSID>-1</DSID> <Versioned>false</Versioned> <CanVersion>false</CanVersion> <HasOID>true</HasOID> <OIDFieldName>ObjectID</OIDFieldName> <Fields xsi:type="esri:Fields"> <FieldArray xsi:type="esri:ArrayOfField"> <Field xsi:type="esri:Field"> <Name>ObjectID</Name> <Type>esriFieldTypeOID</Type> <IsNullable>false</IsNullable> <Length>4</Length> <Precision>0</Precision> <Scale>0</Scale> <Required>true</Required> <Editable>false</Editable> </Field> <Field xsi:type="esri:Field"> <Name>Value</Name> <Type>esriFieldTypeInteger</Type> <IsNullable>true</IsNullable> <Length>0</Length> <Precision>0</Precision> <Scale>0</Scale> </Field> <Field xsi:type="esri:Field"> <Name>Count</Name> <Type>esriFieldTypeInteger</Type> <IsNullable>true</IsNullable> <Length>0</Length> <Precision>0</Precision> <Scale>0</Scale> </Field> </FieldArray> </Fields> <Indexes xsi:type="esri:Indexes"> <IndexArray xsi:type="esri:ArrayOfIndex" /> </Indexes> <IsInteger>true</IsInteger> <MeanCellHeight>0.175996089009095</MeanCellHeight> <MeanCellWidth>0.176000337991447</MeanCellWidth> <Height>1024</Height> <Width>2048</Width> <PixelType>U8</PixelType> <PrimaryField>1</PrimaryField> <TableType>esriRasterTableValue</TableType> <Extent xsi:type="esri:EnvelopeN"> <XMin>-179.906382261841</XMin> <YMin>-90.1303147686327</YMin> <XMax>180.542309944643</XMax> <YMax>90.089680376681</YMax> <SpatialReference xsi:type="esri:GeographicCoordinateSystem"> <WKT>GEOGCS["GCS_WGS_1984", DATUM["D_WGS_1984", SPHEROID["WGS_1984",6378137.0,298.257223563]], PRIMEM["Greenwich",0.0], UNIT["Degree",0.0174532925199433]]</WKT> <XOrigin>-400</XOrigin> <YOrigin>-400</YOrigin> <XYScale>11258999068426.2</XYScale> <ZOrigin>0</ZOrigin> <ZScale>1</ZScale> <MOrigin>0</MOrigin> <MScale>1</MScale> <XYTolerance>8.98315284119521E-09</XYTolerance> <ZTolerance>2</ZTolerance> <MTolerance>2</MTolerance> <HighPrecision>true</HighPrecision> <LeftLongitude>-180</LeftLongitude> </SpatialReference> </Extent> </DataElement>