Post on 18-Apr-2015
transcript
Tema 6: Bases de datos geográficas
Bases de datos
Máster en Tecnologías de Información Geográfica
Contenido
1. Introducción2. Sistemas de geodatabases: ArcGIS3. ArcSDE4. Diseño de geodatabases5. Consulta y modificación de datos con SQL6. Administración de geodatabases7. ArcGIS Server8. Aplicaciones Web9. Esquema XML de la geodatabase
3
1. Introducción
Bases de datos geográficas (geodatabases)
¿Qué es la geodatabase? Una geodatabase es una colección de
datasets de diversos tipos que se utiliza en ArcGIS y se administra en una carpeta de archivos o una base de datos relacional.
Es la fuente de datos nativa para ArcGIS y se utiliza para la edición y automatización de datos en ArcGIS.
4
GDBs como BDRs
Las geodatabases heredan los principios de las BDRs: Datos organizados en tablas. Tablas con filas. Filas con el mismo número de columnas. Cada columna con un tipo asociado. Las relaciones asocian filas entre tablas. Se imponen reglas de integridad relacional.
Si una GDB se implementa en un SGBDR:
SQL está disponible para operar sobre las tablas.
5
2. Sistemas de geodatabases: ArcGIS
6
Otros sistemas de geodatabases
Otros sistemas comerciales: Autodesk: Map 3D,
Topobase, MapGuide para AutoCAD software package.
Bentley Systems: Bentley Map, Bentley PowerMap para MicroStation.
ERDAS IMAGINE: Leica Photogrammetry Suite, ERDAS ER Mapper, ERDAS ECW JPEG2000 SDK (formato de archivo ECW).
Intergraph: GeoMedia. MapInfo: MapInfo
Professional, Smallworld
Y también open-source: GRASS GIS –U.S. Army
Corps of Engineers SAGA GIS. Quantum GIS. MapWindow GIS. ILWIS – ILWIS (Integrated
Land and Water Information System)
gvSIG –Java. JUMP GIS / OpenJUMP
7
Geodatabases de archivosCada geodatabase se guarda en una carpeta de archivos y cada dataset se almacena como un archivo independiente en el disco. Las geodatabases de archivo proporcionan un rendimiento rápido y pueden escalar hasta archivos de gran tamaño (por ejemplo, cada dataset puede tener un tamaño de hasta un terabyte).
Geodatabases personalesLas geodatabases personales se almacenan y administran con Microsoft Access. Están ideadas para un único usuario que trabaje con datasets más pequeños y tienen una limitación de tamaño de 2 GB para la geodatabase completa. Las geodatabases personales sólo son compatibles con Microsoft Windows.
Geodatabases de ArcSDE
ArcGIS: Tipos de geodatabases
Las geodatabases de ArcSDE administran datos espaciales en un RDBMS como DB2, Informix, Oracle, SQL Server, PostgreSQL y SQL Server Express. Las geodatabases de ArcSDE admiten entornos de edición multiusuario y pueden administrar datasets de muy gran tamaño. Además, admiten flujos de trabajo basados en versiones como replicación y archivado de geodatabases.
8
ArcGIS: Tipos de geodatabases
Tipo de geodatabase Método de almacenamiento de datos
Personal geodatabase Microsoft Access
Geodatabase en archivos Carpeta del SO con archivos
ArcSDE para SQL Server Express Microsoft SQL Server Express Edition
ArcSDE Soporte de geodatabases en ArcGIS Server en nivel empresarial (Enterprise).
IBM DB2—Enterprise Server Edition IBM Informix Dynamic Server—
Workgroup o Enterprise Edition Oracle—Standard One, Standard o
Enterprise Edition. PostgreSQL Microsoft SQL Server—Workgroup,
Standard o Enterprise Edition
9
Características de los distintos tipos de geodatabases
10
Ventajas de las GDB de archivo
Alto rendimiento. Menor demanda de almacenamiento que Access o un
shapefile. Gestión simplificada
Los bloqueos se imponen en los feature dataset o feature classes.
Formato comprimido: Niveles:
Feature class Feature dataset GDB
Sólo lectura Niveles de compresión de 2:1 a 25:1 Visualización y consulta varias veces más rápido que Access
11
Elementos en una GDB
12
Almacenamiento en una GDB
Feature class: Tabla con shape y atributos para features geométricas
sencillas. Contiene referencia espacial
Feature dataset: Almacena feature classes relacionadas espacialmente. Requerida para ciertos comportamientos (behaviours)
Tabla: Almacena atributos, pero no geometrías
(RDBs). Datos raster
Imágenes en distintos formatos.
13
Tipos de datos y MS Access
Tipo de datos de ArcGIS
Tipo de datos de Access
Notas
OBJECTID Long Integer OBJECTID es un campo AutoNumber.
SHORT INTEGER Integer
LONG INTEGER Long Integer
FLOAT Single
DOUBLE Double
TEXT Text
DATE Date/Time
BLOB OLE Object*
GUID Number Replication ID, con duplicados
GEOMETRY OLE Object*
RASTER Long Integer
14
Tipos de datos y SQL Server
Tipo de datos de ArcGIS Tipo de datos de SQL Server Notas
TEXT CHAR or VARCHAR Used for nonUnicode text, up to 8,000 characters
TEXT NCHAR or NVARCHAR Used for Unicode text, up to 4,000 characters
SHORT INTEGER SMALLINT
LONG INTEGER INTEGER
na BIGINT or NUMERIC (precision < 19, scale = 0)
The server configuration parameter INT64TYPES must be TRUE to create columns with this data type.
na NUMERIC (precision < 7, scale > 0)
na NUMERIC (precision > = 7, scale > 0)
DATE DATETIME
GUID UNIQUEIDENTIFIER
BLOB VARBINARY(MAX)
GEOMETRY INTEGER, GEOMETRY, or GEOGRAPHY
SQL Server data type depends on the geometry storage specified for the layer. Compressed binary or well-known binary = NUMBER(38); Microsoft SQL Server Geometry = GEOMETRY; Microsoft SQL Server Geography = GEOGRAHY.
na SDE_XML or XML XML columns are not exposed in ArcGIS Desktop.
RASTER VARBINARY(MAX) or ST_RASTER SQL Server data type depends on the raster storage specified in the DBTUNE table.
OBJECTID INT(4)
FLOAT REAL
DOUBLE DOUBLE If scale is set to greater than 0 in ArcGIS, the SQL Server data type will be NUMERIC.
TEXT VARCHAR(MAX) Used for nonUnicode text of 8,000 characters or more
TEXT NVARCHAR(MAX) Used for Unicode text of 4,000 characters or more
15
3. ArcSDE
16
Transacciones de geodatabase
Soporte para geodatabases de gran tamaño para un gran número de usuarios.
Administrar actualizaciones procedentes de varios editores a la vez.
Comprobar datos de un área y realizar actualizaciones en réplicas desconectadas. De forma periódica, las ediciones se contabilizan en la geodatabase principal.
Sincronizar varias réplicas de geodatabase distribuidas compartiendo actualizaciones de un solo cambio entre réplicas. Pueden encontrarse en distintos DBMS (como Oracle y SQL Server) y no es necesario conectarlas.
Crear y mantener archivos históricos, por ejemplo, para mostrar el estado de un conjunto de datos para una fecha determinada.
17
Versionado (Versioning)
El versionado permite que varios usuarios editen los mismos datos en una geodatabase de ArcSDE sin aplicar bloqueos o duplicar datos.
Los usuarios siempre acceden a una geodatabase de ArcSDE mediante una versión. Cuando se conecta a una geodatabase multiusuario, especifica la versión a la que se conectará. Por defecto, se conectará a la versión DEFAULT.
18
Ejemplo
19
Réplicas (Replication)
•Distribución de datos entre dos o más geodatabases.•Permite que dos o más grupos de usuarios trabajen en los mismos datos en ubicaciones separadas.•Los datos se distribuyen para mejorar la disponibilidad y el rendimiento, reduciendo la contención del servidor.•Útil para:
•Operaciones de lectura.•Usuarios móviles que puedan llevar la geodatabase al campo para editarla, desconectándose completamente de la red durante un periodo indefinido de tiempo.
•Réplica ArcSDE vs. Réplica SGBDR:•La replicación de la geodatabase es compatible con todos los objetos avanzados de la geodatabase, tales como topologías, relaciones y redes geométricas. •La replicación de geodatabase sincroniza los cambios de versiones específicas de geodatabases de ArcSDE. La replicación de DBMS, cuando se utiliza con una geodatabase de ArcSDE, aplica cambios a todas las versiones de la geodatabase.
20
4. Diseño de geodatabases
Puntos de partida: Mapas predefinidos. Plantillas de centros de recursos. Modelos de datos.
Etapas de diseño: Conceptual. Lógico. Físico.
21
Etapas de diseño
22
Diseño físico
23
Esquema físico
24
Herramientas CASE para el diseño
CASE (Computer-Aided Software Engineering) UML (Unified Modeling Language) para
modelar: Feature datasets Feature classes Tablas
Pasos: Microsoft Visio/Rational Rose: Modelo UML Exportar a XML Metadata Interchange
(XMI) Importar XMI en ArcCatalog con
herramientas CASE
25
Herramientas CASE para el diseño
ArcGIS Diagrammer
26
Documentación del diseño
Importancia de la documentación Elementos en el diseño
Datasets Clases de relación …
Microsoft Visio y Geodatabase Diagrammer
27
Elementos en el diseño
Datasets Son las especificaciones que
indican cómo registrar las propiedades de las clases de entidad, rásteres y tablas de atributo, así como el conjunto de columnas en cada tabla.
En las representaciones espaciales, se verán algunas propiedades geométricas (como puntos, líneas y polígonos, así como tipos de coordenadas).
Los datasets aparecen en azul.
28
Elementos en el diseño
Clases de relación: Las relaciones de atributo, al
igual que en todas las aplicaciones SGBDR, definen la forma en que las filas de una tabla se pueden asociar con filas de otra tabla.
Las relaciones tienen una dirección de cardinalidad y otras propiedades (por ejemplo, si se trata de relaciones de uno a uno, uno a muchos o de muchos a muchos).
Las relaciones y sus propiedades aparecen en verde.
29
Elementos en el diseño
Dominios: Representan la lista o rango de
valores válidos para las columnas de atributos.
Estas reglas controlan la forma en que el software mantiene la integridad de los datos en ciertas columnas de atributos.
Los dominios aparecen en rojo
30
Elementos en el diseño
Relaciones espaciales y reglas espaciales:
Las topologías, dataset de red, localizador de direcciones, terrenos, representaciones cartográficas, redes geométricas y muchos otros tipos avanzados de geodatabase, proporcionan un mecanismo SIG fundamental y muy utilizado para habilitar los comportamientos espaciales y hacer cumplir la integridad en las bases de datos SIG.
Éstas reglas aparecen en naranja.
31
Elementos en el diseño
Capas de mapa: Divisiones lógicas de la
información geográfica. Las capas no se administran en
geodatabases pero representan un aspecto importante para ayudar a definir algunas propiedades de dataset clave en un esquema de geodatabase.
Las especificaciones de capa aparecen en amarillo.
32
Proceso de documentación
33
Proceso de documentación
34
Proceso de documentación
35
Restricciones en la geodatabase
Además de las restricciones derivadas de las bases de datos relacionales, incluyen restricciones espaciales:(topology_rules_poster.pdf)
36
Restricciones en la geodatabase
Ejemplo: No solapamiento
37
Restricciones en la geodatabase
Ejemplo: Cobertura
38
Restricciones en la geodatabase
Ejemplo: Intersección de líneas
39
Restricciones en la geodatabase
Ejemplo: Cobertura de puntos por líneas
40
Restricciones en la geodatabase
Ejemplo: Tolerancia de agrupaciones
41
5. Consulta y modificación de datos con SQL
Soporte del estándar ANSI/ISO SQL 92 Otros posteriores: SQL-1999 … SQL-2008
Diferencias entre los tipos de geodatabases: Operador LIKE:
‘%’ (ArcSDE) – ‘*’ (MS Access) ‘_’ (ArcSDE) – ‘?’ (MS Access)
Modificación de datos: ArcSDE impone y vigila las
reglas de validación En un SGBDR no hay soporte
directo para estas reglas ¡Ojo! Se pueden modificar
datos con SQL de forma que se cree una geodatabase inconsistente con respecto a las reglas de validación.
42
Consulta y modificación de datos con SQL
Sin embargo, las modificaciones de la geodatabase con SQL son aconsejables debido al rendimiento de:
Actualizaciones masivas de atributos. Operaciones de carga de datos
… siempre que estas actualizaciones no sean parte de restricciones de comportamiento o reglas de validación.
43
Consulta y modificación de datos con SQL
Directrices: No modificar tuplas con SQL en datos versionados
(ArcSDE; MS Access no lo soporta). Comprometer (COMMIT) o retroceder (ROLLBACK)
después de cada instrucción SQL de modificación. Evitar modificar datos no versionados que afecten a
otros objetos de la BD (e.g., anotaciones asociadas a features y clases de relación).
Evitar usar SQL para modificar geometrías de feature classes que participen en objetos o funcionalidades de la geodatabase (redes geométricas, topologías y relaciones)
No modificar nunca el campo ObjectID con SQL
44
6. Administración de geodatabases
Tareas de gestión alrededor de las GDB en ArcSDE:
Añadir un servidor de bases de datos (SGBDR) MS SQL Server DB2 PostgreSQL …
Añadir usuarios al SGBDR Cargar datos Modificar datos en la GDB o el SGBDR Copias de seguridad de la GDB Actualización de la GDB
45
Administración de geodatabases
Tareas de los administradores de ArcSDE: Mantener el SGBDR
Gestión de espacio en disco Copias de seguridad Gestión de réplicas Seguridad (usuarios y permisos)
Crear y mantener GDBs Tablas (tables, feature classes, …) Índices espaciales Relaciones Restricciones (reglas)
46
Administración de geodatabases
(Práct. 6. ArcSDE.pdf)
Ejercicio 1: Añadir un SGBD al árbol del Catálogo de ArcMap y crear una GDB
Ejercicio 2: Cargar datos en una GDB y actualizar las estadísticas
Ejercicio 3: Adjuntar una GDB, crear una copia de seguridad y actualizarla
Ejercicio 4: Añadir usuarios y administrar sus permisos Ejercicio 5: Versiones. Editar datos sin versionar Ejercicio 6: Restauración de una GDB Ejercicio 7: Versiones. Crear versiones Ejercicio 8: Versiones. Editar datos versionados Ejercicio 9: Comprimir una GDB, reconstruir los índices y
desfragmetarla (shrink) Ejercicio 10: Desconectar una GDB
47
7. ArcGIS Server
Compartir datos geográficos en la empresa y fuera de ella
Aplicaciones Web
48
ArcGIS Explorer
Cliente para ArcGIS Server:
49
Desarrollo de aplicaciones
Aplicaciones Web Servicios Web Aplicaciones móviles
(no para teléfonos móviles )
Aplicaciones de escritorio. SDKs (Software Development Kit) APIs (Application Programming Interface)
(Asignatura del máster “Programación” con Java)
50
8. Aplicaciones Web
ArcGIS Server Manager Aplicaciones Web para edición de datos en
GDBs Pasos:
Hacer disponible la GDB en ArcSDEEj: MS SQL Server 2008
Crear un mapa a partir de los datos y simbolizarlo Publicar el mapa en ArcGIS Server Crear y configurar la aplicación Web
Práct. Adicional 3.pdf. Requiere ArcGIS Server Manager
51
Resultado
52
9. Esquema XML de la GDB
XML = eXtensible Markup Language Es un lenguaje diseñado para intercambiar datos
estructurados:<?xml version="1 .0 "?><note>
<to>Tove</ to><from>Jani</from><heading>Reminder</heading><body>Don' t forget me this weekend!</body>
</note>
La primera línea es la declaración del documento La segunda línea describe la raíz del documento Las siguientes 4 líneas describen 4 elementos hijos del elemento raíz (to, from, heading y body) La ultima línea describe el final del documento
53
Datos en documentos XML
Un documento XML se puede representar por un estructura de árbol<?xml version =1.0?><food><item type="fruit"><name>watermelon</name><price>32</price></it em><item type="fruit"><name>oranges</name><variety>navel</variety><price>75</price></item>................</food>
54
Esquema XML de una GDB
El esquema XML se usa para especificar el formato que un documento XML debe tener
El formato de intercambio de geodatabases usa sólo elementos XML (pero no atributos)
Ejemplo:
<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><AliasName>OBJECTID</AliasName><ModelName>OBJECTID</ModelName>
</Field>
55
Esquema del esquema XML
¡La descripción del esquema del propio esquema se hace también en XML!
Obsérvense los tipos propios de ESRI para describir los campos.
<xs:complexType name="Field"><xs:sequence>
<xs:element name="Name" type="xs:string"/><xs:element name="Type" type="esriFieldType"/><xs:element name="IsNullable" type="xs:boolean"/><xs:element name="Length" type="esriFieldType"/><xs:element name="Precision" type="esriFieldType"/><xs:element name="Scale" type="esriFieldType"/><xs:element name="Required" type="xs:boolean"minOccurs="0"/>
</xs:sequence>
</xs:complexType>
Más información: XML_Schema_of_Geodatabase.pdf
56
Ejercicio: Exportación de un esquema a un documento XML
The steps to copy a geodatabase schema using an XML workspace document are as follows:
1. In the Catalog tree, right-click the geodatabase, feature dataset, feature class, or table you want to export; point to Export; then click XML Workspace Document.
2. To export the schema without any records from the feature classes and tables, click Schema Only. Specify the path and name of the new XML file you will create.
If the data you're exporting has metadata and you want to export it, check the Export Metadata check box.
3. Click Next to preview the contents of the schema information to be copied.
This panel lists all the data items for which schema information will be copied.
Uncheck the Include check boxes for the feature classes, tables, or relationship classes whose schemas you don't want to export.
If you leave a box checked for a feature class in a network, topology, or terrain, the schemas for all the feature classes participating in the network, topology, or terrain will be copied.
4. Click Summary to review a summary of the extraction contents and other optional settings. When you are ready, click Finish to export the schema.
57
Referencias
Restricciones de la geodatabase: topology_rules_poster.pdf
Diseño: Designing Geodatabases, ESRI, 2004. Versiones:
http://downloads.esri.com/support/whitepapers/ao_/Versioning_2.pdf
SQL: http://downloads.esri.com/support/whitepapers/ao_/geodatabaseusingsql_2.pdf
XML: http://downloads.esri.com/support/whitepapers/ao_/XML_Schema.pdf