Alvarez Prados - Repositorio Institucional de la Universidad

Anuncio
UNIVERSIDAD VERACRUZANA
FACULTAD DE CONTADURIA Y ADMINISTRACION
“Bases de Datos Espacio–Temporales”
MONOGRAFIA
Para obtener el Título de:
Licenciado en Sistemas
Computacionales Administrativos
Presenta:
Viaani Lily Álvarez Prados
Asesor:
M.R. y T. Alma Delia Otero Escobar
Cuerpo Académico:
Tecnologías de la Información y las
Organizaciones Inteligentes en la Sociedad
del Conocimiento
Xalapa, Enríquez., Ver.
Agosto 2009
INDICE
RESUMEN
1
INTRODUCCION
2
CAPITULO I GENERALIDADES DE BASES DE DATOS
6
1.1 HISTORIA
7
1.2 BASE DE DATOS
10
1.2.1 Ventajas del uso de bases de datos
11
1.2.2 Aplicaciones de las bases de datos
12
1.2.3 Abstracción de datos
13
1.3 MODELOS DE BASES DE DATOS
15
1.3.1 Modelo entidad relación
15
1.3.2 Modelo relacional
17
1.3.3 Modelo jerárquico
19
1.3.3.1 Características de la estructura jerárquica
1.3.4 Modelo orientado a objetos
19
21
1.3.4.1 Relaciones
21
1.3.4.2 Integridad de las relaciones
24
1.4 ANTECEDENTES DE LAS BASE DE DATOS
ESPACIO-TEMPORALES
25
1.4.1 Bodega de datos
25
1.4.1.1 Características de la bodega de datos
26
1.4.1.2 Ventajas de la bodega de datos
27
1.4.1.3 Desventajas de la bodega de datos
27
1.4.2 Minería de datos
1.4.2.1 Características y objetivos de la minería de datos
27
29
I 1.4.2.2 Ventajas de la minería de datos
30
1.4.2.3 Desventajas de la minería de datos
31
CAPITULO II BASES DE DATOS ESPACIO-TEMPORALES
33
2.1 BASES DE DATOS TEMPORALES
34
2.2 BASES DE DATOS ESPACIALES
35
2.2.1 Tipos de datos
36
2.2.2 Estructura de datos espaciales
37
2.2.3 Definición de objetos espaciales
38
2.2.3.1 Definición de funciones espaciales
39
2.2.3.2 Acceso a los datos espaciales
39
2.2.4 Lenguajes de consultas espaciales
40
2.2.4.1 Implementaciones de consultas espaciales
2.2.5 Administrador de base de datos espaciales
2.2.5.1 Oracle spatial 11g.
2.3 BASES DE DATOS ESPACIO-TEMPORALES
43
44
44
47
2.3.1 Análisis espacio–temporal
50
2.3.2 Lenguajes de consulta espacio-temporales
50
2.3.2.1 SQLST
50
2.3.2.2 El lenguaje de Guting
51
2.3.2.3 Comparación de los dos lenguajes de consulta
51
2.3.2.4 Ejemplos
53
2.3.2.4.1 Consultas
2.3.2.5 Resultados de la comparación
56
64
CAPITULO III HERRAMIENTAS DE SOFTWARE
PARA MANIPULAR BDET
3.1 TECNOLOGIAS Y HERRAMIENTAS
66
67
3.1.1 API Java swing
67
3.1.2 Tecnología XML
69
3.1.3 Transformación de documentos XSLT
72
II 3.1.4 Procesador Dom4j
73
3.1.5 Manejador de base de datos PostGresql
74
3.1.5.1 PostGIS
3.1.6 Entorno de desarrollo integrado NetBeans
76
76
CAPITULO IV APLICACIÓN DE LAS BDET: SIG
77
4.1 SISTEMA DE INFORMACION GEOGRAFICA
78
4.1.1 Base de datos geográfica
80
4.1.2 Modelo de datos en un SIG
82
4.1.3 Semántica de la información espacial
86
CONCLUSIONES
89
FUENTES DE INFORMACION
91
GLOSARIO
94
INDICE DE FIGURAS
103
INDICE DE TABLAS
104
III RESUMEN
En este trabajo se conoce las bases de datos espacio-temporales las
cuales se encargan de guardar objetos espaciales que cambian su tamaño y/o
posición a través del tiempo. Además de contar con la capacidad de almacenar
otros tipos de datos tales, como imágenes, sonido, texto, video, datos
geométricos, entre otros. Para conocer mejor de este tema es necesario contar
información específica de las bases de datos (BD) clásicas, por lo que esta
monográfica consta de cuatro capítulos, de los cuales en el primero se abarcan las
generalidades de las bases de datos, la historia de éstas, sus modelos de datos y
algunas de las herramientas de apoyo a las mismas tales como las bodegas y la
minería de datos. En el segundo capítulo se abarca las bases de datos espaciales,
temporales y espacio-temporales, así como los lenguajes de consulta que son
utilizados para llevar a cabo la definición y manipulación de las bases de datos. El
tercer capítulo presenta algunas herramientas de software que permiten manipular
este tipo de base de datos y por último, en el capitulo cuatro se presenta una de
las aplicaciones de las bases de datos espacio-temporales, como es el caso de los
sistemas de información geográfica.
1 INTRODUCCION
La información con la que cuentan las empresas suele ser muy grande por
lo que el acceso a ésta puede llegar a ser complicada. Una herramienta para
acceder de manera rápida y sencilla a los datos de una organización, son las
bases de datos (BD), a las cuales se puede acceder sin necesidad de ir a lugares
dedicados a archivar documentación que en un momento dado llega a ser molesto
y que a la fecha, en algunas organizaciones se sigue haciendo.
En si, en una BD se tiene una recopilación de datos que pueden ser
compartidos por diferentes usuarios.
Las bases de datos están diseñadas para administrar grandes cantidades
de información y proporcionarla de manera fiable ya que puede haber intento de
acceso a los datos de usuarios no autorizados.
Las bases de datos se ven apoyadas de herramientas como la bodega de
datos o también conocida como datawarehouse que facilita en el apoyo a la toma
de decisiones, además de administrar datos de diversos orígenes.
Otra de las herramientas por las que las bases de datos se auxilian es la
minería de datos la cual colabora en la exploración de información que en algunas
ocasiones puede encontrarse almacenada durante muchos años.
Debido al avance de la tecnología han surgido otras clases de base de
datos, entre las cuales se encuentran las bases de datos temporales que como su
nombre lo indica, son las que se encargan del dominio del tiempo de la
información en el sistema administrador de las bases de datos; y las espaciales
que ofrecen tipos de datos espaciales en sus modelos de datos, y la forma de
éstos suelen ser por punto, línea o región, además de permitir describir los objetos
3 espaciales que la forman a través de tres características básicas: atributos,
localización y topología. Donde los atributos representan características de los
objetos que nos permiten saber qué es lo que son. La localización, representada
por la geometría del objeto y su ubicación espacial de acuerdo a un sistema de
referencia, permite saber dónde está el objeto y qué espacio ocupa. Por último, la
topología definida por medio de las relaciones conceptuales y espaciales entre los
objetos, permite mejorar la interpretación semántica del contexto y establecer
ciertas jerarquías de elementos a través de sus relaciones.
Gracias a la creciente demanda de almacenamiento de información
especializada como diversos tipos de información como lo son imágenes, sonidos,
textos y videos entre otros, y de los constantes cambios en el mercado y la
necesidad de operaciones cada vez más eficientes, hacen que las bases de datos
tradicionales no cumplan con las expectativas tanto de clientes y empresas, es por
ello que surge la creación de las bases de datos espacio-temporales para
solventar tales inconvenientes.
Las Bases de Datos Espacio-Temporales buscan dar soporte a aplicaciones
como el tráfico de una ciudad, el tráfico aéreo en un aeropuerto o el análisis de
fenómenos meteorológicos, donde es importante saber la variación en el tiempo
de un objeto representado a través de una geometría. Esto es tratando con
objetos que cambian de posición o forma a medida que transcurre el tiempo, estos
objetos son adecuados para representar propiedades, personas, animales, entre
otros.
Existen diversos lenguajes de consulta para este tipo de base de datos pero
en esta monografía se presentan dos de dichos lenguajes, estos son, SQLST y
Guting los cuales se analizan mediante un conjunto de consultas y de criterios con
el fin de evidenciar sus ventajas y desventajas.
4 Ya que las bases de datos espacio-temporales representan una relación
entre espacio y tiempo, existen herramientas para la manipulación de software,
como API Java swing la cual proporciona un conjunto de componentes para el
diseño e implementación de las aplicaciones de escritorio con interfaces gráficas
amigables para el usuario; la tecnología XML brinda la funcionalidad de establecer
la estructura de los contenidos de los documentos; XSLT permite la
transformación de documentos XML a otro formato de archivo por medio de estilos
y formatos establecidos en hojas de estilo de éste mismo; otras de las
herramientas y tecnologías son Dom4j, PostgreSQL, PostGIS y Netbeans que se
abarcan en esta monografía.
Éstas bases de datos se caracterizan por contar con información importante
en cuanto a tiempo y espacio, una de sus aplicaciones son los Sistemas de
Información Geográfica que cuentan con datos espaciales que son datos sin
procesar que se distinguen por la presencia de un vinculo gráfico, es decir, un
aspecto de estos datos está conectado a un lugar conocido de la tierra, o sea, una
referencia geográfica real, esta información se encuentra concentrada en las
bases de datos geográficas que son en las que estos sistemas se ven apoyados y
que constan de la abstracción del mundo real a una representación simplificada
que puede ser interpretada por computadoras.
5 CAPÍTULO I
GENERALIDADES DE LAS BASES DE DATOS
En este capítulo se da a conocer la historia de las bases de datos,
dándonos cuenta que las técnicas de almacenamiento de datos han evolucionado
a lo largo de los años, empezando con el desarrollo de las cintas magnéticas
hasta el comienzo de la World Wide Web, donde los sistemas de bases de datos
tuvieron interfaces Web. Además conoceremos el concepto de base de datos así
como sus ventajas, aplicaciones y la forma en que los programadores recuperan
los datos eficientemente mediante los niveles de abstracción.
Se cuenta con un concepto de modelo de bases de datos y se explican
algunos de éstos para conocer la representación de los datos en dichos modelos.
También se da una breve explicación de lo que son las bodegas de datos y
la minería de datos cada una con sus características, ventajas y desventajas
respectivamente.
1.1 HISTORIA
El procesamiento de datos impulsa el crecimiento de los computadores,
como ocurriera en los primeros días de los computadores comerciales. De hecho,
la automatización de las tareas de procesamiento de datos precede a los
computadores. Las tarjetas perforadas, inventadas por Hollerith, se usaron en los
principios del siglo XX para registrar los datos del censo de los EE. UU., y se
usaron sistemas mecánicos para procesar las tarjetas y para tabular los
resultados. Las tarjetas perforadas posteriormente se usaron ampliamente como
medio para introducir datos en los computadores.
7 Las técnicas del almacenamiento de datos han evolucionado a los largo de
los años:

Década de 1950 y principios de la década de 1960. Se desarrollaron las
cintas magnéticas para el almacenamiento de datos. Las tareas de
procesamiento de datos tales como nóminas fueron automatizadas, con los
datos almacenados en cintas. El procesamiento de datos consistía en leer
datos de una o más cintas y escribir datos en una nueva cinta. Los datos
también se podían introducir desde paquetes de tarjetas perforadas e
impresos en impresoras. Las cintas solo se podían leer secuencialmente, y
los tamaños de datos eran mucho mayores que la memoria principal; así los
programas de procesamiento de datos tenían que procesar los datos según
un determinado orden, leyendo y mezclando datos de cintas y paquetes de
tarjetas perforadas.

Finales de la década de 1960 y la década de 1970. El amplio uso de los
discos fijos a finales de la década de 1960 cambió en gran medida el
escenario del procesamiento de datos, ya que los discos fijos permitieron el
acceso directo a datos. La ubicación de los datos en disco no era
importante, ya que a cualquier posición del disco se podía acceder en sólo
decenas de milisegundo. Los datos se liberaron de la dominación de la
secuencialidad. Con los discos pudieron desarrollarse las bases de datos
de red y jerárquicas, que permitieron que las estructuras de datos tales
como listas y árboles pudieran almacenarse en disco. Los programadores
pudieron construir y manipular estas estructuras de datos. Un artículo de
definió el modelo relacional y formas no procedimentales de consultar los
datos en el modelo relacional, y nacieron las bases de datos relacionales.
La simplicidad del mundo
relacional y la posibilidad de ocultar
completamente los detalles de implementación al programador fueron
atractivas.

Década de 1980. Aunque académicamente, el modelo relacional no se usó
inicialmente en la práctica debido a sus inconvenientes por el rendimiento;
las bases de datos relacionales no pudieron competir con el rendimiento de
8 las bases de datos de red y jerárquicas existentes. Esta situación cambió
con System R, un proyecto innovador en IBM Research que desarrolló
técnicas para la construcción de un sistema de bases de datos relacionales
eficiente. Los primeros sistemas de bases de datos relacionales, jugaron
un importante papel en el desarrollo de técnicas para el procesamiento
eficiente de consultas. En los principios de la década de 1980 las bases de
datos relacionales llegaron a competir con los sistemas de bases de datos
jerárquicas y de red incluso en el área de rendimiento. Las bases de datos
relacionales fueron tan sencillas de usar que finalmente reemplazaron a las
bases de datos jerárquicas y de red. Desde su escalada en el dominio de la
década de 1980, el modelo relacional ha conseguido el reinado entre todos
los modelos de datos. La década de 1980 también fue testigo de una gran
investigación en las bases de datos paralelas y distribuidas, así como del
trabajo inicial en las bases de datos orientadas a objetos.

Principios
de
la
década
de
1990.
El
lenguaje
SQL
se
diseño
fundamentalmente para las aplicaciones de ayuda a la toma de decisiones,
que son intensivas en consultas, mientras que el objetivo principal de las
bases de datos en la década de 1980 fue las aplicaciones de
procesamiento de transacciones, que son intensivas en actualizaciones. La
ayuda a la toma de decisiones y las consultas reemergieron como una
importante área de aplicación para las bases de datos.

Finales de la década de 1990. El principal acontecimiento fue el crecimiento
del World Wide Web. Las bases de datos se implementaron mucho más
extensivamente que nunca antes. Los sistemas de bases de datos tienen
ahora soporte para tasas de transacciones muy altas, así como muy alta
fiabilidad y disponibilidad 24*7 (24 horas al día, 7 días a la semana). Los
sistemas de bases de datos también tuvieron interfaces Web a los datos.
[Silberschatz A., Korth H., Sudarshan S. (2002)].
9 1.2 BASE DE DATOS.
En 1975 se decía que una base de datos era una colección de datos
interrelacionados almacenados en conjunto sin redundancias perjudiciales o
innecesarias; cuya finalidad es servir a una aplicación o más, de la mejor manera
posible; los datos son almacenados de modo que resulten independientes de los
programas que los usan; se emplean métodos bien determinados para incluir
nuevos datos y para modificar o extraer los datos almacenados. Pero dicho
concepto se ha ido cambiando y configurándose a lo largo del tiempo, en la
actualidad se puede definir la base de datos como “Colección o deposito de datos
integrados, almacenados en soporte secundario (no volátil) y con redundancia
controlada. Los datos, que han de ser compartidos por diferentes usuarios y
aplicaciones, deben mantenerse independientes de ellos, y su definición
(estructura de la base de datos) única y almacenada junto con los datos, se ha de
apoyar en un modelo de datos, el cual ha de permitir captar las interrelaciones y
restricciones existentes en el mundo real. Los procedimientos de actualización y
recuperación, comunes y bien determinados, facilitarán la seguridad del conjuntos
de datos” [Castaño M., Piattini M.,(1999)]
Un Sistema Gestor de Bases de Datos (SGBD) consiste en una colección
de datos interrelacionados y un conjunto de programas para acceder a dichos
datos. La colección de datos, normalmente denominada base de datos, contiene
información relevante para una empresa. El objetivo principal de un SGBD es
proporcionar una forma de almacenar y recuperar la información de una base de
datos de manera que sea tanto práctica como eficiente.
Los sistemas de bases datos se diseñan para gestionar grandes cantidades
de información. La gestión de los datos implica tanto la definición de estructuras
para almacenar la información como la provisión de mecanismos para la
manipulación de la información. Además los sistemas de bases de datos deben
proporcionar la fiabilidad de la información almacenada, a pesar de las caídas del
sistema o los intentos de acceso sin autorización. Si los datos van a ser
10 compartidos entre diversos usuarios, el sistema debe evitar posibles resultados
extraños. [Silberschatz A. (2002)]
De acuerdo a Sergio Rozic (2004) “Una base de datos es el lugar donde se
guardan los datos en reposo y al cual acceden las diferentes aplicaciones
(sistemas o programas) de una organización dada”
Las operaciones de búsquedas en una base de datos requieren de algún
soporte y organización especial a nivel físico. En las bases de datos clásicas la
organización de la información se basa en el concepto de búsqueda exacta sobre
datos estructurados. Una característica importante de las bases de datos es que
capturan sólo un estado de la realidad modelizada, usualmente el más reciente.
Por medio de las transacciones, la base de datos evoluciona de un estado al
siguiente descartando el estado previo. [Pascal A., Gutiérrez G., Herrera N. (s.f)]
1.2.1 VENTAJAS DEL USO DE BASES DE DATOS
Algunas de las principales ventajas de utilizar base de datos para la
persistencia de los datos son:

Normalizar los datos: Es una metodología que permite minimizar entre otras
cosas la redundancia de datos, y agiliza y garantiza la actualización de
éstos.

Evitar redundancias de datos: Como política de las bases de datos, estos
se tratan de guardar en un único lugar y cuando existe la necesidad de
acceder a ellos, se hace por medio de relaciones entre los mismos.

Evitar inconsistencias de datos: Dado que las bases de datos utilizan
transacciones se puede garantizar prácticamente la inexistencia de
inconsistencias de datos.

Garantizar la integridad de los datos: Como se evita la redundancia de
datos y la inconsistencia y se manejan transacciones, la integridad está
garantizada. La información obtenida de la base de datos es correcta en
todo momento.
11 
Garantizar la seguridad de los datos: Debido a que los accesos a la base
de datos tanto para usuarios como para aplicaciones están dados por
medio de permisos, si estos últimos están bien definidos nadie podrá
ingresar a ningún lugar que no le esté permitido ni acceder a un conjunto de
datos que no le esté permitido.

Compartir los datos: Dado que todos los datos se almacenan en un mismo
lugar lógico estos se pueden compartir sin problema entre distintos usuarios
y aplicaciones.

Facilidad de modificar los datos: Dado que los datos se guardan en un
único lugar es más fácil poder realizar modificaciones sobre ellos. [Rozic S.,
(2004)]
1.2.2 APLICACIONES DE LAS BASES DE DATOS
Las siguientes son algunas de las aplicaciones más representativas de las
bases de datos:

Banca: Para información de los clientes, cuentas y préstamos, y
transacciones bancarias.

Líneas aéreas: Para reservas e información de planificación.
Éstas
fueron de los primeros en usar las bases de datos de forma distribuida
geográficamente (los terminales situados en todo el mundo accedían al
sistema de bases de datos centralizado a través de las líneas
telefónicas y otras redes de datos)

Universidades: Para información de los estudiantes, matrículas de las
asignaturas y cursos.

Transacciones de tarjetas de crédito: Para compras con tarjeta de
crédito y generación mensual de extractos.

Telecomunicaciones: Para guardar un registro de las llamadas
realizadas, generación mensual de facturas, manteniendo el saldo de
12 las tarjetas telefónicas de prepago y para almacenar información sobre
las redes de comunicaciones.

Finanzas: Para almacenar información sobre grandes empresas, ventas
y compras de documentos formales financieros, como bolsa y bonos.

Ventas: Para información de clientes, productos y compras.

Producción: Para la gestión de la cadena de producción y para el
seguimiento de la producción de elementos en las factorías, inventarios
de elementos en almacenes y pedidos de elementos.

Recursos Humanos: Para información sobre los empleados, salarios,
impuestos y beneficios, y para la generación de las nóminas.
[Silberschatz A. (2002)]
1.2.3 ABSTRACCIÓN DE DATOS
Para que el sistema sea útil debe recuperar los datos eficientemente. Esto
ha conducido al diseño de estructuras de datos complejas para la representación
de los datos en la base de datos. Debido a que muchos usuarios de sistemas de
bases de datos no están familiarizados con computadores, los desarrolladores
esconden la complejidad a los usuarios a través de varios niveles de abstracción
para simplificar la interacción de los usuarios con el sistema:

Nivel Físico: El nivel más bajo de abstracción describe cómo se almacenan
realmente los datos. En el nivel físico se describen en detalles las
estructuras de datos complejas de bajo nivel.

Nivel Lógico: El siguiente nivel más alto de abstracción describe qué datos
se almacenan en la base de datos y qué relaciones existen entre esos
datos. La base de datos completa se describe así en términos de un
número pequeño de estructuras relativamente simples. Aunque la
implementación de estructuras simples en el nivel lógico puede involucrar
estructuras complejas del nivel físico, los usuarios del nivel lógico no
necesitan preocuparse de esa complejidad. Los administradores de bases
13 de datos, que deben decidir la información que se mantiene en la base de
datos, usan el nivel lógico de abstracción.

Nivel de Vistas: El nivel más alto de abstracción describe solo parte de la
base de datos completa. A pesar del uso de estructuras más simples en el
nivel lógico, queda algo de complejidad, debido a la variedad de
información almacenada en una gran base de datos. Algunos usuarios del
sistema de base de datos no necesitan toda esta información. En su lugar,
tales usuarios necesitan acceder solo a una parte de la base de datos. Para
que su interacción con el sistema se simplifique, se define la abstracción del
nivel de vistas. El sistema puede proporcionar muchas vistas para la misma
base de datos.
La figura 1.1 muestra la relación entre los tres niveles de abstracción.
[Silberschatz A. (2002)]
NIVEL DE VISTAS
VISTA 1
VISTA 2
…….
VISTA n
NIVEL
LOGICO
NIVEL
FISICO
Figura 1.1. Los tres niveles de abstracción de datos.
Actualmente las bases de datos han incluido la capacidad de almacenar
otros tipos de datos tales, como imágenes, sonido, texto, video, datos
geométricos, entre otros. La problemática de almacenamiento y búsqueda en
estos tipos de base de datos difiere de las que se presentan en las bases de datos
clásicas. En primer lugar los datos generalmente son no estructurados, esto
significa que es imposible organizarlos en tuplas compuestas por atributos. En
segundo lugar, aún cuando tal estructuración fuera posible, la búsqueda exacta
14 carece de interés en este ámbito. Y en tercer lugar, en muchas aplicaciones
resulta de interés mantener todos los estados de las bases de datos y no sólo el
más reciente; más aún, hasta puede surgir la necesidad de predecir un estado
futuro de la base.
Es en este contexto donde surgen las bases de datos espacio–temporales
como nuevos modelos de bases de datos capaces de cubrir eficaz y
eficientemente las necesidades de almacenamiento y búsqueda de estas nuevas
aplicaciones. [Pascal A. (s.f.)]
1.3 MODELOS DE BASES DE DATOS
Bajo la estructura de la base de datos se encuentra el modelo de datos:
una colección de herramientas conceptuales para describir los datos, las
relaciones, la semántica y las restricciones de consistencia.
A continuación se describen algunos de los modelos de datos.
1.3.1 MODELO ENTIDAD RELACION
El modelo de datos entidad – relación (E-R) está basado en una percepción
del mundo real que consta de una colección de objetos básicos, llamados
entidades y de relaciones entre estos objetos. Una entidad es una <cosa> u
<objeto> en el mundo real que es distinguible de otros objetos. Por ejemplo, cada
persona es una entidad, y las cuentas bancarias pueden ser consideradas
entidades.
Las entidades se describen en una base de datos mediante un conjunto de
atributos. Por ejemplo, los atributos número-cuenta y saldo describen una cuenta
particular en un banco y pueden ser atributos del conjunto entidades cuenta.
Similarmente, los atributos nombre-cliente, calle-cliente y ciudad-cliente pueden
describir una entidad cliente.
Un atributo extra, id-cliente, se usa para identificar específicamente a los
clientes (dado que puede ser posible que haya dos clientes con el mismo nombre,
dirección y ciudad). Se debe asignar un identificador único de cliente a cada
cliente.
15 Una relación es una asociación entre varias entidades. Por ejemplo, una
relación impositor asocia un cliente con cada cuenta que tiene. El conjunto de
todas las entidades del mismo tipo, y el conjunto de todas las relaciones del
mismo tipo, se denominan respectivamente conjunto de entidades y conjunto de
relaciones.
La estructura lógica general de una base de datos se puede expresar
gráficamente mediante el diagrama E-R, que consta de los siguientes
componentes:

Rectángulos, que representan conjunto de entidades.

Elipses, que representan atributos.

Rombos, que representan relaciones entre conjunto de entidades.

Líneas, que unen los atributos con los conjuntos de entidades y los
conjuntos de entidades con las relaciones.
Cada componente se etiqueta con la entidad o relación que representa.
Como ilustración, considérese parte de una base de datos de un sistema
bancario consistente en clientes y cuentas que tienen esos clientes. En la figura
1.2 se muestra el diagrama E-R correspondiente.
nombre-cliente
Número de cuenta
Calle-cliente
ciudad-cliente
Id-cliente
cliente
impositor
saldo
cuenta
Figura 1.2 Ejemplo de diagrama E-R
El diagrama E-R indica que hay dos conjuntos de entidades cliente y
cuenta, con los atributos descritos anteriormente. El diagrama también muestra la
relación impositor entre cliente y cuenta.
16 Además de las entidades y relaciones, el modelo E-R representa ciertas
restricciones que los contenidos de la base de datos deben cumplir. Una
restricción importante es la correspondencia de cardinalidades, que expresa el
número de entidades con las que otra entidad se puede asociar a través de un
conjunto de relaciones. Por ejemplo, si cada cuenta puede pertenecer sólo a un
cliente, el modelo puede expresar esa restricción.
El modelo E-R se utiliza habitualmente en el proceso de diseño de bases de
datos.
1.3.2 MODELO RELACIONAL.
En el modelo relacional se utiliza un grupo de tablas para representar los
datos y las
relaciones entre ellos. Cada tabla está compuesta por varias
columnas, y cada columna tiene un nombre único. En la figura 1.3 se presenta un
ejemplo de base de datos relacional consistente en tres tablas: la primera muestra
los clientes de un banco, la segunda, cuentas, y la tercera, las cuentas que
pertenecen a cada cliente.
La tabla cliente, muestra, por ejemplo, que el cliente cuyo identificador es
19.283.746 se llama González y vive en la calle Arenal sita en La Granja. La
segunda tabla, cuenta, muestra que las cuentas C-101 tienen un saldo de $500 y
la C-201 un saldo de $900 respectivamente.
La tercera tabla muestra las cuentas que pertenecen a cada cliente. Por
ejemplo, la cuenta C-101 pertenece al cliente cuyo identificador es 19.283.746
(González) y los clientes 19.283.746 (González) y 01.928.374 (Gómez) comparten
el número de cuenta C-201(pueden compartir un negocio).
17 Id- cliente
Nombre-cliente
Calle-cliente
Ciudad-cliente
19.283.746
González
Arenal
La Granja
01.928.374
Gómez
Carretas
Cerceda
67.789.901
López
Mayor
Peguerinos
18.273.609
Abril
Preciados
Valsaín
32.112.312
Santos
Mayor
Peguerinos
33.666.999
Rupérez
Ramblas
León
01.928.374
Gómez
Carretas
Cerceda
(a) La tabla cliente
Número-cuenta
Saldo
Id-cliente
Número-cuenta
C-101
500
19.283.746
C-101
C-215
700
19.283.746
C-201
C-102
400
01.928.374
C-215
C-305
350
67.789.901
C-102
C-201
900
18.273.609
C-305
C-217
750
32.112.312
C-217
C-222
700
33.666.999
C-222
01.928.374
C-201
(b) La tabla cuenta
(c)
La tabla impositor
Figura 1.3. Ejemplo de base de datos relacional.
El modelo relacional es un ejemplo de un modelo basado en registros. Los
modelos basados en registros se denominan así porque la base de datos se
estructura en registros de formato fijo de varios tipos. Cada tabla contiene
registros de un tipo particular. Cada tipo de registro define un número fijo de
campos, o atributos. Las columnas de la tabla corresponden a los atributos del tipo
de registro.
No es difícil ver cómo se pueden almacenar las tablas en archivos. Por
ejemplo, un carácter especial (como una coma) se puede usar para delimitar los
diferentes atributos de un registro, y otro carácter especial (como un carácter de
nueva línea) se puede usar para delimitar registros. El modelo relacional oculta
18 tales detalles de implementación de bajo nivel a los desarrolladores de bases de
datos y usuarios.
El modelo de datos relacional es el modelo de datos más ampliamente
usado, y una amplia mayoría de sistemas de bases de datos actuales se basan en
el modelo relacional.
El modelo relacional se encuentra a un nivel de abstracción inferior al
modelo de datos E-R. Los diseños de bases de datos a menudo se realizan en el
modelo E-R, y después se traducen al modelo relacional. [Silberschatz A. (2002)]
1.3.3 MODELO JERARQUICO
La implementación del modelo jerárquico en los productos se lleva a cabo
en base a punteros; estructura física (organización y tipo de punteros) que varía
según los productos, e incluso un mismo producto proporciona distintas
organizaciones físicas a fin de que el usuario pueda conseguir una mayor
eficiencia en el diseño físico de la base de datos.
1.3.3.1 CARACTERISTICAS DE LA ESTRUCTURA JERARQUICA
En el modelo de datos jerárquico, el esquema es una estructura compuesta
de nodos, que representan las entidades, enlazados por arcos, que representan
las asociaciones o interrelaciones entre dichas entidades.
La estructura del modelo de datos jerárquico es un caso particular de la del
modelo de red, con fuertes restricciones adicionales derivadas de que las
asociaciones del modelo jerárquico deben formar un árbol ordenado, es decir, un
árbol en el que el orden de los nodos es importante. Una estructura jerárquica,
cuya representación se muestra en la figura 1.4, tiene las siguientes
características:

El árbol se organiza en un conjunto de niveles.
19 
El nodo raíz, el más alto de la jerarquía (nodo A de la figura 1.4), se
corresponde con el nivel 0.

Los arcos representan las asociaciones jerárquicas entre dos entidades y
no tienen nombre, ya que no es necesario porque entre dos conjuntos de
datos sólo puede haber una interrelación.

Mientras que un nodo de nivel superior (padre) puede tener un número
ilimitado de nodos de nivel inferior (hijos), al nodo del nivel inferior sólo le
puede corresponder un único nodo de nivel superior.

Todo nodo, a excepción del nodo raíz, ha de tener obligatoriamente un
padre.

Se llaman hojas los nodos que no tienen descendientes (en la figura 1.4 las
hojas están marcadas con *)

Se llama altura al número de niveles de la estructura jerárquica.

Se denomina momento al número de nodos.

Sólo están permitidas las interrelaciones 1:1 o 1:N.

Cada nodo no terminal y sus descendientes forman un subárbol, de forma
que un árbol es una estructura recursiva.
Nivel 0
A
Nivel 1
Nivel 2
B
C
E*
F
D*
Nivel 3
G
H*
I*
Altura 4 Momento 9
Recorrido, A, B, C, D, E, F, G, H, I.
Figura 1.4 Estructura arborescente a varios niveles.
20 El árbol, en este modelo, se recorre en preorden; es decir, raíz, subárbol
izquierdo y subárbol derecho. [Castaño, M. (1999)].
1.3.4 MODELO ORIENTADO A OBJETOS
El modelo de datos orientado a objetos es una extensión de la muestra de
programación orientado a objetos. Los objetos entidad que se utilizan en los
programas orientados a objetos son semejantes a las entidades que se utilizan en
las bases de datos orientadas a objetos puras, pero con una gran diferencia: los
objetos del programa desaparecen cuando el programa termina su ejecución,
mientras que los objetos de la base de datos permanecen. A esto se le denomina
persistencia.
1.3.4.1 RELACIONES
Las bases de datos relacionales representan las relaciones mediante las
claves ajenas. No tienen estructuras de datos que formen parte de la base de
datos y que representen estos enlaces entre tablas. Las relaciones se utilizan para
hacer concatenaciones (join) de tablas. Por el contrario, las bases de datos
orientadas a objetos implementan sus relaciones incluyendo en cada objeto los
identificadores de los objetos con los que se relaciona.
Un identificador de objeto es un atributo interno que posee cada objeto. Ni
los programadores, ni los usuarios que realizan consultas de forma interactiva, ven
o manipulan estos identificadores directamente. Los identificadores de los objetos
los asigna el SGBD y es él el único que los utiliza.
El identificador puede ser un valor arbitrario o puede incluir la información
necesaria para localizar el objeto en el fichero donde se almacena la base de
datos. Por ejemplo, el identificador puede contener el número de la página del
fichero donde se encuentra almacenado el objeto, junto con el desplazamiento
desde el principio de la página.
Hay dos aspectos importantes a destacar sobre este método de representar
las relaciones entre datos:
21 
Para que el mecanismo funcione, el identificador del objeto no debe
cambiar mientras éste forme parte de la base de datos.

Las únicas relaciones que se pueden utilizar para consultar la base de
datos son aquellas que se han predefinido almacenando en atributos los
identificadores de los objetos relacionados. Por lo tanto, una base de datos
orientada
a
objetos
pura
es
navegacional,
como
los
modelos
prerrelacionales (el modelo jerárquico y el modelo de red). De este modo se
limita la flexibilidad del programador/usuario a aquellas relaciones
predefinidas, pero los accesos que siguen estas relaciones presentan
mejores prestaciones que en las bases de datos relacionales porque es
más rápido seguir los identificadores de los objetos que hacer operaciones
de concatenación (join).
El modelo orientado a objetos permite los atributos multivaluados,
agregaciones a las que se denomina conjuntos (sets) o bolsas (bags). Para crear
una relación de uno a muchos, se define un atributo en la parte del uno que será
de la clase del objeto con el que se relaciona. Este atributo contendrá el
identificador de objeto del padre. La clase del objeto padre contendrá un atributo
que almacenará un conjunto de valores: los identificadores de los objetos hijo con
los que se relaciona. Cuando el SGBD ve que un atributo tiene como tipo de datos
una clase, ya sabe que el atributo contendrá un identificador de objeto.
Las relaciones de muchos a muchos se pueden representar directamente
en las bases de datos orientadas a objetos, sin necesidad de crear entidades
intermedias. Para representar la relación, cada clase que participa en ella define
un atributo que contendrá un conjunto de valores de la otra clase con la que se
relacionará. Aunque el hecho de poder representar relaciones de muchos a
muchos parece aportar muchas ventajas, hay que tener mucho cuidado cuando se
utilizan. En primer lugar, si la relación tiene datos, será necesario crear una
entidad intermedia que contenga estos datos. Por ejemplo, en la relación de los
artículos con los proveedores, en donde cada proveedor puede tener un precio
distinto para un mismo artículo. En este caso, la relación de muchos a muchos se
22 sustituye por dos relaciones de uno a muchos, como se haría en una base de
datos relacional. En segundo lugar, se puede diseñar una base de datos que
contiene relaciones de muchos a muchos en donde o bien se pierde información, o
bien se hace imposible determinar las relaciones con precisión. También en estos
casos la solución es incluir una entidad intermedia que represente la relación.
Ya que el modelo orientado a objetos soporta la herencia, una base de
datos orientada a objetos también puede utilizar la relación “es un” entre objetos.
Por ejemplo, en una base de datos para un departamento de recursos humanos
habrá una clase Empleado con diversos atributos: nombre, dirección, número de
la seguridad social, fecha de contrato y departamento en el que trabaja. Sin
embargo, para registrar el modo de pago de cada empleado hay un dilema. No a
todos los empleados se les paga del mismo modo: a algunos se les paga por
horas, mientras que otros tienen un salario mensual. La clase de los empleados
que trabajan por horas necesita unos atributos distintos que la clase de los otros
empleados. En una base de datos orientada a objetos se deben crear las dos
subclases de empleados. Aunque el SGBD nunca creará objetos de la clase
Empleado, su presencia en el diseñó clarifica el diseño lógico de la base de datos
y ayuda a los programadores de aplicaciones permitiéndoles escribir sólo una vez
los métodos que tienen en común las dos subclases (serán los métodos que se
sitúan en la clase Empleado).
En teoría, una base de datos orientada a objetos debe soportar dos tipos de
herencia: la relación “es un” y la relación “extiende”. La relación “es un”, que
también se conoce como generalización–especialización, crea una jerarquía
donde las subclases son tipos específicos de las superclases. Con la relación
“extiende”, sin embargo, una clase expande su superclase en lugar de estrecharla
en un tipo más específico. Por ejemplo, en la jerarquía de la clase Empleado, al
igual que son necesarias clases para los empleados que realizan cada trabajo
específico, hace falta guardar información adicional sobre los directores, que son
empleados pero que también tienen unas características específicas. La base de
datos incluirá una clase Director con un atributo para los empleados a los que
23 dirige. En este sentido un director no es un empleado más específico sino un
empleado con información adicional.
Una de las cosas que es difícil de manejar en las bases de datos
relacionales es la idea de las partes de un todo, como en una base de datos de
fabricación, en la que hace falta saber qué piezas y qué componentes se utilizan
para fabricar un determinado producto. Sin embargo, una base de datos orientada
a objetos puede aprovechar la relación denominada “todo–parte” en la que los
objetos de una clase se relacionan con objetos de otras clases que forman parte
de él. En el caso de la base de datos de fabricación, la clase Producto se
relacionará con las clases Pieza y Componente utilizando una relación “todo–
parte”. Este tipo de relación es una relación de muchos a muchos con un
significado especial. Un producto puede estar hecho de muchas piezas y muchos
componentes. Además, una misma pieza o un mismo componente se puede
utilizar para fabricar distintos productos. El identificar esta relación como “todo–
parte” permite que el diseño sea más fácil de entender.
1.3.4.2 INTEGRIDAD DE LAS RELACIONES
Para que las relaciones funcionen en una base de datos orientada a objetos
pura, los identificadores de los objetos deben corresponderse en ambos extremos
de la relación. Por ejemplo, si los técnicos de una empresa de control de calidad
se deben relacionar con las obras de construcción que supervisan, debe haber
algún modo de garantizar que, cuando un identificador de un objeto Obra se
incluye en un objeto Técnico, el identificador de este mismo objeto Técnico se
debe incluir en el objeto Obra anterior. Este tipo de integridad de relaciones, que
es de algún modo análogo a la integridad referencial en las bases de datos
relacionales, se gestiona especificando relaciones inversas.
La clase Técnico tiene un atributo de tipo conjunto llamado supervisa. Del
mismo modo, la clase Obra tiene un atributo llamado es_supervisada. Para
garantizar la integridad de esta relación, un SGBD orientado a objetos puro deberá
permitir que el diseñador de la base de datos pueda especificar dónde debe
aparecer el identificador del objeto inverso, como por ejemplo:
24 relationship set<Obra> supervisa
inverse Obra::es_supervisada
en la clase Técnico y:
relationship Técnico es_supervisada
inverse Técnico::supervisa
en la clase Obra.
Figura 1.5 Código de ejemplo de modelo de datos orientado a objetos
Siempre que un usuario o un programa de aplicación inserta o elimina un
identificador de objeto de la relación supervisa en un objeto Técnico, el SGBD
actualizará automáticamente la relación es supervisada en el objeto Obra
relacionado. Cuando se hace una modificación en el objeto Obra, el SGBD lo
propagará automáticamente al objeto Técnico.
Del mismo modo que en las bases de datos relacionales es el diseñador de
la base de datos el que debe especificar las reglas de integridad referencial, en las
bases de datos orientadas a objetos es también el diseñador el que debe
especificar las relaciones inversas cuando crea el esquema de la base de datos.
[Marqúes, M (2002)].
1.4 ANTECEDENTES
DE
LAS
BASES
DE
DATOS
ESPACIO-TEMPORALES
1.4.1 BODEGA DE DATOS
Se
dice
que
una
Bodegas
de
Datos,
también
conocida
como
Datawarehouse, es la construcción de grandes repositorios integrados de datos
que pueden ser generados internamente o recibidos de fuentes externas,
organizados de tal manera que facilitan el proceso de toma de decisiones. Se han
construido repositorios más pequeños, rápidos de implementar y fáciles de usar
conocidos como Almacenes de Datos (Data Marts) que son organizados para
aplicaciones específicas almacenando los datos de un área en especial.
25 Además son consideradas como la solución integral y oportuna para
desarrollar las estrategias de negocios. Al mismo tiempo es una técnica para
consolidar y administrar datos de diversas fuentes con el propósito de responder
preguntas de negocios y tomar decisiones.
En realidad existen muchas de definiciones de Bodegas de Datos o
Datawarehouse, pero la más conocida propuesta fue en 1992, por Inmon
(considerado el padre de las Bases de Datos) donde dijo que “un Datawarehouse
es una colección de datos orientados a temas, integrados, no – volátiles y
variantes en el tiempo, organizados para soportar necesidades empresariales”. Sin
embargo, en 1993, Susan Osterfeldt publicó una nueva definición de
Datawarehouse: “Yo considero a DW como algo que provee dos beneficios
empresariales reales: Integración y Acceso de Datos. DW elimina una gran
cantidad de datos inútiles y no deseados, como también el procesamiento desde
el ambiente operacional clásico”.
1.4.1.1 CARACTERISTICAS DE LA BODEGA DE DATOS
Las Bodegas de Datos se caracterizan por ser:
Integradas: porque consolidan y centralizan datos derivados de toda la
organización.
Orientadas a un tema particular: ya que los datos que contienen, están
organizados por temas, totalizados y optimizados para dar respuestas a preguntas
de diversas áreas funcionales de la organización.
Variantes en el tiempo: porque contrario a las Bases de Datos
operacionales que se centran en los datos actuales, las Bodegas de Datos
representan el flujo de información a través del tiempo.
No volátiles: porque una vez que los datos son almacenados, estos nunca
son removidos, ya que representan la historia de la organización. [Luque, A.
(2006)].
Una Bodega de Datos se modela generalmente de forma multidimensional.
Esta organización de la información facilita el análisis de los datos y la concepción
26 de las consultas. El modelo multidimensional como su nombre lo sugiere, consiste
de un conjunto de dimensiones que son asociadas a un fenómeno medible de
interés para una organización, dicho fenómeno es denominado hecho; las
dimensiones han sido tratadas de forma textual (alfanumérica) y las medidas de
un hecho de forma numérica. [Moreno, F y Arango, F. (2007)].
1.4.1.2 VENTAJAS DE LA BODEGA DE DATOS
Entre las ventajas de las bodegas de datos se encuentran:

El usuario final, mejora el acceso a una amplia variedad de datos.

Visualización de datos multidimensional.

La toma de decisiones de negocios pueden obtener diversos tipos de
informes sobre la evolución. Esto puede ser útil para futuras inversiones.

Aumenta la consistencia de los datos.

Aumenta la productividad y reduce los costos de computación.

Combinar datos de diferentes fuentes, en un solo lugar.
1.4.1.3 DESVENTAJAS DE LA BODEGA DE DATOS.
Algunas de las desventajas de las bodegas de datos son:

Extracción, limpieza y carga de datos puede ser mucho tiempo.

La seguridad

Proporcionar capacitación de los usuarios finales. [Ghislaine, N. (2006)].
1.4.2 MINERIA DE DATOS
Desde un punto de vista académico el término data mining es una etapa
dentro de un proceso mayor, llamado extracción de conocimiento en bases de
datos, en el entorno comercial. Lo que en verdad hace la minería de datos es
reunir las ventajas de varias áreas como la Estadística, la Inteligencia Artificial, la
Computación Gráfica, las Bases de Datos y el Procesamiento Masivo,
principalmente usando como materia prima las bases de datos. Una definición
tradicional es la siguiente:
27 Un proceso no trivial de identificación válida, novedosa, potencialmente útil
y entendible de patrones comprensibles que se encuentran ocultos en los datos.
Desde el punto de vista empresarial, lo definimos como: La integración de un
conjunto de áreas que tienen como propósito la identificación de un conocimiento
obtenido a partir de las bases de datos que brinden ayuda hacia la toma de
decisión.
La idea de minería de datos no es nueva. Ya desde los años sesenta los
estadísticos manejaban términos como data fishing, data mining o data archeology
con la idea de encontrar correlaciones sin una hipótesis previa en bases de datos
con ruido. A finales de los años ochenta sólo existían un par de empresas
dedicadas a esta tecnología; en 2002 existen más de 100 empresas en el mundo
que ofrecen alrededor de 300 soluciones. Las listas de discusión sobre este tema
las forman investigadores de más de ochenta países. Esta tecnología ha sido un
buen punto de encuentro entre personas pertenecientes al ámbito académico y al
de los negocios.
La minería de datos es una tecnología compuesta por etapas que integra
varias áreas y que no se debe confundir con un gran software. Durante el
desarrollo de un proyecto se usan diferentes aplicaciones software en cada etapa
que pueden ser estadísticas, de visualización de datos o de inteligencia artificial,
principalmente. Actualmente existen aplicaciones o herramientas comerciales de
minería de datos muy poderosas que contienen un sin fin de utilerías que facilitan
el
desarrollo
de
un
proyecto.
Sin
embargo,
casi
siempre
acaban
complementándose con otra herramienta.
Las técnicas de la minería de datos son el resultado de un largo proceso de
investigación y desarrollo de productos. Esta evolución comenzó cuando los datos
de negocios fueron almacenados por primera vez en computadoras, y continuó
con mejoras en el acceso a los datos, y más recientemente con tecnologías
generadas para permitir a los usuarios navegar a través de los datos en tiempo
real. Minería de datos toma este proceso de evolución más allá del acceso y
navegación de los datos, hacia la entrega de información prospectiva y proactiva.
28 En la evolución desde los datos de negocios a información de negocios,
cada nuevo paso se basa en el previo. Por ejemplo, el acceso a datos dinámicos
es crítico para las aplicaciones de navegación de datos, y la habilidad para
almacenar grandes bases de datos es crítica para la minería de datos.
Los componentes esenciales de la tecnología de Minería de datos han
estado bajo desarrollo por décadas, en áreas de investigación como estadísticas,
inteligencia artificial y aprendizaje de máquinas. Hoy, la madurez de estas
técnicas, junto con los motores de bases de datos relacionales, hicieron que estas
tecnologías fueran prácticas para los entornos de datawarehouse actuales.
Varias herramientas de la minería de datos actualmente operan fuera del
datawarehouse, requiriendo pasos extras para extraer, importar y analizar los
datos. Además, cuando nuevos conceptos requieren implementación operacional,
la integración con el datawarehouse simplifica la aplicación de los resultados
desde la minería de datos. El Datawarehouse analítico resultante puede ser
aplicado para mejorar procesos de negocios en toda la organización, en áreas
tales como manejo de campañas promocionales, detección de fraudes,
lanzamiento de nuevos productos, etc.
El punto de inicio ideal es un datawarehouse que contenga una
combinación de datos de seguimiento interno de todos los clientes junto con datos
externos de mercado acerca de la actividad de los competidores. Este
datawarehouse puede ser implementado en una variedad de sistemas de bases
relacionales y debe ser optimizado para un acceso a los datos flexible y rápido.
1.4.2.1 CARACTERISTICAS Y OBJETIVOS DE LA MINERIA DE
DATOS

Explorar los datos que se encuentran en las profundidades de las bases de
datos, como almacenes de datos, que algunas veces contienen información
almacenada durante varios años.

El entorno de la minería de datos suele tener una arquitectura clienteservidor.
29 
Las herramientas de minería de datos ayudan a extraer el mineral de la
información enterrado en archivos corporativos o en registros públicos,
archivados.

El minero es, muchas veces el usuario final con poca o ninguna habilidad
de programación, facultado por poderosas herramientas indagatorias para
efectuar preguntas adecuadas y obtener rápidamente respuestas.

Hurgar y sacudir a menudo implica el descubrimiento de resultados valiosos
e inesperados.

Las herramientas de la minería de datos se combinan fácilmente y pueden
analizarse y procesarse rápidamente. [Vallejos, S. (2006)].
1.4.2.2 VENTAJAS DE LA MINERIA DE DATOS
A continuación se mencionan algunas de las ventajas de la minería de
datos:
Los modelos son fáciles de entender: Personas sin una importante
experiencia en estadísticas (como un analista financiero o ejecutivos en general)
pueden interpretar el modelo y compararlo con sus propias ideas; recordemos que
en la organización de hoy, son los mismos ejecutivos los que deben “meter las
manos” a las bases de datos para obtener la información que necesitan. Así, el
usuario gana más conocimientos sobre el comportamiento de los clientes y puede
(y debe) usar esta ventaja para optimizar el proceso de negocios de la
organización.
Enormes bases de datos pueden ser analizadas: Estas Bases de datos
pueden ser enormes tanto en largo como en ancho. Por ejemplo, para cada cliente
se puede tener cientos de atributos que contienen información detallada; y
además tener miles de registros de clientes.
La minería de datos descubre información que no se esperaba obtener:
Como muchos modelos diferentes son validados, algunos resultados inesperados
tienden a aparecer. En muchos estudios, se ha descubierto que combinaciones
particulares de factores entregan efectos inesperados que entregan valor a la
compañía.
30 Los modelos son confiables: El modelo es probado y comprobado usando
técnicas estadísticas antes de ser usado, luego las predicciones que se obtienen
por el modelo son válidas y confiables.
Los modelos se construyen de manera rápida: La minería de datos permite
construir y generar modelos en sólo uno minutos u horas. El modelado se torna
mucho más fácil puesto que muchos algoritmos son probados y sólo el mejor
modelo es entregado al usuario. [Suherman, A. (s.f.)].
1.4.2.3 DESVENTAJAS DE LA MINERIA DE DATOS
Estas son algunas de las desventajas de la minería de datos:
Problemas de privacidad. La privacidad personal ha sido siempre una de las
principales preocupaciones en este país. En los últimos años, con el uso
generalizado de Internet, las preocupaciones acerca de la privacidad han
incrementado enormemente. Debido a la privacidad, algunas personas no
compran en Internet. Tienen miedo de que alguien pueda tener acceso a su
información personal y, a continuación, utilizar esa información en una forma poco
ética, por lo que causa daño.
Cuestiones de seguridad. Aunque las empresas tienen una gran cantidad
de información personal disponible en línea acerca de nosotros, no tienen
suficiente en los sistemas de seguridad para proteger esa información. Uno de los
casos se presento en
la compañía Ford Motor de crédito, deberá informar a
13.000 de los consumidores que su información personal incluyendo número de
Seguro Social, dirección, número de cuenta y el historial de pagos se accede por
los hackers que irrumpieron en una base de datos pertenecientes a la
presentación de informes de crédito. Esta incidencia se ilustra que las empresas
están dispuestas a revelar y compartir su información personal, pero no son el
cuidado de la información correctamente. Con tanta información personal
disponible, el robo de identidad puede convertirse en un verdadero problema.
Uso indebido de la información / información inexacta. Obtener tendencias a
través de minería de datos destinados a ser utilizados para fines de mercadotecnia
o para algún otro fin ético, puede ser usurpada. Las empresas contrarias a la ética
31 o la gente pueden utilizarse la información obtenida a través de minería de datos
para aprovechar de las personas vulnerables o discriminadas en contra de un
determinado grupo de personas. Además, la técnica de minería de datos no es un
100 por ciento exacta, por lo tanto, ocurren errores que pueden tener graves
consecuencias. [Suherman, A. (s.f.)].
32 CAPÍTULO II:
BASE DE DATOS ESPACIO-TEMPORALES
En este capítulo se explican lo que son las bases de datos temporales y
espaciales, así como los tipos de datos de estas últimas y su estructura, además
de conocer los lenguajes de consulta y su administrador. También se hace una
comparación entre los lenguajes de consulta espacio-temporales SQLST y Guting
mediante un ejemplo del uso de los mismos, esto, una vez que se ha comprendido
el análisis de este tipo de bases de datos para así llegar a un resultado de dicha
comparación.
2.1 BASES DE DATOS TEMPORALES
Estas Bases de Datos soportan algún tipo de dominio de tiempo manejado
internamente por el sistema administrador de la base de datos.
Existen tres clases de Bases de Datos Temporales en función de la forma
en que manejan el tiempo:
De forma transaccional (transaction time): registran el tiempo de acuerdo al
momento en que se almacena un hecho, es decir, en el orden en que se procesan
las transacciones. Este registro no necesariamente coincide con el tiempo real en
que se produjeron los eventos, mas bien, es acorde al tiempo en que la base tomó
conocimiento del evento. Estas bases de datos no permiten modificar el pasado.
De tiempo vigente o válido (valid time): soportan el tiempo en que el hecho
ocurrió en la realidad, que puede no coincidir con el momento de su registro. El
orden de ocurrencia de los eventos puede diferir del orden de su registro. Este
sistema permite realizar correcciones sobre los datos registrados, es decir que los
estados anteriores se pueden modificar, en dicho caso, solo se mantiene la última
versión de cada estado.
Bitemporales: integran la dimensión transaccional y la dimensión vigente, a
través del versionado de los estados, es decir, cada estado se puede modificar
para actualizar el conocimiento de la realidad pasada, presente o futura, pero esas
34 modificaciones se realizan generando nuevas versiones de los mismos estados.
[Pascal A. (s.f.)]
2.2 BASES DE DATOS ESPACIALES
Las Bases de Datos Espaciales o Multidimensionales ofrecen tipos de datos
espaciales en su modelo de datos y un lenguaje de consulta para manipularlos. En
un sistema informático estos datos espaciales se representan por puntos, líneas,
polígonos, regiones, etc., que se les conoce con el nombre de objetos espaciales.
Para responder a consultas relacionadas con propiedades espaciales, se
implementan algoritmos eficientes sobre índices espaciales creados a partir de
esos objetos. [Pascal A. (s.f.)]
Los datos espaciales son muy particulares ya que cuentan con las
siguientes propiedades:

Tienen una estructura compleja. Un dato espacial puede estar compuesto
de un sólo punto o de varios cientos de polígonos arbitrariamente
distribuidos en el espacio y, por lo tanto, no se pueden almacenar en una
sola tupla.

Las bases de datos espaciales tienden a ser muy grandes. Un ejemplo de
esto es un mapa geográfico puede ocupar varios gigabytes de
almacenamiento.

No existe un álgebra estándar definida sobre los datos espaciales y, por lo
tanto, no existe un conjunto de operadores estandarizados. El conjunto de
operadores es altamente dependiente del dominio de la aplicación, aunque
algunos operadores son más comunes que otros.

La mayoría de los operadores no son cerrados. La intersección de dos
polígonos, por ejemplo, no necesariamente entrega como resultado otro
polígono. Esta propiedad es particularmente relevante cuando se quieren
componer operadores tal como se hace con los operadores relacionales.

El costo computacional de implementar los operadores espaciales es
mucho mayor que los operadores relacionales.
35 2.2.1 TIPOS DE DATOS
Uno de los principales problemas de los tipos de datos espaciales es que es
difícil definir un conjunto de operadores (relaciones) lo suficientemente general
para cubrir todas las aplicaciones. Es decir, los operadores espaciales son
altamente dependientes de la aplicación. Sin embargo, es posible definir algunos
operadores espaciales (por ejemplo la intersección) que son más comunes que
otros.
Un objeto o en una base de datos espacial se define, normalmente,
mediante varios atributos no-espaciales y un atributo espacial de algún tipo.
Para modelar los atributos espaciales de los objetos se utilizan tres
abstracciones fundamentales y que son punto, línea y región o polígono (ver figura
2.1). Un punto representa (el aspecto geométrico) un objeto para el cual sólo
interesa su posición en el espacio. Algunos objetos puntos son hospitales,
edificios, estaciones de trenes, etc. Una línea es una abstracción que se utiliza
para modelar objetos tales como ríos, líneas de trenes, carreteras, líneas
telefónicas, etc. Finalmente, una región permite modelar objetos con cobertura
espacial (spatial extent). Por ejemplo, países, predios agrícolas, etc.
Figura 2.1 Tres tipos de datos espaciales: punto, línea y región.
Existen varios tipos de operaciones sobre objetos espaciales siendo las
más comunes las topológicas, métricas (atributos), y de localización. (Gutiérrez,
G. (2007)].
Las
operaciones
topológicas,
establecen
relaciones
entre
objetos
espaciales las cuales se mantienen ante operaciones de rotación y traslación.
36 Las operaciones o relaciones métricas permiten obtener atributos
numéricos de un objeto espacial o valores entre ellos que los relacionan. Por
ejemplo, el área de una región, la longitud de una línea o la distancia entre dos
puntos o entre una línea y un punto.
Las relaciones de orientación pueden ser básicamente de dos tipos:
absoluta o relativa a un objeto. Las relaciones del primer tipo se definen en el
contexto de un sistema de referencia global. Algunas de estas relaciones son:
norte, sur, este, oeste, sur-este, sur-oeste, etc. Las relaciones en el segundo caso
(relativa a un objeto), se definen en base a un objeto dado. Por ejemplo izquierda,
derecha, arriba, abajo, etc. [Gutiérrez, G. (2007)].
2.2.2 ESTRUCTURA DE DATOS ESPACIALES
Datos Espaciales es el término utilizado para describir los datos que
pertenecen al espacio ocupado por los objetos en las Bases de Datos.
Los datos espaciales consisten del conjunto de objetos espaciales
construidos con: puntos, líneas, regiones, rectángulos, superficies, volúmenes, etc.
Algunos ejemplos pueden ser las ciudades, ríos, estados, etc. Dicho espacio
puede ser discreto o continuo, limitado o no, si el espacio se considera limitado
normalmente se aplica en un rango de 70 * 106mts. Así mismo los datos
espaciales pueden contener datos no espaciales como el nombre de ciudad, sus
habitantes, etc.
Las consultas que pueden ser hechas sobre este tipo de datos suelen
involucrar relaciones entre los objetos, dadas por su ubicación u ocupación en el
espacio, lo cual indica que la consulta es espacial. Para responder consultas
espaciales se utilizan los métodos espaciales de indexación, como ejemplo,
encontrar todas las ciudades dentro de una región. Los métodos se clasifican
como de puntos multidimensionales (MAPM) y espaciales (MAE). [Besembel, I.
(2004)].
37 2.2.3 DEFINICION DE OBJETOS ESPACIALES
Los motores de bases de datos espaciales (SDBMS), como Oracle Spatial y
PostGIS, adoptan el estándar para la definición de objetos espaciales del
OpenGIS: OpenGIS: Simple Features Specification for SQL.
El modelo conceptual de los objetos espaciales está formado por tres tablas:
GEOMETRY_COLUMN,
FEATURE_TABLE,
SPATIAL_REF_SYS.
Como
se
muestra en la tabla 2.1
GEOMETRY_COLUMNS
SPATIAL_REF_SYS
F_TABLE_CATALOG
SRID
F_TABLE_SCHEMA
AUTH_NAME
F_TABLE_NAME
SRTEXT
F_GEOMETRY_COLUMN
PROJ4TEXT
COORD_DIMENSION
FEATURE_TABLE
<ATRIBUTOS>
GID (Geometry column)
<ATRIBUTOS>
SRID
TYPE
Tabla 2.1 Modelo conceptual de objetos espaciales.
A través de estas tablas se puede conocer:

El nombre de la tabla donde se encuentra el elemento espacial
(F_TABLE_NAME)

El nombre del atributo que define la geometría (F_GEOMETRY_COLUMN)

Tipo
de
Geometría
(TYPE):
point,
linestring,
polygon,
multipoint,
multilinestring, multipolygon, geometrycollection.

Las coordenadas que definen el elemento espacial almacenadas en la
columna geométrica (GID) usando el estándar Well-known text (WKT)
Sistema de referencia espacial (SRID).

La dimensión espacial (COORD_DIMENSION).
38 2.2.3.1 DEFINICION DE FUNCIONES ESPACIALES
El estándar para la implementación de objetos espaciales del OpenGIS
define tres categorías de funciones: (1) básicas, (2) consulta de relación espacial y
(3) análisis. Como se muestra en la tabla 2.2.
TIPO
FUNCION
POSTGIS
1
Tipo de Geometría
Geometrytype (geometry):string
1
Dimensión
Dimension (geometry): integer
1
Sistema de Referencia
Srid (geometry): integer
1
Geometría en formato WKT
Astext (geometry): text
2
Disjuntos
Disjoint (geomtry, geometry): bool
2
Intersección
Intersects (geometry, geometry): bool
2
Adyacencia
Touches (geometry, geometry): bool
3
Intersección
Intersection (geometry, geometry): geometry
3
Unión
Geomunion (geometry, geometry): geometry
3
Buffer
Buffer (geometry, float8[int ,4]): geometry
Tabla 2.2 Estándar para la implementación de objetos espaciales
2.2.3.2 ACCESO A LOS DATOS ESPACIALES
El acceso a los datos espaciales a través de lenguaje SQL está limitado a
un grupo reducido de usuarios.
Existen numerosas alternativas de software libre (OpenSource) que
incorporan capacidades de conexión con bases de datos espaciales y en especial
con PostGIS.

Sistemas de información geográfica de escritorio: GvSIG, Quantum-GIS

Sistemas servidores de datos: MapServer, GeoServer

Paquetes de librerías
39 Algunos de estos software permiten recuperar datos espaciales desde un
repositorio de datos espaciales para convertirlo en un Shape y vise versa.
[Gutiérrez, M (s.f.)]
2.2.4 LENGUAJES DE CONSULTAS ESPACIALES
Los lenguajes visuales de consultas espaciales se distinguen por la utilidad
que les brindan a los usuarios, destacando el uso de representaciones o íconos
metafóricos, permitiendo una facilidad y amigabilidad a las aplicaciones
computacionales, por ejemplo para las consultas espaciales.
Las indicaciones para este tipo de lenguajes de consultas son los
siguientes:

La implementación de las representaciones gráficas, los diálogos que
utilizan dispositivos de selección, leyendas y variantes de presentación
gráfica como por ejemplo los colores, patrones, y símbolos.

La utilidad de SQL para las bases de datos espaciales como lo demuestra
GEOQL en cuya estructura se indica y añade el concepto de geometría en
términos de los límites de líneas de objetos espaciales, operadores
espaciales entre objetos geográficos.
Un ejemplo de lenguaje de este tipo es GPL (Graphical Presentation
Language) que se encarga de mostrar un despliegue que maneja la información
acerca de la elaboración de consultas y las secciones que constan la estructura de
este lenguaje son las siguientes:
1.-Modo de despliegue: se encarga de proporcionar los resultados de las
consultas en un dibujo sencillo.
2.-Variables visuales: estas variables son los colores, patrones y símbolos que
permiten especificar la presentación gráfica de los objetos espaciales.
3.-Escala y Ventana: se refieren a la proporción o área donde la presentación
gráfica será desplegada.
40 4.-Contexto: es la interpretación de una representación gráfica con base al
ambiente que se tenga.
5.-Contenido: es la combinación lógica de las consultas que se elaboren y
pueden ser mostradas en un dibujo sencillo, como consecuencia se tendrá un
mecanismo de control y quien asume la función de control es el usuario porque
examina lo que se demuestra la combinación mencionada.
Otros aspectos son los sistemas de bases de datos espaciales y no
espaciales denominado SAND (Spatial and Nonspatial Database) la finalidad de
éstos es separar el almacenamiento de esos tipos de datos. Las características de
éste son las siguientes:

Estrategias: éstas extienden el enfoque no espacial para efectuar
operaciones espaciales.

Evaluaciones: se refiere al orden de las operaciones espaciales,
escogiendo primero entre el desempeño de los datos espacial y no
espacial, es decir, al utilizar índices en ambos tipos de datos y segundo al
ejecutar las operaciones espaciales mientras se accesa a los datos.
Además el enlace entre los datos espaciales y no espaciales es
bidireccional. Indican unión como sigue:
La estructura de un dato espacial es asociada con cada atributo no espacial
en un esquema que se utilice para guardar todas las instancias de los datos de los
atributos espaciales de acuerdo a un conjunto de objetos homogéneos. Esta
estructura sirve como un índice para los objetos espaciales y es un ambiente para
la ejecución de las relaciones espaciales.
Los enlaces son denominados como ‘forward’ y ‘backward’, el primero se
usa para recuperar la información espacial de un objeto con respecto a la
información no espacial de un objeto y el segundo obtiene la información no
espacial de un objeto que está almacenado en una tupla, éste es mediante el
identificador (id) de la tupla, la representación para estos enlaces se muestran en
las figuras 2.2. y 2.3
41 Nonspatial attributes Spatial data structure region1 non_spatial data
region1
region2 non_spatial data
region2
region2 non_spatial data
region2
region3 non_spatial data
region3
region4 non_spatial data
region4 Figura 2.2 Enlace ‘forward’ para la relación de regiones
Nonspatial attributes Spatial data structure region1 non_spatial data
region2 non_spatial data
region1
region2
region2 non_spatial data
region2
region3 non_spatial data
region3
region4 non_spatial data
region4 Figura 2.3 Enlace ‘backward’ para la relación de regiones
42 GEOQL utiliza operadores espaciales y trabaja con un sistema de
administración de base de datos basado en SQL, la relación espacial es
únicamente a un atributo espacial, considera datos espaciales y no espaciales.
Las consultas se efectúan en cuatro etapas:
1.-Transformación lógica para eliminar limitantes redundantes y construir un
árbol de consultas de modo que los índices espaciales sean utilizados.
2.-Descomponer las particiones del árbol para que las subconsultas
espaciales y no espaciales sean elaboradas.
3.-Ejecución de alguna de las subconsultas anteriores.
4.-Con base a una subconsulta espacial, ésta es llevada a cabo por un
procesador espacial auxiliar y que forma parte de el DBMS extendido y almacena
los atributos espaciales.
GRAL este es un sistema de bases de datos con tipos de datos
geométricos y un lenguaje de consultas geométricas denominado geo-algebra
relacional que efectúa el proceso de transformación y traducción de expresiones
algebraicas, el formalismo empleado es distinto al Modelo de 9 intersecciones,
facilitan la inclusión de nuevos tipos de datos espaciales y operaciones.
Los datos que se ocupan para las consultas son espaciales y no espaciales,
la manera para usarlos es la siguiente:
La estructura de datos espaciales es un filtro que produce un conjunto de
objetos y con la estructura de datos no espaciales es posible refinar la descripción
de los objetos y posteriormente producir el resultado.
2.2.4.1 IMPLEMENTACIONES DE CONSULTAS ESPACIALES
Un objeto espacio-temporal se representa por un identificador de tipo de
objeto geométrico (punto, línea, polígono), un conjunto de atributos y una lista que
indica los estados por los que puede pasar un objeto. Los atributos pueden
cambiar en los diferentes estados de un objeto y permiten dar una semántica a los
objetos geométricos. La descripción del objeto geométrico indica también su
43 localización y representa su dinámica (la movilidad de un objeto). La localización
temporal está representada en la lista de estados. Algunos objetos espaciotemporales con un valor llamado ‘que no cambia’ son las capas geológicas,
porque no cambia en tiempo, sin embargo pudiera ocurrir para cualquier validez
temporal permanente. Es decir, por las variaciones que éstas en un momento
dado sufren. Este modelo permite también que los atributos que describan a un
objeto sean multivaluados.
Las
consultas
espacio-temporales
se
pueden
efectuar
tomando
adicionalmente la representación temporal basada en intervalos. En los intervalos
se pueden representar cambios en los atributos que describen un objeto. Un
ejemplo de consulta que se puede realizar consiste en identificar el estado de una
carretera inundada y el tiempo que un vehículo llegará a esa zona inundada. Los
conductores de los vehículos pueden tomar decisiones en cuanto detenerse o dar
marcha atrás y buscar alguna opción.
Para el modelo topológico se usan cuatro elementos geométricos como
tipos de datos elementales de la parte geométrica, los cuales son: punto, línea,
superficie y volumen.
La posición y forma de los elementos geométricos están descritas por
vectores. [Gutiérrez, M (s.f.)]
2.2.5 ADMINISTRACION DE BASE DE DATOS ESPACIALES
2.2.5.1 ORACLE SPATIAL 11G
Oracle ofrece la plataforma líder del sector para la administración de bases
de datos espaciales. Oracle Spatial 11g incluye soporte nativo en Oracle Database
11g para todo tipo de datos y modelos geoespaciales, incluso los datos de
vectores y raster, y modelos para topología y redes, cubriendo así las necesidades
de los sistemas geoespaciales avanzados, como la administración de suelos,
servicios y la seguridad interna/de defensa. Con 11g, Oracle Spatial es
verdaderamente una plataforma completa para la administración de datos
44 geoespaciales– con soporte de los datos 3D que se encuentran en aplicaciones
como la planificación urbana, la seguridad interna, y sistemas para producción de
mapas basados, así como soporte de servicios web geoespaciales para una
plataforma segura y sólida de la arquitectura orientada a servicios. El soporte
espacial nativo y abierto de Oracle elimina el costo de sistemas separados, de
propiedad, y es respaldado por todos los proveedores geoespaciales líderes. Solo
Oracle ofrece seguridad, desempeño, escalabilidad y capacidad de administración
líderes para los activos espaciales críticos almacenados en los tipos nativos de
Oracle. Oracle brinda la plataforma de base de datos espacial más avanzada para
implementaciones de tipo empresarial. Este informe destaca las características de
Oracle Spatial, e incluye las nuevas características de 11g.
Oracle Spatial 11g, una opción de Oracle Database Enterprise Edition,
extiende Locator, y ofrece una base sólida para aplicaciones geoespaciales
complejas que requieren más análisis y procesamiento espacial en Oracle
Database. Oracle Spatial 11g es una plataforma completa para la administración
de datos geoespaciales que tiene como fin cumplir con los requerimientos de
cualquier sistema de información espacial o geoespacial. Soporta los principales
tipos y modelos de datos espaciales, y supera los desafiantes requerimientos
críticos para los negocios del sector público, defensa, logística, exploración de
energía y ámbitos geográficos de negocio, y áreas como las ciencias biológicas.
Las características de Oracle Spatial incluyen:
• Avanzado sistema para referencias lineales
• Más de 400 funciones espaciales como centroides y agregados (por
ejemplo uniones y agregados definidos por usuarios)
• Tipos de datos GeoRaster que administran nativamente imágenes raster
georeferenciadas (por ejemplo: imágenes satelitales, datos en grid) de
Oracle Database 11g
• Soporte de más formatos de archivo para la carga y exportación,
más metadatos y tipos de datos (nuevo en 11g)
• Mejor facilidad de uso, confiabilidad y capacidad de administración
(nuevo en 11g)
45 • Un modelo de datos para almacenar y analizar la estructura de red
(gráfico)
• Carga a pedido para redes espaciales muy grandes (nuevo en 11g)
• Características avanzadas de análisis y modelos, como el manejo
de base de datos por parte de los usuarios o atributos específicos
de aplicaciones, soporte aritmético de procesos, planificación de
duración (nuevo en 11g)
• Un modelo o esquema de datos para almacenar y actualizar
persistentemente la topología
• Funciones analíticas espaciales
• Soporte de tipos de datos de 3 dimensiones para modelos de ciudades y
terrenos, y mundo virtual, soporte de producción de mapas.
• Soporte de servicios web espaciales (WFS 1.0, WFS-T 1.0, CSW 2.0,
OpenLS 1.1, seguridad de servicios web) (nuevo en 11g)
• API Java espacial.
Oracle Spatial se integra directamente con los proveedores de tecnología
líderes para servicios de localización, mapeo y geoespacio. Debido a que los tipos
de datos espaciales de Oracle son compatibles con los estándares abiertos,
Oracle puede servir como repositorio central e interoperable de datos
geoespaciales para proporcionar datos a cualquier aplicación.
Los datos espaciales pueden compartirse más fácilmente entre los
departamentos y las organizaciones, y en toda la empresa, de manera que usted
pueda obtener un mayor retorno de los activos de datos espaciales y aún así
reducir los costos.
Para sus activos de datos espaciales críticos, solo Oracle puede brindar la
seguridad, escalabilidad y el desempeño de la base de datos líder en la industria,
para administrar datos multiterabyte y brindar servicios a comunidades con
escenas o miles de usuarios. Únicamente utilizando el tipo de dato espacial nativo
de Oracle se pueden aprovechar estas características:
• Soporte de particionamiento para índices espaciales
46 • Consultas espaciales paralelas
•Replicación (algunas características disponibles únicamente con Enterprise
Edition)
• Seguridad espacial de múltiples niveles. [Ihm, J. (2007)].
2.3 BASES DE DATOS ESPACIO-TEMPORALES
Las Bases de Datos que guardan objetos espaciales que cambian su
tamaño y/o posición a través del tiempo se llaman Bases de Datos EspacioTemporales (BDET). Se requiere que una BDET sea capaz de representar
modelos muy cercanos al mundo real, con todo el dinamismo que él implica, y
administrar objetos que, básicamente, cambian su ubicación y/o forma a través del
tiempo. Un aspecto importante de los movimientos de los objetos, es el escenario
en el que éstos ocurren. Para categorizar varios enfoques de indexado se han
usado tres escenarios diferentes:
1.- Movimiento sin restricciones: es aquel donde los objetos se mueven
libremente dentro de la región en la que se encuentran.
2.- Movimiento restringido: en este escenario el movimiento de los objetos se
encuentra restringido por elementos denominados infraestructuras, las cuales
representan áreas “apagadas” para el movimiento y, de esta manera, no existen
trayectorias donde hay este tipo de elementos. Se debe tener en cuenta que sobre
estas áreas no es posible rutear objetos permitiendo movimientos en el resto del
escenario.
3.- Movimiento restringido a redes: al tener una red predefinida, los objetos que
se mueven en ella tienden a seguir los diferentes caminos que la misma presenta.
[Giraudi D, Peñalver G. y Retamal G. (s.f)]
La información geográfica se utiliza cada vez mas como apoyo en
diferentes tipos de aplicaciones y en distintos niveles organizativos (operativo,
táctico y estratégico), pero las necesidades de los usuarios en relación al uso de la
información geográfica son mucho más complejas. Estas necesidades están
47 representadas en el tiempo y el espacio, es decir se trata de la explotación de
Bases de Datos Espacio–Temporales.
Las Bases de Datos Espacio-Temporales están compuestas de objetos
espaciales que cambian su posición y/o forma a lo largo del tiempo. El objetivo es
modelar y representar la naturaleza dinámica de las aplicaciones en el mundo real.
Algunos ejemplos de estas aplicaciones se pueden encontrar en el ámbito del
transporte, medioambiental y en aplicaciones multimedia. [Gutiérrez, M (s.f.)]
Existe un marco conceptual para la representación del análisis espacio–
temporal. Esta estructura está compuesta de tres dominios: el dominio semántico
(descriptivo), el dominio temporal y el dominio espacial. Las relaciones entre los
tres dominios establecen todas las posibilidades asociadas que permiten definir
las consultas en información geográfica.
Las consultas descriptivas (dominio semántico) corresponden a las
consultas que se realizan habitualmente con los sistemas de gestión de datos
tradicionales. Por ejemplo, basta con efectuar las consultas sobre los atributos
descriptivos (para una ciudad: el nombre, la población, el condado, la actividad
económica, etc) para obtener la información descriptiva requerida.
Las consultas espaciales (dominio espacial) se refieren a la medida de las
dimensiones de una entidad geométrica (longitud, área, volumen) o entre las
entidades geométricas (distancia, dirección). También se trata de la determinación
de la presencia o ausencia de relaciones espaciales que existe entre las entidades
geométricas (división, intersección).
Las consultas temporales (dominio temporal) se refieren a la medida de
todas las dimensiones temporales de un objeto (duración), estas consultas
también definen la ausencia o la presencia de relaciones temporales que existe
entre los objetos. [Cely W., y Bedard Y., (s.f.)]
Las Bases de Datos Espacio-Temporales integran características de las
bases de datos espaciales o multidimensionales, con características de las bases
48 de datos temporales, para permitir de manera eficiente consultas que involucran
ambos aspectos. Una aplicación común por este modelo es la que realiza el
seguimiento de objetos en movimientos que reporten su ubicación mediante
dispositivos GPS. En otras aplicaciones, en lugar de cambiar de ubicación los
objetos pueden cambiar de forma e incluso de identidad.
Los sistemas de Bases de Datos Espacio–Temporales mantienen datos
sobre el pasado y el presente y pueden, en algunos casos, realizar predicciones
sobre el futuro. Las consultas típicas son de dos clases: time slice queries y time
interval (o windows queries). Las primeras consultas se realizan sobre un
momento dado, como por ejemplo “buscar todos los objetos que estén en un área
en un instante determinado”, mientras que las segundas, consultan un intervalo de
tiempo, “buscar todos los objetos que crucen un área entre el momento T1 y el
momento T2” algunas consultas sólo tienen sentido sobre el pasado, otras sólo
sobre el presente, otras sobre el futuro y otras sobre cualquiera de los tres.
Los métodos de acceso en bases de datos espacio-temporales se pueden
clasificar en tres grupos, de acuerdo al tipo de consulta hacia el cual están
orientados:
Recuperación de información histórica: estos métodos permiten responder a
las consultas time slice query y interval query sobre el pasado.
Recuperación de trayectoria: en este caso se requiere mantener la
trayectoria que siguen objetos en movimiento.
Predicción de localización: estos métodos permiten calcular la posición
futura de los objetos, en base a su posición actual y su patrón de movimiento.
Otra clasificación de los métodos de acceso es según la estrategia de
implementación que utilizan:

Métodos que tratan el tiempo como otra dimensión.

Métodos que incorporan información sobre el tiempo en el índice

Métodos que utilizan superposición (overlapping) de la estructura, para
representar la secuencia de estados en función del tiempo. [Pascal A. (s.f.)]
49 2.3.1 ANALISIS ESPACIO–TEMPORAL
Las consultas espacio–temporales utilizan las propiedades temporales y
espaciales de un objeto así como relaciones temporales y espaciales a partir de
las primitivas (temporales y geométricas) de los objetos. Podemos clasificar el
análisis espacio–temporal según el nivel de detalle de los datos geográficos
(detallados vs. agregados), el nivel de complejidad (uní-temático vs multi-temático)
y el alcance temporal de los datos (uní- época vs. multi-época).
Algunos ejemplos de estos análisis son:

Análisis de los distintos tipos de accidentes en función de su posición en la
red de carreteras, el estado de la calzada, el tipo de pavimentación, etc.

Análisis de las estadísticas de los estudiantes según su origen, ultimo titulo,
fecha de inscripción, etc.

Análisis de investigación y rescate de náufragos según la posición, las
características de las embarcaciones, las condiciones climáticas, etc.

Análisis del resultado de los atletas de velocidad en función su posición,
trayectoria, condición de tiempo, técnica, velocidad, etc. [Cely, W y Bedard,
Y. (s.f.)]
2.3.2 LENGUAJES DE CONSULTA ESPACIO-TEMPORALES
2.3.2.1 SQLST
SQLST es un lenguaje para el manejo de información espacio-temporal. Es
una extensión minimalista del SQL estándar, ya que preserva su estructura y sólo
añade tipos de datos temporales (DAY), espaciales (POINT,LINE y REGION) y
operadores (ÁREA, OVERLAP, MOVING_DISTANCE). SQLST es una extensión
de SQL, un lenguaje de consulta para el manejo de información temporal. El
tiempo se representa discretamente, así los cambios de las geometrías, ya sea en
forma o posición, son discretos.
50 2.3.2.2 EL LENGUAJE DE GUTING
Se ha propuesto un lenguaje de consulta para el manejo de objetos móviles
(se soportan cambios continuos de las geometrías, ya sea en forma o posición).
Además de tipos de datos móviles como MBOOL, MINTEGER,MPOINT,
MLINE y MREGION, que combinan los tipos de datos primitivos (BOOLEAN,
INTEGER) o espaciales (POINT, LINE y REGION) con información temporal. El
lenguaje es de tipo SQL, aunque presenta un carácter procedural ya que posee
construcciones como la asignación de variables.
2.3.2.3 COMPARACION DE LOS DOS LENGUAJES DE CONSULTA
Las bases de datos espacio-temporales tratan con objetos que cambian de
posición o forma a medida que transcurre el tiempo. Estos objetos son adecuados
para representar y registrar la evolución de planetas, propiedades urbanas,
personas, animales, autos, barcos, aviones, huracanes, tumores, glaciares, entre
otros.
Se han propuesto diversos lenguajes de consulta para este tipo de bases
de datos, por ejemplo SQLST, el de Guting, el de Chomicki y STQL. Solo se
analizaran los dos primeros mediante un conjunto de consultas y de criterios con
el fin de evidenciar sus ventajas y desventajas.
Para comparar ambos lenguajes se considera una siguiente lista de
criterios. Sin embargo, tal lista es necesariamente controversial, ya que algunos
criterios son vagos o no exactamente medibles; además, algunos son
complementarios y otros pueden estar en conflicto.
Expresividad (expressiveness): se refiere a si el lenguaje ofrece
operaciones “poderosas”, es decir, que realicen procesos complejos y que por lo
tanto generan consultas concisas.
Verbosidad (writability): trata de qué tan rápido, conciso y claramente se
pueden expresar los procesos deseados en el lenguaje. “El lenguaje debe ofrecer
un conjunto de abstracciones y construcciones que estén apropiadamente
adaptadas a las habilidades mentales, hábitos y limitaciones del usuario”
51 Legibilidad (readability): alude a qué tan fácil es comprender el significado
de una consulta escrita en el lenguaje. Se debe considerar si el lenguaje se acerca
al lenguaje natural, si la consulta fue escrita en un lenguaje no diseñado para un
propósito determinado (por ejemplo, programar operaciones matriciales en SQL).
Además, hay aspectos que no dependen del lenguaje sino del programador: su
grado de conocimiento del lenguaje y la posibilidad de escribir mal en un lenguaje.
Cierre (closure): se cumple cuando todas las operaciones retornan un
elemento propio del modelo de datos que soporta al lenguaje. Por ejemplo, el
álgebra relacional es cerrada porque todas sus operaciones retornan y trabajan
con relaciones. Este aspecto facilita la escritura de expresiones anidadas y evita
funciones de conversión (casting) y comportamientos inesperados.
Seguridad (safety): implica que toda consulta retorna una cantidad finita de
resultados. Este criterio se relaciona con la confiabilidad (reliability): estrictamente
una consulta debe hacer sólo lo que se le pide y no generar comportamientos
inesperados ni ambigüedades. Los resultados han de ser correctos de acuerdo
con la información disponible y las condiciones impuestas por el programador.
Simplicidad (simplicity): se refiere a que las construcciones y la sintaxis del
lenguaje deben ser fáciles de entender y no haber ambigüedades. Este criterio se
relaciona con la uniformidad (uniformity): las construcciones similares del lenguaje
exigen escribirse en forma similar. La simplicidad también se afecta por el número
de construcciones esenciales que tiene un lenguaje y por el número de las que
posee la misma función, lo que podría confundir a pesar de su utilidad. Por
ejemplo, la condición de una reunión (join) en SQL se puede escribir usando las
cláusulas INNER JOIN o WHERE.
Portabilidad (portability): se refiere a qué tan independiente es el lenguaje
de un producto (Oracle, SQL Server, DB2), es decir, el lenguaje se debe poder
implantar en cualquier sistema de gestión de bases de datos (SGBD) y carecer de
aspectos propietarios.
52 2.3.2.4 EJEMPLOS
A continuación se exhibe un caso ejemplo con cuatro consultas en ambos
lenguajes. Considérese un escenario de incendios forestales. Se maneja
información sobre bosques, incendios y bomberos. Sean las relaciones bosque,
incendio y bombero. Una muestra de datos se despliega en las Tablas 2.3, 2.4 y
2.5 para SQLST y en las tablas 2.6, y 2.7 para el lenguaje de Guting.
En SQLST:
-CREATE TABLE bosque (nombre CHAR (30), territorio REGION)
BOSQUE
NOMBRE
TERRITORIO
Verde
Santa Elena
Tabla 2.3 Muestra de datos de la relación bosque para SQLST y para el lenguaje de Guting
-CREATE TABLE incendio (nombre CHAR (30), extensión REGIÓN, día DAY)
En la Tabla 2.4 se muestra el valor del área de cada incendio (en km2). Este
valor, aunque no es un atributo de la relación bosque, se puede obtener por medio
de la función AREA de SQLST.
53 INCENDIO
NOMBRE
GRAN L
GRAN L
GRAN L
GRAN L
AZUL
AZUL
EXTENSION
DIA
(Área: 315)
5/7/06
(Área: 503)
6/7/06
7/7/06
(Área: 503)
7/7/06
(Área: 114)
24/3/06
(Área: 710)
25/3/06
(Área: 480)
Tabla 2.4. Muestra de datos de la relación incendio para SQLST
-CREATE TABLE bombero (nombre CHAR(30), ubicación POINT, día DAY)
El atributo ubicación representa la localización puntual del bombero durante
un día en el plano bidimensional. Dichos puntos se representan con letras en la
Tabla 2.5 para facilitar su referencia posterior.
BOMBERO
NOMBRE
UBICACIÓN
DIA
T. Montoya
A (31,52)
4/7/06
T. Montoya
B (40,47)
6/7/06
T. Montoya
C (34, 24)
7/7/06
J. Vélez
D (21,75)
6/8/07
J. Vélez
E (30, 66)
7/8/07
J. Vélez
F (34, 41)
9/8/07
Tabla 2.5. Muestra de datos de la relación bombero para SQLST
54 En el lenguaje de Guting:
-Bosque (nombre: STRING, territorio: REGION)
La muestra de datos de la relación bosque es la misma que la de la Tabla
2.3
-Incendio (nombre: STRING, extensión: MREGION)
-Bombero (nombre: STRING, ubicación: MPOINT)
INCENDIO
NOMBRE
EXTENSION
{(5/7/06,
), (6/7/06,
),
GRAN L
(7/7/06,
AZUL
), (7/7/06,
{(24/3/07 ,
) , (25/3/07 ,
)}
)}
Tabla 2.6. Muestra de datos de la relación incendio para el lenguaje de Guting
BOMBERO
NOMBRE
UBICACIÓN
T. Montoya
{( 4/7/06, A ), (6/7/06 , B ), (7/7/06 , C )}
J. Vélez
{( 6/8/07, D ), (7/8/07, E ), (9/8/07, F )}
Tabla 2.7. Muestra de datos de la relación bombero para el lenguaje de Guting
En la Tabla 2.7 se representa la ubicación puntual de cada bombero
mediante letras. Sus coordenadas son las mismas de las de la Tabla 2.5.
55 2.3.2.4.1 CONSULTAS
A partir de las tablas de la sección anterior se plantean las siguientes
consultas; se resuelven primero en SQLST y luego en el lenguaje de Guting.
Consulta 1: ¿Cuándo y dónde alcanzó el incendio “Gran L” su máxima
extensión?
Consulta 2: ¿Cuándo y dónde se expandieron los incendios más de 500
km2?
Consulta 3: ¿Cuánto tiempo estuvo el bombero “T. Montoya” dentro del
incendio “Gran L” y cuánta distancia recorrió dentro del mismo?
Consulta 4: Determinar el momento y el lugar donde se inició el incendio
“Gran L”.
Consulta 1.
SQL ST
SELECT F1.día, F2.extensión, AREA(F1.extensión)
FROM incendio AS F1 F2
WHERE F1.nombre =”Gran L” AND F2.nombre = ”Gran L” AND F1.día = F2.día
GROUP BY F1.día
HAVING AREA (F1.extensión) = (SELECT MAX(AREA(extensión))
FROM incendio
WHERE nombre =”Gran L”)
Nótese que el atributo F2.extensión aparece en la cláusula SELECT pero
no en la cláusula GROUP BY. Esto es válido porque el atributo de agrupamiento
F1.día lo determina funcionalmente. Por otra parte, en la cláusula HAVING
aparece la función ÁREA, que no es una función de grupo, lo que es inválido en
un lenguaje tipo SQL.
En la cláusula FROM se reúne la relación incendio consigo misma (selfjoin). En la cláusula WHERE se eliminan las tuplas que no tienen la misma fecha
en el atributo día y las que no tienen el valor “Gran L” en el atributo nombre (SQLST
y el lenguaje de Guting usan comillas dobles para las cadenas de caracteres, a
56 diferencia de SQL, que utiliza comillas simples). El resultado de la consulta se
muestra en la Tabla 2.8.
F1.día
F2.extension
AREA
6/7/06
503
7/7/06
503
Tabla 2.8. Resultado de la consulta 1 en SQLST
Guting:
i) LET GranL = ELEMENT(SELECT extensión
FROM incendio
WHERE nombre = "Gran L");
ii) LET max_area = INITIAL(ATMAX(AREA(GranL)));
iii) ATINSTANT(GranL, INST(max_area)); VAL(max_area)
La consulta se compone de tres partes. En la primera, la función ELEMENT
convierte el resultado en un valor atómico y lo asigna a la variable Gran L
mediante el operador LET; por lo tanto, la variable Gran L contiene el atributo
extension, de tipo MREGION, del incendio “Gran L”. ELEMENT sólo se puede usar
en una consulta que devuelva una tupla y un atributo. El contenido de Gran L se
muestra en la figura 2.4
{(5/7/06,
(7/7/06,
), (6/7/06,
), (7/7/06,
),
)}
Figura 2.4. Contenido de Gran L
En la segunda parte se busca la mayor área en Gran L. Si hay empates en
el valor máximo, se escoge el de fecha más antigua usando la función INITIAL. El
57 resultado se asigna a la variable max_area. La consulta 1 presentada en SQLST,
en contraste, retorna todos los casos (empates) en los que el área fue la máxima
(véase la Tabla 2.8).
En la tercera parte se retornan los resultados:
-ATINSTANT(GranL, INST(max_area)): retorna el día en que el área del incendio
fue máxima. Se retorna el 6/7/06 (aunque el 7/7/06 también se alcanzó el área
máxima).
-VAL(max_area): retorna el valor (área) de max_area (503 km2).
El resultado de la consulta se muestra en la Tabla 2.9.
ATINSTANT
VAL
6/7/06
503
Tabla 2.9. Resultado de la consulta 1 en el lenguaje de Guting.
Consulta 2.
SQL ST
SELECT F1.día, F2.extensión
FROM incendio AS F1 F2
WHERE F1.día = F2.día AND F1.nombre = F2.nombre
GROUP BY F1.día, F2.extensión, F1.nombre
HAVING AREA(F1.extensión) > 500
De nuevo se efectúa un self-join de la relación incendio. La cláusula
WHERE elimina las tuplas que no cumplen la condición F1.día =F2.día y
F1.nombre=F2.nombre y la cláusula HAVING selecciona las tuplas cuya área de
F1.extensión es mayor que 500 km2. El resultado de la consulta se muestra en la
Tabla 2.10.
58 F1.día
F2.extension
6/7/06
7/7/06
24/3/07
(Área: 503)
(Área: 503)
(Área: 710)
Tabla 2.10. Resultado de la consulta 2 en SQLST
Guting:
i) LET reg_grande = SELECT a_grande AS extensión WHEN[FUN(r:region)
AREA(r) > 500]
FROM incendio;
ii) SELECT *
FROM reg_grande
WHERE NOT (ISEMPTY(DEFTIME(a_grande)));
La primera parte de la consulta reduce la MREGION (atributo extensión) de
cada incendio a las parejas (tiempo, región) en las que el área de la región es
mayor que 500 km2. Para ello se usa el operador WHEN, que restringe un valor
que dependa del tiempo a los periodos en que cumple cierta condición. El
argumento de WHEN es un predicado que expresa la restricción. Aquí el
predicado se construye mediante el operador FUN así: FUN <argumentos>
<expresión>. Por ejemplo, la siguiente función calcula el cuadrado de un número:
LET square = FUN (m:integer) m * m;
Nótese que en el lenguaje de Guting el orden de los argumentos del
operador de renombrado AS es contrario a como se realiza en SQL. Por lo tanto,
en el atributo a_grande, se tienen las MREGION de los incendios luego de realizar
la restricción. Este resultado se guarda en la variable reg_grande, como se
muestra en la Tabla 2.11.
59 reg, grande
a_grande
{(6/7/06,
), (7/7/06,
{(24/3/07 ,
)}
)}
Tabla 2.11. Contenido de reg_grande
La segunda parte de la consulta considera si un incendio nunca alcanzó
más de 500 km2. Para detectar estos casos, la cláusula WHERE revisa las fechas
de cada incendio. Para ello se usa la función DEFTIME; esta retorna los tiempos
en los que un objeto móvil está definido. En otras palabras, al aplicar DEFTIME a
a_grande, la función recorre la MREGION de cada incendio y extrae el tiempo de
cada pareja (tiempo, región). El resultado de la consulta corresponde al de la
Tabla 2.11.
Consulta 3.
SQL ST
SELECT DURATION (bombero. día),
MOVING_DISTANCE (bombero.ubicación,bombero.día)
FROM incendio, bombero
WHERE incendio.día = bombero.día AND
incendio.nombre = ”Gran L” AND
bombero.nombre = ”T. Montoya”
GROUP BY incendio.día
HAVING INSIDE (bombero.ubicación, incendio.extensión)
A partir del producto cartesiano entre las relaciones incendio y bombero, la
cláusula WHERE selecciona las tuplas en las que el nombre del bombero es “T.
Montoya”, el nombre del incendio es “Gran L” y las fechas del incendio y del
bombero coinciden. Hasta aquí se obtiene el resultado de la Tabla 2.12.
60 INCENDIO
NOMBRE
EXTENSION
BOMBERO
DIA
NOMBRE
UBICACIÓN
DIA
Gran L
5/7/06
T. Montoya
A
5/7/06
Gran L
6/7/06
T. Montoya
B
6/7/06
Gran L
7/7/06
T. Montoya
C
7/7/06
Gran L
7/7/06
T. Montoya
C
7/7/06
Tabla 2.12 Resultado parcial de la consulta 3 en SQL
La cláusula HAVING elimina la tupla sombreada de la Tabla 2.11, así: se
usa la función INSIDE, que toma como argumentos un punto y una región y
retorna un valor lógico que indica si el punto se encuentra en la región.
De acuerdo con la muestra de datos, Tablas 2.4 y 2.5, supóngase que los
datos espaciales se encuentran distribuidos como se muestra en la Figura 2.5,
para el bombero “T. Montoya” y el incendio “Gran L”.
Figura 2.5 Ubicación del bombero “T. Montoya” y del incendio “Gran L”: a) punto A y región
de 315 km2 el 5/7/06, b) punto B y región de 503 km2 el 6/7/06, c) punto C y región de 503
km2 el 7/7/06, y d) punto D y región de 114 km2 el 7/7/06
61 La cláusula SELECT retorna dos valores:
-DURATION: a partir de los datos que recibe como argumento, días en el ejemplo,
retorna el tiempo total transcurrido entre ellos.
-MOVING_DISTANCE: calcula la distancia entre los puntos que recibe como
argumento. El cálculo se realiza en orden de acuerdo con el atributo temporal para
dar la distancia total recorrida al sumar estas distancias; es decir, la distancia entre
el primer punto (cuya fecha es menor) y el segundo (cuya fecha es la segunda
menor) más la distancia entre el segundo y el tercer puntos y así sucesivamente.
El resultado de la consulta se muestra en la Tabla 2.13.
DURATION
MOVING_DISTANCE
3
34.1
Tabla 2.13 Resultado de la consulta 3 en SQLST
Guting:
SELECT tiempo AS
DURATION(DEFTIME(INTERSECTION(ubicación, GranL))),
distancia AS LENGTH (TRAJECTORY
(INTERSECTION(ubicación, GranL)))
FROM bombero
WHERE nombre = "T. Montoya";
De la relación bombero, se seleccionan las tuplas en las que el nombre del
bombero es “T. Montoya” (se usa la variable Gran L definida en la consulta 1). En
la cláusula SELECT, se calcula el tiempo durante el cual el MPOINT del bombero
estuvo dentro de la MREGION del incendio, así: INTERSECTION(ubicacion, Gran
L) halla las intersecciones espaciales entre el MPOINT ubicación y la MREGION
Gran L. El resultado es un MPOINT. Esta intersección se muestra en la Figura 2.5
y el MPOINT resultante en la Figura 2.6. Luego, la función DEFTIME extrae los
tiempos para los que existe intersección. Estos se obtienen a partir de las parejas
62 que conforman el MPOINT resultante. Finalmente, se calcula el tiempo que estuvo
el bombero dentro del incendio con la función DURATION, que calcula el tiempo
transcurrido a partir del resultado de DEFTIME.
{( 5/7/06, A ), (6/7/06 , B ), (7/7/06 , C )}
Figura 2.6 MPOINT resultante de INTERSECTION(ubicación, GranL).
En la cláusula SELECT también se calcula la longitud de la trayectoria que
recorrió el bombero dentro del incendio. Para lograrlo, la función TRAJECTORY
proyecta el MPOINT de la Figura 2.6 sobre el plano bidimensional y retorna una
polilínea que une los puntos A, B y C.
El resultado es igual al de la Tabla 2.13, excepto por el nombre de los
atributos.
Consulta 4.
SQLST
SELECT día, extensión
FROM incendio
WHERE nombre = ”Gran L” AND día = (SELECT MIN(día)
FROM incendio
WHERE nombre = “Gran L”)
Nótese que si se encuentra más de una tupla con la fecha más antigua para
el incendio “Gran L”, se retornan todas estas. El resultado de la consulta se
muestra en la Tabla 2.14.
DIA
EXTENSION
5/7/06
Tabla 2.14. Resultado de la consulta 4 en SQLST
63 Guting:
Para responder a esta consulta se procede así:
-INST(INITIAL(GranL)): retorna la fecha más antigua de la MREGION GranL.
-VAL(INITIAL(GranL)): retorna el valor (es decir la región) de la MREGION GranL
que está asociado con la fecha más antigua.
El resultado de la consulta es igual al de Tabla 2.14.
2.3.2.5 RESULTADOS DE LA COMPARACION
Por medio de una encuesta realizada a un grupo de programadores
familiarizados con ambos lenguajes y a los que se les presentaron características
de los mismos. Se obtienen los resultados que se muestran en la Tabla 2.15. Los
criterios de comparación ya descritos anteriormente se midieron con un puntaje
entre 0 y 5. [Pérez, L. (2008)].
CRITERIO
SQLST
GüTING
Expresividad
Existen operadores
importantes como
DURATION, INSIDE y
MOVING_DISTANCE.
Puntaje: 4
Existen operadores
importantes como
ATINSTANT, VAL,
DEFTIME y
TRAJECTORY.
Puntaje: 4.3
Similar a la del SQL
estándar.
Puntaje: 4.5
Aunque algunas
consultas simples son
más largas que sus
correspondientes en
SQLST, la asignación de
variables simplifica el
planteamiento de otras.
Puntaje:4.2
Legibilidad
Se acerca bastante al SQL
estándar. Los nuevos
operadores son fáciles de
comprender.
Puntaje: 4.4
La asignación de
variables
dificulta la comprensión
de
algunas consultas.
Además,
posee muchas funciones
ya
veces su significado no es
evidente.
Puntaje: 3.8
Cierre
Es consecuente con su
modelo de datos dado que
Tiene algunos
operadores, como
Verbosidad
64 sólo retorna relaciones.
Puntaje: 4.7
ELEMENT, que tienden a
violar el cierre.
Puntaje: 4.5
Seguridad
No genera resultados
infinitos.
Puntaje: 4.9
No genera resultados
infinitos.
Puntaje: 4.9
Simplicidad
Similar a la del SQL
estándar.
Puntaje: 4.6
Portabilidad
Carece de aspectos
propietarios.
Puntaje: 4.8
Su aspecto procedural le
hace menos simple que
SQLST. Puntaje: 4
Carece de aspectos
propietarios.
Puntaje: 4.8
Tabla 2.15. Comparación entre SQLST y el lenguaje de Guting
65 CAPITULO III
HERRAMIENTAS DE SOFTWARE
PARA MANIPULAR BDET
En este capítulo se conocen las diversas tecnologías y herramientas para la
manipulación de de base de datos espacio-temporales.
3.1 TECNOLOGIAS Y HERRAMIENTAS
3.1.1 API JAVA SWING
Para diseñar aplicaciones que hagan uso de interfaces gráficas (ejemplos:
ventanas con controles, etiquetas, cajas de texto, botones, barras de
desplazamiento), Java proporciona una biblioteca de clases denominada JFC
(Java Foundation Classes – clases base de Java) que comprende un grupo de
interfaces para programación de aplicaciones que engloban a AWT (Abstract
Window Toolkit), Swing, Java 2D y permite añadir gráficos ricos en funcionalidad e
interactividad a los programas desarrollados con Java. La tabla 3.1 describe las
características de la biblioteca de clases JFC.
CARACTERISTICA
DESCRIPCION
Componentes GUI Swing
Incluye botones, paneles de división y tablas,
entre otros. Ofrece muchos componentes útiles
para la clasificación, impresión y descripción.
Soporte de Aspecto Acoplable
Accesibilidad de la API
Internacionalización
El diseño de aplicaciones Swing es acoplable
ya que permite la opción de cambiar el aspecto
de la interfaz gráfica a través de paquetes que
están disponibles en la API de Java.
Permite que las tecnologías de asistencia
puedan obtener información de la interfaz de
usuario.
Permite a los desarrolladores crear
aplicaciones que puedan interactuar con los
usuarios en todo el mundo en sus propios
idiomas y convenciones culturales.
Tabla 3.1 Características de las clases base de Java
Una interfaz gráfica de usuario (GUI, Graphical User Interface) presenta un
mecanismo amigable para interactuar con un programa, ya que al usuario le
67 proporciona una “apariencia visual” única. El API de Java Swing provee distintas
clases que permiten desarrollar programas cuya interfaz de usuario contenga
componentes que sean consistentes e intuitivos, de manera que los usuarios
puedan familiarizarse con un programa incluso antes de utilizarlo. Esto permite
reducir el tiempo que se requiere para aprender a usar un programa y permite
incrementar la habilidad del usuario para utilizarlo en una manera productiva. Las
GUIs se crean a partir de componentes denominados controles o widgets
(accesorios de ventana). Un componente de la GUI es un objeto con el cual
interactúa el usuario mediante el ratón, teclado u otra forma de entrada, ejemplo:
reconocimiento de voz.
Las clases que crean los componentes de la GUI se indican en la tabla 3.2
y se describen algunos de los componentes que integran la GUI de Swing del
paquete javax.swing. La mayoría de los componentes de Swing están escritos
(también denominados componentes puros de Java), se manipulan y muestran
completamente en Java.
COMPONENTE
JLabel
JTextField
JButton
JCheckBox
JComboBox
JList
JPanel
DESCRIPCION
Espacio en donde pueden mostrarse iconos o
texto no editable.
Superficie en la que el usuario introduce datos
desde el teclado. En ésta área se puede
mostrar información.
Espacio que, por medio del ratón puede recibir
un clic sobre él, lo que desencadena un
evento.
Componente de la GUI que puede o no estar
seleccionado.
Lista desplegable de elementos, de los cuales
el usuario puede seleccionar cualquiera
haciendo clic sobre él o posiblemente
escribiendo dentro del cuadro.
Espacio que contiene una lista de elementos,
de los cuales el usuario puede seleccionar
cualquiera haciendo clic sobre él.
Contenedor en el cual pueden colocarse y
organizarse componentes.
Tabla 3.2 Descripción de algunos componentes de Swing.
La biblioteca de clases Swing resulta conveniente para el diseño e
implementación de GUIs por las siguientes características:
68 
Basa sus componentes en la arquitectura MVC (Modelo-Vista-Controlador ),
esta arquitectura permite una clara separación entre los componentes de un
programa y ofrece un enfoque de desarrollo muy apegado a los entornos
gráficos de usuario diseñados con el paradigma orientado a objetos;

Ofrece un conjunto de componentes escritos en Java con una mayor
funcionalidad y lógicamente independientes de la plataforma;

Cuenta con una amplia variedad de componentes (botones, cajas de texto,
tablas, diálogos);

Proporciona un aspecto modificable para personalizar el aspecto de los
componentes (ejemplos: botones, cajas de texto, listas, etiquetas) de las
interfaces de usuario.
3.1.2 TECNOLOGIA XML
La tecnología XML (Extensible Markup Language) provee una definición y
estructura de documentos útil. La descripción de información en documentos XML
representa una forma práctica y fácil de manipular los datos de manera
estructurada, por lo que en esta sección examinamos esta tecnología.
Publicar un documento en Internet consiste en aplicar a determinado
contenido (ejemplos: texto, imágenes) una serie de formatos para que pueda ser
visualizado desde la aplicación generalmente conocida como navegador o
explorador (browser) de Internet (ejemplos: Explorer, Firefox, Netscape).
La aplicación de los formatos para la correcta visualización del documento
se efectúa por medio de determinadas etiquetas (tags) definidas en los
denominados lenguajes de marcas o de marcado. HTML (HyperText Markup
Language) es el lenguaje de marcado utilizado para dar formato a los documentos
publicados en Internet, popularmente conocidos como páginas Web. XML es
también un lenguaje de marcas, pero su finalidad no es dar formato a los
documentos para su visualización, sino establecer la estructura de los contenidos
(datos) del documento.
A continuación se describen algunas características de la tecnología XML:
69 
XML es un lenguaje de marcado para documentos. Al igual que otros
lenguajes como SGML y HTML. XML se basa en el uso de marcas o
etiquetas para diferenciar los diversos elementos que pueden existir en un
documento. Al contrario de HTML, que se utiliza para establecer cómo se
han de presentar o de visualizar dichos elementos, con XML lo que se
define es la estructura del documento.

XML no utiliza etiquetas predefinidas. El nombre de las etiquetas utilizadas
en la creación de un documento XML se define de manera personalizada.
Ésta es otra diferencia con HTML, el cual es un lenguaje con etiquetas ya
definidas (de ahí la X de eXtensible de XML) no es un lenguaje con marcas
ya establecidas, sino que deja absoluta libertad al programador para que
defina las que crea convenientes.

XML es un lenguaje muy estricto. Otra de las principales características de
XML es el ser estricto; un documento XML ha de cumplir las normas de
sintaxis y estructuración para que sea reconocido como tal; para ello, el
documento ha de estar, al menos, bien formado.
XML es una versión reducida de SGML, el cual está basado y
especialmente diseñado para la definición de estructuras de documento y el
almacenamiento de datos. Por lo tanto, podemos decir que XML se puede utilizar
para el desarrollo de dos tipos de aplicaciones:

Aplicaciones de datos: los documentos XML por definición son “unidades de
almacenamiento de datos” y el principal objetivo de este lenguaje consiste
en definir la estructura lógica de dichos datos. XML es utilizado, por tanto,
para la manipulación de información y está más cercano a los mecanismos
usados en bases de datos que los utilizados en la publicación de
documentos. XML también proporciona mecanismos para el intercambio de
datos entre aplicaciones;

Aplicaciones de documento: las aplicaciones de documento representan la
fase final de la creación de una aplicación XML y permiten la publicación de
documentos XML utilizando técnicas de creación de estilos y técnicas de
70 aplicación de formatos (XSL, XSLT) al contenido de documentos tipo XML.
Las aplicaciones de documento posibilitan la publicación en prácticamente
cualquier tipo de formato conocido.
XML se convirtió en un lenguaje estándar con la publicación del documento
titulado “eXtensible Markup Language 1.0. Recomendación W3C (World Wide
Web Consortium)” el 10 de febrero de 1998. Además, proporciona un mecanismo
para imponer restricciones al almacenamiento de los datos y a la estructura lógica
del documento. Una unidad de almacenamiento de tipo XML se puede considerar
como un documento XML si está bien formado. Un documento XML bien formado
puede además ser válido si cumple una serie de restricciones definidas en una
DTD o XML Schema.
XML es, por lo tanto, un lenguaje diseñado para trabajar con datos y
estructuras; considerando lo visto anteriormente se puede definir, a los
documentos XML como “objetos de datos cuya estructura está bien formada”. Las
tecnologías XML son un conjunto de módulos que ofrecen servicios útiles a las
demandas más frecuentes por parte de los usuarios. En la tabla 3.3 se muestran
las tecnologías relacionadas con XML.
TECNOLOGIA
XSLT
XSL- FO
XPath
XLink
XPointer
XQL
DESCRIPCION
(Extensible Stylesheet Language Transformation)
establece como efectuar las transformaciones necesarias
para aplicar los estilos a documentos XML para su
aplicación.
(XSL – Formatting Object) se usa para definir estilos
utilizando los objetos de formato.
(XML Path) es utilizado para establecer el camino que se
ha de seguir para llegar a un determinado nodo en la
jerarquía del árbol de nodos de un documento XML.
(XML Linking Language) es un lenguaje que permite
insertar elementos en documentos
XML para crear enlaces entre recursos XML.
(XML Pointer Language) es un lenguaje que permite el
acceso a la estructura interna de
un documento XML.
(XML Query) es un lenguaje que facilita la extracción de
datos desde documentos XML.
También ofrece la posibilidad de crear consultas flexibles
71 XML Schema Definition
DTD
desde documentos XML.
(XML Schema Definition) es un mecanismo de
descripción de documentos que sirve para
declarar los diversos objetos que pueden ser utilizados en
un documento XML y permite
definir los elementos con su contenido y atributos para
establecer cómo se han de usar
para crear la estructura del documento XML que utilice
determinado esquema; así se podrá efectuar su
validación.
(Document Type Definition) es un mecanismo a través del
cual se declaran las entidades, notaciones y elementos
permitidos en aquellos documentos XML que los utilicen.
Para los elementos, se definen las etiquetas
estableciendo al mismo tiempo cuáles serán sus
contenidos y la lista de atributos que deben utilizar.
Tabla 3.3 Tecnologías XML
3.1.3 TRANSFORMACION DE DOCUMENTOS CON XSLT
XSL es un lenguaje creado por el W3C cuya finalidad es la creación de
estilos y la aplicación de formato a los documentos XML para que así puedan ser
publicados
en
cualquier
medio.
XSLT
(Extensible
Stylesheet
Language
Transformation) es una ampliación de XSL y es el lenguaje utilizado para efectuar
las transformaciones por medio de las cuales se aplicarán los estilos y formatos
establecidos en hojas de estilo, ya sean CSS o XSL, sobre el documento XML
para su publicación.
El proceso de transformación de un documento XML a cualquier otro
formato de publicación (texto plano, HTML, XHTML, WML, PDF) se realiza a
través de un documento XML el cual tiene definido una hoja de estilo. Ésta se
basa en la definición de plantillas (templates) y cada una de las plantillas definidas
ha de estar relacionada con algún elemento existente en el documento XML. Los
elementos relacionados con alguna plantilla serán los objetivos sobre los cuáles se
aplicarán las transformaciones (procesador XSLT) y formatos definidos en la
plantilla para generar el documento final, la figura 3.1 muestra este proceso.
72 Documento
XML
Documento
Procesador
Documento
XML
XSLT
HTML
Documento
de hoja de
estilos XSL
Cualquier
otro
documento
estructurado
Figura 3.1 Proceso de transformación de documentos XML
Algunas características del procesador XSLT son:

Permite transformar una única fuente de información en varios formatos;

Por ser una aplicación XML, su descripción se basa en las mismas reglas
que los documentos XML solo que la extensión del archivo es .xsl;

Es posible separar el contenido de la presentación, permitiendo modificar
aspectos visuales fácilmente sin que los contenidos se vean afectados en el
proceso;
 Permite utilizar las funciones de XPath para acceder fácilmente a un
determinado elemento del documento XML.
3.1.4 PROCESADOR DOM4J
Los procesadores XML son módulos de software utilizados para leer
documentos XML y proporcionar acceso a su contenido y estructura. Deben ser
implementados siguiendo las especificaciones establecidas por la W3C en las
recomendaciones sobre dicho lenguaje. La implementación mínima de todo
procesador XML está representada por el analizador de XML encargado de
comprobar que el documento que se quiere examinar cumpla las normas
establecidas para ser considerado un documento XML bien formado.
Los procesadores XML pueden implementar dos tipos de analizadores:
73 
Analizadores de buena formación: comprueban que la estructura del
documento sea correcta;

Analizadores con validación: en caso de que el documento utilice algún
mecanismo de definición de documento, DTD o XML Schema, comprueban
que se utilizan los elementos, sintaxis y estructuras allí definidos;
Dom4j es un marco de trabajo XML de código abierto para Java que
permite leer, escribir, navegar, crear y modificar documentos XML, y está
integrado por DOM.
Algunas características son:

Está diseñado para la plataforma Java con soporte completo para el marco
de trabajo de Java;

Implica amplio soporte para JAXP, DOM, y XSLT;

Integra un extenso soporte de XPath para facilitar la navegación en
documentos XML;
3.1.5 MANEJADOR DE BASE DE DATOS POSTGRESQL
Postgresql es un sistema administrador de bases de datos objeto-relacional
basado en POSTGRES, version 4.2, desarrollado en la Universidad de California
en Berkeley, en el Departamento de Ciencias de la Computación. POSTGRES fue
pionero de muchos conceptos que sólo estuvieron disponibles en algunos
sistemas de bases de datos comerciales mucho más tarde.
PostgreSQL es un proyecto desarrollado con código abierto que soporta el
estándar SQL y ofrece muchas características interesantes:

Consultas complejas;

Claves foráneas;

Disparadores;

Vistas;

Integridad transaccional;

Control de concurrencia.
74 Además PostgreSQL puede ser ampliado por el usuario de muchas formas;
mediante la adición de nuevas definiciones de:

Tipos de datos;

Funciones;

Operadores;

Funciones de agregado;

Métodos indexados;

Lenguajes procedurales.
Debido a que es de licencia libre, PostgreSQL puede ser usado, modificado
y distribuido por todo el mundo de forma gratuita para cualquier fin, ya sea privado,
comercial o académico. Es considerado como uno de los mejores gestores de
bases de datos de software libre. Muchas empresas han iniciado el uso de esta
herramienta beneficiándose en la reducción de los costos y en el aumento de la
fiabilidad.
Dentro de sus características están:

Cumple completamente con la propiedad ACID (Atomicity, Consistency,
Isolation and Durability).

Permite integridad referencial;

Implica replicación (soluciones comerciales y no comerciales) lo que
permite la duplicación de bases de datos maestras en múltiples sitios de
réplica;

Define procedimientos almacenados;

Implica soporte nativo SSL (Secure Socket Layer);

Incluye lenguajes procedurales;

Comprende herramientas para generar SQL portable para compartir con
otros sistemas compatibles con SQL;

Funciones de compatibilidad para ayudar a la transición desde otros
sistemas menos compatibles con SQL.
75 Las características mencionadas contribuyeron a la elección de PostgreSQL
como gestor de base de datos para la generación de la descripción del esquema
de la base de datos (script SQL), así como también para el manejo y
administración de la información que será almacenada en ella.
3.1.5.1 POSTGIS
PostGIS es una extensión del sistema de bases de datos objeto-relacional
PostgreSQL, que permite el uso de objetos geográficos. Fue creado por
Refractions Research Inc, como un proyecto de investigación de tecnología de
bases de datos espaciales.
PostGIS es un módulo de apoyo que permite el manejo de información
georeferenciada a través de PostgreSQL. Al integrarse estas dos partes es posible
el manejo de objetos geográficos de forma sencilla y amigable por medio de
consultas SQL que proporcionan el resultado en coordenadas de 2D y 3D.
Inicialmente el manejo de la información de la base de datos incluye datos
geográficos (coordenadas), PostGIS proporciona soporte para el manejo de este
tipo de información a través de PosgreSQL, por lo que la manipulación de la
información geográfica queda cubierta en el desarrollo de nuestra solución.
3.1.6 ENTORNO DE DESARROLLO INTEGRADO NETBEANS
Un IDE (Integrated Development Environment) es un conjunto de
herramientas que ayudan al desarrollo de aplicaciones; la mayoría tienen módulos
que permiten:

Escribir y editar código fuente;

Ver los errores a medida que se escribe código;

Ver la sintaxis del código resaltado;

Automatizar tareas repetitivas;

Compilar código;

Usar la función arrastrar y soltar para facilitar la construcción de interfaces
gráficas de usuario.
76 CAPITULO IV
APLICACIÓN DE LAS BDET: SIG
Una de las aplicaciones de las base de datos espacio-temporales son los
sistemas de información geográfica, que se verán en este capítulo, así como el
modelo y la semántica de los datos en estos sistemas y la forma en que éstos se
apoyan de las bases de datos geográficas.
4.1 SISTEMA DE INFORMACION GEOGRAFICA
Los Sistemas de Información Geográfica (SIG) datan del año de 1970.
Actualmente son vigentes por los problemas teóricos fundamentales relacionados
a ellos, por las nuevas tecnologías de la información y por una variedad
considerablemente grande de aplicaciones importantes en las que son usados.
Un SIG es una tecnología basada en computadoras de propósito general y
es útil para almacenar, manejar y explotar datos geográficos en forma digital. Se
integra por un conjunto de subsistemas enfocados en la captura, el
almacenamiento, el análisis, la visualización y la graficación de diversos conjuntos
de datos espaciales o georeferenciados. Tales subsistemas en conjunto obtienen
información territorial para resolver problemas de planificación, gestión y toma de
decisiones apoyándose en la cartografía. Un SIG es un sistema geográfico porque
permite el modelado espacial: la creación de mapas y el análisis espacial. Es un
sistema de información porque orienta en la gestión de la información, procesa
datos almacenados previamente y permite eficaces consultas que son útiles para
añadir valor a la información gestionada y es un sistema informático con hardware
y software especializados que procesan los datos obtenidos de diversas fuentes
(ejemplos: fotografía aérea, metadatos, imágenes de satélite, datos de
procedencia comercial y gratuita). Su característica principal es el manejo de datos
complejos basados en datos geométricos (coordenadas e información topológica)
y datos de atributos (información nominal) el cual describe las propiedades de los
78 objetos geométricos tales como puntos, líneas y polígonos. La codificación de la
información en datos requiere de estructuras y formatos adecuados para su
almacenamiento en una base de datos, la cual podrá tener una descripción en un
nivel de abstracción más alto si se usa una base de metadatos.
El núcleo de software de los SIG es el DBMS. Tal sistema debe tener la
capacidad de almacenar y gestionar las entidades asociando su representación
geométrica con su representación constituida por atributos. La base para tener
una independencia con la plataforma de implantación es el modelo lógico de datos
el cual es una interfaz entre el modelo conceptual entidad-relación y el modelo
físico donde se mantienen las estructuras de datos y almacenamiento. La figura
4.1 presenta los componentes mencionados anteriormente que integran un SIG.
Programas
Equipos de cómputo
(Software)
(Hardware)
Provee una base funcional
que sea adaptable y
expandible de acuerdo con
los requerimientos propios
de cada organización.
Permite la entrada y salida
de información geográfica
en diversos medios y
formas.
Recursos
Humanos
Base de
Datos
Componentes de
SIG
Resolver los problemas de
entradas de datos.
Conceptualizar las BD y
los modelos necesarios
para el análisis de la
información
Figura 4.1 Componentes de un SIG.
Contiene la información
que garantiza el
funcionamiento analítico
79 Las aplicaciones de un SIG aumentan continuamente ya que sirve para la
elaboración de mapas temáticos y composiciones cartográficas al añadir gráficos
con tablas enlazadas a los mapas. La creación de mapas activos con posibilidades
de agregar componentes multimedia (ejemplos: video, imágenes, animaciones) y
combinado con la tecnología de la Web posibilita la generación de escenarios y
realidad virtual, dibujos en perspectiva realista y vuelos virtuales, trazado de rutas
(ejemplos: comerciales, de emergencia, red de alcantarillado). Un SIG permite
crear inventarios de recursos naturales y humanos, hacer investigación de los
cambios producidos en el medio ambiente, realizar cartografía de usos de suelo y
prevenir de incendios.
4.1.1 BASES DE DATOS GEOGRAFICAS
La construcción de una base de datos geográfica implica un proceso de
abstracción para pasar de la complejidad del mundo real a una representación
simplificada que pueda ser interpretada por las computadoras actuales. Este
proceso de abstracción tiene diversos niveles y generalmente comienza con la
concepción de la estructura de la base de datos, generalmente en capas
temáticas; en esta fase y dependiendo de la utilidad que se vaya a dar a la
información a procesar, se seleccionan las capas temáticas a incluir.
Al separar la información en diferentes capas temáticas, ésta es
almacenada independientemente, permitiendo trabajar con ellas de manera rápida
y sencilla, facilitando al programador la posibilidad de relacionar la información
existente a través de la topología de los objetos. Las bases de datos geográficas
consisten de un conjunto de datos que se agrupan en capas, de manera que cada
capa representa un tipo de información geográfica. Los SIG obtienen y procesan
esta información obtenida de la base de datos para combinar esas capas en una
sola imagen mostrando que las capas están relacionadas entre sí. Una base de
datos geográfica puede incluir un gran número de capas. También, se pueden
generar imágenes de un área en dos o tres dimensiones, representando
elementos naturales (ejemplo: colinas o ríos) junto a elementos artificiales
(ejemplos: carreteras, tendidos eléctricos, núcleos urbanos). En bases de datos
80 geográficas la relación entre un objeto geográfico (topología) a un elemento de la
realidad (ejemplo: ríos, carreteras, montañas) se reduce a cuestiones más
sencillas como el saber cuáles líneas forman una determinada carretera.
Convertir los productos de información geográfica (ejemplo: cartas,
reportes, estudios) de forma analógica a forma digital, implica la necesidad de
considerar que los mecanismos de percepción y análisis de información digital
difieren de los tradicionales. Los productos convertidos serán procesados por
computadoras y aunque pueden ser visualizados en monitores, su análisis se
realiza fundamentalmente por la combinación de métodos de análisis geométrico,
métodos estadísticos y consultas de bases de datos.
Los datos que integran esta información se clasifican, de acuerdo con su
naturaleza, en tres tipos: vectorial, raster y alfanuméricos. El tipo vectorial contiene
los datos provenientes de las cartas que en diferentes escalas y temas se han
producido; el tipo raster contiene la información de tipo imagen (ejemplos:
imágenes tomadas por satélites y modelos digitales de elevación). El tipo
alfanumérico comprende los datos tabulares y textuales (ejemplo: reportes de
campo).
Los datos geográficos tienen cuatro características principales:
1. Posición geográfica (coordenadas);
2. atributos (valores de los datos);
3. relaciones topológicas;
4. componentes de tiempo.
Una vez almacenados los datos en un SIG, éstos se pueden clasificar en
tres categorías principales [30]:

Datos convencionales: atributos alfanuméricos tradicionales, manipulados
por DBMS convencionales;

Datos espaciales: atributos que describen la geometría de fenómenos
geográficos;

Datos gráficos: atributos que almacenan imágenes (ejemplo: fotos).
81 El rápido crecimiento de los SIG se ha traducido en un gran número de
sistemas, cada uno de los cuales tiene su propio manejo de datos y
almacenamiento de características. La mayoría de los SIG siguen basados en
manipuladores de datos espaciales e imágenes usando un gestor de archivos, sin
ningún tipo de servicio de bases de datos.
El acoplamiento del DBMS a los requerimientos del procesamiento de datos
en un SIG se ha hecho en función de tres arquitecturas:

Sistemas Propietarios. Una base de datos de propósito especial está
estrechamente unida a los módulos de procesamiento de datos espaciales.
Los usuarios no pueden acceder a la base de datos directamente y los
datos no pueden ser migrados a otro DBMS;

Sistemas de Capas. Un DBMS común se utiliza como base para las
funciones de acceso de datos espaciales. Los usuarios pueden acceder a la
base de datos directamente y pueden ser portados a otros sistemas;

Sistemas Extensibles. Usan las facilidades proporcionadas por el DBMS
relacional extendido u orientado a objetos introduciendo la dimensión
espacial en el sistema.
4.1.2 MODELO DE DATOS EN UN SIG
Información y datos es una división que se presenta entre la concepción del
mundo real y su representación simbólica codificada. La complejidad de la realidad
geográfica da lugar a diversas formas de adquirir la información asociada a los
eventos espacio-temporales. Su codificación a representaciones finitas simbólicas
(ejemplos: atributos de valores de suelo), se conforma de estructuras más
complejas (ejemplos: matriz de variables del suelo), las cuales son asociadas a
una localización espacial que varía con el tiempo. Las bases de datos geográficas
consideran dos clases principales de datos: espaciales (localización o gráficos) y
nominales (atributos no gráficos). La componente espacial de un SIG se describe
con frecuencia como una serie de capas o coberturas, donde cada una contiene
una serie de rasgos que son relacionados funcionalmente con un tema. Los
objetos pueden ser puntos, líneas o áreas se describen por atributos que toman
82 valores dentro de un dominio que tiene asociado escalas, operaciones y
predicados.
En el contexto de un SIG, un modelo de datos es la abstracción y la
representación de los fenómenos del mundo real de acuerdo a un esquema
conceptual formalizado que es aplicado generalmente usando las primitivas
geográficas (ejemplo: líneas, puntos y polígonos).
Para poder describir la fisionomía espacial geográfica, la realidad debe ser
concebida mediante un modelo espacial de datos, el cual puede ser descrito en
dos niveles: modelo de objetos y modelo de campo.
El modelo de objetos representa fenómenos geográficos que pueden ser
individualizados (poseen una identidad y características que pueden ser descritas
a través de un conjunto de atributos) y está constituido por:

Punto. Un objeto cero-dimensional que especifica la localización geométrica
por medio de un conjunto de coordenadas;

Línea. Un objeto uni-dimensional que es un segmento de línea determinado
entre dos puntos;

Área. Un objeto bi-dimensional que es continuo, acotado y puede incluir su
frontera;

Celda. Es un objeto bidimensional que representa un simple elemento en
un espacio discreto referenciado a una superficie continua;

Píxel. Es un objeto gráfico bidimensional que se define como el elemento
más pequeño indivisible de una imagen;

Símbolo. Elemento gráfico que representa alguna característica de los
puntos sobre un mapa.
El modelo de campo representa la variación espacial de una simple variable
mediante una colección de objetos discretos. Un campo puede ser asociado con
una variable medida sobre una escala continua o discreta. Una base de datos
geográfica puede comprender varios tipos de modelos de campo de los cuales
seis son comúnmente manejados en un SIG.
83 
Muestreo irregular de puntos. La base de datos contiene un conjunto de
tripletas (x, y, z) que representan valores de puntos de una variable en un
conjunto finito de localizaciones irregularmente distribuidas.

Muestreo regular de puntos. El muestreo de puntos es un arreglo que se
mapea sobre un enrejado regular. Este campo tiene similitud con el anterior
excepto por el espaciamiento regular en donde se tienen localizadas las
mediciones.

Contornos. La base de datos contiene un conjunto de líneas, cada una
representada por un conjunto de parejas ordenadas (x, y) que están
asociadas a un valor z. Los puntos en cada conjunto están linealmente
conectados como en las líneas de contorno cartográficas de una misma
elevación.

Polígonos. El área es dividida en un conjunto de elementos poligonales, de
tal forma que cualquier localización que cae dentro de un polígono tiene
asociado un valor y las fronteras son definidas por un conjunto de parejas
ordenadas (x, y) de puntos (ejemplos: uso de suelo, área básica de
simulación).

Enrejado de celdas. El área es dividida en un enrejado regular de celdas.
Cada celda tiene un valor y una variable que se supone tiene un valor para
todas las localizaciones dentro de la celda.

Red triangular. En este caso el área es dividida en triángulos. El valor de la
variable es especificado en cada vértice del triángulo y se considera que
varía linealmente sobre el triángulo.
Los aspectos que deben considerarse en relación a los objetos geográficos
en los modelos de datos geográficos son:

Localización y extensión. Es la ubicación y alcance de las coordenadas (x,
y, z) en el sistema de referencia específico. Estos aspectos están
representados por cualquiera de los puntos, líneas y polígonos;
84 
Medida temporal. Es necesario mantener registro de la existencia y cambio
de un objeto a lo largo del tiempo. La existencia y la operación de tiempo
deben ser válidos;

Medida espacial compleja. Debe ser posible asociar medidas espaciales
complejas con objetos. De esta manera medidas de cero, uno, dos y tres
dimensiones consiste en puntos (y multi-puntos), líneas (y multi-líneas),
polígonos (y multi-polígonos) y raster debería ser posible. Esto permite a los
objetos que estén constituidos de más elementos;

Valores temáticos. Un objeto tiene varios atributos que definen sus valores;

Objetos difusos. La representación de un objeto difuso está relacionada con
su ubicación y valores temáticos. En apoyo a los objetos geográficos,
debería ser posible modelar objetos que tengan una extensión y medida,
las cuales son características que hasta cierto punto pueden ser referidas
por medio de coordenadas (x, y, z). Los objetos pueden poseer valores
temáticos asociados o no con una determinada clase;

Entidades vs datos basados en campo. El mundo real puede representarse
por entidades totalmente definibles (ejemplo: carreteras y edificios). En el
enfoque basado en campo, el mundo real consiste de atributos los cuales
se supone que varían en el espacio como una función continúa. Este último
sería el enfoque preferido si se representan a fenómenos que impliquen
altura y profundidad;

Generalización. Se refiere a aspectos de un objeto como la escala y el
propósito. Un sólo objeto puede derivarse de varios objetos en una escala
mayor y la información sobre todos los objetos que se agregan o no deben
ser accesibles;

Restricciones. Un objeto puede estar definido por atributos cuyos valores
requieran de restricciones en cierto intervalo;

Funciones. La función de un objeto está estrechamente relacionada con su
representación. Un objeto geográfico puede ser definido de manera
diferente dependiendo de la aplicación;
85 
Identificación del objeto. Un identificador de objeto único es necesario para
el intercambio de datos; si es necesario hacerlo entre diversos repositorios
tal identificación es de gran ayuda;

Calidad de la información. La calidad describe el valor de los datos. Esta
información es importante al evaluar la credibilidad de los datos y debería
ser obligatoria.
Los elementos a considerar en las relaciones entre los objetos que definen
los modelos geográficos son:

Relaciones topológicas. Se refieren a las relaciones y conexiones entre los
objetos. Ejemplos de relaciones topológicas binarias son: contiene,
superposición;

Relaciones métricas. Implica la distancia y depende de la posición absoluta
de los objetos en relación con un determinado sistema de referencia;

Relaciones semánticas. Son relaciones entre los objetos, pertinentes en el
plano conceptual, que no son ni topológicas ni métricas;

Relaciones parte-de. Indica que un objeto puede constar de otros objetos;

Restricciones de la relación. Son muy importantes y dependen en gran
medida del tipo de relación entre los objetos.
Dos aspectos importantes afectan a los objetos:

Visualización. La visualización de objetos es fundamental, de tal manera
que estos se puedan visualizar en diferentes escalas;

Cambio. Define la manera en la que un objeto puede cambiar. La
información indica las circunstancias externas que pueden producir un
cambio importante.
4.1.3 SEMANTICA DE LA INFORMACION ESPACIAL
La necesidad del ser humano por el uso de sistemas y aplicaciones que
manejen y procesen información georeferenciada ha originado la creación de
grupos de investigación en el área de la ciencia de la información geográfica. El
86 trabajo de esta área consiste en obtener representaciones acerca de cómo el ser
humano percibe el mundo real por medio de una conceptualización basada en
procesos de abstracción y representación de los datos geográficos. La humanidad
inició representando el mundo real a través de bosquejos y dibujos,
posteriormente con mapas, con la llegada de la era digital, los mapas son la base
para el desarrollo de SIG (Sistemas de Información Geográfica), los cuales
proporcionan mecanismos para almacenar manipular y analizar la información
geográfica.
En la actualidad, se ha reconocido ampliamente que la semántica de la
información geográfica es crítica para el desarrollo de bases de datos
geoespaciales y aplicaciones interoperables. En adición a esto, los SIG; así como
la tecnología de desarrollo de éstos, deben ser interoperables con otros sistemas y
bases de datos. Con la semántica espacial de objetos geográficos, es posible
analizar la interacción de diversos fenómenos de un área común, además de
poderlos representar adecuadamente a diferentes niveles de detalle de
conocimiento, dependiendo del propósito o caso de estudio.
Las bases de datos geográficas son herramientas muy poderosas y
utilizadas para manejar, desplegar y procesar la información geoespacial. Estas
bases de datos integran SIG, los cuales están diseñados para almacenar y
procesar los datos geoespaciales que son muy complejos y mixtos. Por tal motivo
para evitar cualquier tipo de ambigüedad en el procesamiento e interpretación de
estos datos, se debe contar con una buena calidad desde el proceso de entrada
hasta su representación.
Las aplicaciones SIG son utilizadas para analizar las características de
diferentes ambientes geográficos. Sin embargo, estas aplicaciones utilizan
diferentes fuentes de datos geoespaciales para lograr sus objetivo; así como
diversos formatos, los cuales pueden encontrarse o en diferentes bases de datos
geográficas; motivo por el cual la integración de información geoespacial es un
problema complejo para llevar a cabo tareas específicas. Por tal razón, el objetivo
de realizar una conceptualización del dominio geográfico es solucionar problemas
87 de heterogeneidad e interoperabilidad semántica debido a la existencia de
diferentes fuentes de información.
Se utiliza la semántica espacial de objetos como un mecanismo para la
correcta representación y descripción de objetos espaciales en una base de datos
geoespacial, en donde se puedan distinguir estos objetos por medio de sus
características (propiedades) y también a través de un valor de atributo o una
primitiva de representación espacial (punto, línea, polígono, etc.), sin realizar algún
tipo
de
procesamiento,
clasificación
o
manipulación
de
información
georeferenciada. [Radilla, F. (2008)].
88 CONCLUSIONES
Al haber realizado esta monografía se puede concluir que las bases de
datos son una parte importante para la administración de la información de las
empresas, tanto que su uso fue indispensable desde los años 50’s mediante el
uso de las cintas magnéticas y con éstas se puede acceder a datos de manera
fiable. Además es importante tener claro que al momento de la creación de las
bases de datos se debe evitar la redundancia
de datos para establecer las
relaciones que integran dichas bases. Por ello es primordial seguir una
metodología de diseño de base de datos basados en los modelos que se
abarcaron, ya sea modelo entidad – relación, orientado a objetos, jerárquico o
relacional para que así, las operaciones que se realicen sean de forma eficiente.
Los beneficios de contar con los sistemas de base de datos pueden usarse
en un sinfín de aplicaciones, como en las líneas aéreas o bancos que son
utilizados para proporcionar información específica que es requerida por cualquier
cliente, esto facilita el trabajo a sus usuarios finales. De las bases de datos
tradicionales a las espacio-temporales se ha entendido y comprendido cada una
de estas, además de las temporales y espaciales, estas dependen de los datos
que se requieran ingresar a las bases de datos, si se desea contar con
información temporal ya sea por que se necesita el dominio de tiempo, la base de
datos es temporal. Para tener una base de dato espacial se requieren de datos
que tengan que ser representados por puntos, líneas o región. Existen objetos
espaciales que cambian su tamaño y/o posición a través del tiempo para esto
existen las bases de datos espacio-temporales, el objetivo de estas es modelar y
representar la naturaleza dinámica de las aplicaciones en el mundo real, estas
pueden ser utilizadas en el ámbito del transporte y multimedia, es decir,
administrando dichos objetos que son cambiantes en su ubicación y tiempo. Por lo
que las consultas que se necesitan resolver en este tipo de bases de datos
pueden requerir tratar con el tiempo (pasado, presente y predicciones de futuro)
como ya se vio en los lenguajes de consultas.
90 FUENTES DE INFORMACION
Besembel, I. (2004) Bases de Datos avanzadas: Bases de Datos Espaciales.
Recuperado
el
20
de
Marzo
de
2009,
de
http://www.ing.ula.ve/~ibc/bda/s25y26bde.pdf
Castaño, M y Piattini, M. (1999). FUNDAMENTOS Y MODELOS DE BASES
DE DATOS. México: Alfaomega.
Cely, W. y Bedard Y. (s.f.) El paradigm multidimensional: Desarrollo de nuevas
tecnologías para la gestión del territorio. Recuperado el 20 de Marzo de 2009,
de http://sirs.scg.ulaval.ca/YvanBedard/article_nonprotege/441.pdf
Date, C.J. (2001). INTRODUCCION A LOS SISTEMAS DE BASES DE
DATOS. México: Pearson Educación.
Ghislaine, N. (2006). Is DataWarehousing important?. Recuperado el 25 de
Mayo de 2009, de wiki.uni.lu/MsCS/docs/Ghis.pps
Giraudi, D., Peñalver, G. y Retamal, G. (s.f.) Aproximaciones en el estudio de
Bases de Datos Espacio-Temporales y Ruteo sobre redes móviles.
Recuperado
el
18
de
Marzo
de
2009,
de
http://www.ing.unp.edu.ar/wicc2007/trabajos/ISBD/069.pdf
Gutiérrez, G. (2007). Métodos de acceso y procesamiento de consultas
espacio–temporales.
Recuperado
el
27
de
marzo
de
2009,
de
http://www.dcc.uchile.cl/~gnavarro/algoritmos/tesisGilberto.pdf
Gutiérrez, M. (s.f.) El rol de las bases de datos espaciales en una
infraestructura de datos espaciales. Recuperado el 20 de abril de 2009, de
http://www.gsdidocs.org/gsdiconf/GSDI-9/slides/TS23.1.pdf
91 Ihm, J. (2007). Administración avanzada de datos espaciales en una empresa.
Recuperado
el
27
de
marzo
de
2009,
de
http://www.oracle.com/technology/global/lades/documentation/collaterals/oracle_spatial_11g_cast.pdf
Luque, A. (2006) Bodegas de Datos: Consideraciones de
Seguridad
y
Control.
Recuperado
el
20
de
Marzo
Implementación,
de
2009,
de
http://www.acis.org.co/fileadmin/Conferencias/ConfAlfonsoLuqueNov30-06.pdf
Marqués, M (2002). Bases de Datos orientadas a objetos. Recuperado el 25 de
Marzo de 2009, de http://www3.uji.es/~mmarques/e16/teoria/cap2.pdf
Moreno, F. y Arango, F. (2007) Estado del Arte de los Modelos
Multidimensionales Espacio-Temporales. Recuperado el 08 de Abril de 2009,
de
http://pisis.unalmed.edu.co/avances/archivos/ediciones/Edicion%20Avances%2
02007%201/2.pdf
Pascal, A., Gutiérrez, G., Herrera, N. (s.f.) Búsqueda en Bases de Datos
Métricas
Temporales.
Recuperado
el
08
de
Abril
de
2009,
de
http://ficcte.unimoron.edu.ar/wicc/Trabajos/III%20-%20isbd/689-wiccER06.pdf
Pérez, L. (2008). Una comparación de dos lenguajes de consulta espacio–
temporales: SQLST y el lenguaje de Guting. Recuperado el 27 de marzo de
2009
de,
http://www.revistaingenieria.unal.edu.co/Resumenes/28_3/20_760.pdf
Radilla, F. (2008). Modelado de datos para Base de Datos Espaciales. Caso de
estudio: sistemas de información geográfica. Recuperado el 22 de Marzo de
2009,
de
http://www.cs.cinvestav.mx/Estudiantes/TesisGraduados/2008/tesisFlorRadilla.
pdf
92 Rozic, S. (2004). BASES DE DATOS Y SU APLICACIÓN CON SQL. Buenos
Aires: MP ediciones.
Silberschatz, A., Korth, H.
y Sudarshan, S. (2002). FUNDAMENTOS DE
BASES DE DATOS. España: McGraw Hill.
Suherman, A. (s.f.). Data Mining. Recuperado el 25 de Mayo de 2009, de
www.cs.sjsu.edu/~lee/cs157b/Data_Mining_By_Andrie_Suherman.ppt -
Vallejos, S. (2006). Minería de Datos. Recuperado el 10 de Abril de 2009, de
http://exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/Mineria_Da
tos_Vallejos.pdf
93 GLOSARIO
ACID
Atomicity,
Consistency,
Isolation
and
Durability:
Atomicidad, Consistencia, Aislamiento y Durabilidad en
español. Conjunto de características necesarias para que una
serie de instrucciones puedan ser consideradas como una
transacción.
Alfanuméricos
Conjunto de caracteres numéricos y alfabéticos de los
cuales dispone una computadora.
Atributos
Es la cualidad que se adjudica o predica de un ser con
sentido de identidad Atributos multivaluado
Debe tener un acotamiento mínimo y uno máximo para
limitar el número de valores permitidos para cada registro.
AWT
Abstract Window Toolkit (Kit de Herramientas de
Ventana Ab stracta) es un kit de herramientas de gráficos,
interfaz de usuario, y sistema de ventanas independiente de la
plataforma original de Java
Backward
“Hacia atrás”
Bibliotecas JFC
Java Foundation Classes
Browser
Es un programa que permite visualizar la información
que contiene una página web.
Buffer
Es una ubicación de la memoria en una computadora o
en un instrumento digital reservada para el almacenamiento
temporal de información digital, mientras que espera ser
procesada.
95 Cartografía
Es la ciencia que se encarga del estudio y de la
elaboración de los mapas.
Centroides
Es la intersección de todos los hiperplanos que dividen
a X en dos partes de igual -volumen con respecto al
hiperplano. Informalmente, es el promedio de todos los puntos
de X.
Concatenación
Es la operación por la cual dos caracteres se unen para
formar una cadena de caracteres.
CSS
Hojas de Estilo en cascada (Cascading Style Sheets),
CSS es un lenguaje artificial usado para definir la presentación
de un documento estructurado escrito en HTML o XML
Data marts
Es un sistema orientado a la consulta, en el que se
producen procesos de carga de datos (altas) con una
frecuencia baja y conocida. Es una versión especial de
almacén de datos.
Data mining
Consiste en la extracción no trivial de información que
reside de manera implícita en los datos. Prepara, sondea y
explora los datos para sacar la información oculta en ellos.
Datawarehouse
Es una colección de datos orientada a un determinado
ámbito (empresa, organización, etc.), integrado, no volátil y
variable en el tiempo, que ayuda a la toma de decisiones en la
entidad en la que se utiliza.
Dato espacial
La representación de un objeto en dos o tres
dimensiones, la cual tiene atributos inherentes a nuestro
espacio; por lo que, por si mismo, cuenta con los atributos de
dimensión y de localización.
96 DBMS
DataBase Management System o Sistemas de Gestión
de Base de Datos (SGBD) son un tipo de software muy
específico, dedicado a servir de interfaz entre la base de
datos, el usuario y las aplicaciones que la utilizan.
Disparadores
Es un procedimiento que se ejecuta cuando se cumple
una condición establecida al realizar una operación de
inserción (INSERT), actualización (UPDATE) o borrado
(DELETE).
DOM
Document Object Model (Modelo de Objetos del
Documento ), es una interfaz de programación de aplicaciones
que proporciona un conjunto estándar de objetos para
representar documentos HTML y XML.
Dom4j
Es un conjunto de herramientas para la escritura de
aplicaciones de procesamiento de XML
DTD
Document Type Definition. La definición de tipo de
documento es una descripción de estructura y sintaxis de un
documento XML.
Entidad
Es todo aquello que exhibe existencia real, no
necesariamente material o animada. Autonomía de gestión en
su
organización
interna
y
externa.
Diferenciación
e
individualidad.
Forward
“Hacia delante”
GID
Es un identificador de un grupo de usuarios.
GPS
Sistema de Posicionamiento Global es un Sistema
Global de Navegación por Satélite que permite determinar en
todo el mundo la posición de un objeto, una persona, un
vehículo o una nave, con una precisión hasta de centímetros,
97 usando GPS diferencial, aunque lo habitual son unos pocos
metros.
GPL
Graphical
presentation
Language.
Idioma
de
presentación gráfica.
GUI
Interfaz Gráfica de Usuario (Graphical User Interface)
es un tipo de interfaz de usuario que utiliza un conjunto de
imágenes y objetos gráficos para representar la información y
acciones disponibles en la interfaz.
GvSIG
Es una herramienta orientada al manejo de la
información geográfica.
Hackers
Se refiere a un experto en varias o alguna rama técnica
relacionada con la informática: programación, redes de
computadoras, sistemas operativos, etc.
Herencia
Es una propiedad que permite que los objetos sean
creados
a
partir
de
otros
ya
existentes,
obteniendo
características (métodos y atributos) similares a los ya
existentes
HTML
HyperText Markup Language (Lenguaje de Marcas de
Hipertexto) Es usado para describir la estructura y el contenido
en forma de texto, así como para complementar el texto con
objetos como imágenes.
IDE
Entorno
de
Desarrollo
Integrado
(Integrated
Development Environment), es un programa compuesto por un
conjunto de herramientas para un programador.
Indexar
Es una estructura de datos que mejora la velocidad de
las operaciones en las tablas de la misma.
98 JAXP
Java Api for XML Processing. sirve para la manipulación
y el tratamiento de archivos XML.
MapServer
Es un entorno de desarrollo en código abierto para la
creación de aplicaciones SIG en Internet/Intranet con el fin de
visualizar, consultar y analizar información geográfica a través
de la red mediante la tecnología.
Metadatos
Enfoque para construir un puente sobre el intervalo
semántico.
Modelización
Es
una
técnica
que
consiste
en
crear
una
representación ideal de un objeto real mediante un conjunto de
simplificaciones y abstracciones, cuya validez se pretende
constatar.
MVC
Modelo Vista Controlador es un patrón de arquitectura
de software que separa los datos de una aplicación, la interfaz
de usuario, y la lógica de control en tres componentes distintos
NetBeans
Plataforma para el desarrollo de aplicaciones de
escritorio usando Java y a un entorno de desarrollo integrado,
desarrollado usando la Plataforma NetBeans.
Nodo
Punto de intersección o unión de varios elementos que
confluyen en el mismo lugar.
OpenGis
Es un estándar internacional orientado a Sistemas de
Información Geográfica.
Oracle
Es un sistema de gestión de base de datos relacional.
Oracle Spatial
Es una opción por separado de Oracle.
Parser
Programa o la parte de un programa que analiza un
dato
alfanumérico
para
poder
reconocer
unidades
gramaticales.
99 Plantillas
Forma de dispositivo que proporciona una separación
entre la forma o estructura y el contenido.
Plataforma
Es el principio, en el cual se constituye un hardware,
sobre el cual un software puede ejecutarse/desarrollarse.
Polilínea
Conjunto de entidades, líneas, círculos, arcos, etc.
PostGIS
Módulo que añade soporte de objetos geográficos a la
base de datos objeto-relacional PostgreSQL, convirtiéndola en
una base de datos espacial para su utilización en Sistema de
Información Geográfica.
PostgreSql
Sistema de gestión de base de datos relacional
orientada a objetos de software libre, publicado bajo una
licencia.
Procedural
Referencia al concepto de procedimiento.
Quantum-GIS
Es un Sistema de Información Geográfica. Permite
manejar formatos raster y vectoriales, así como bases de
datos.
Raster
Es una estructura o fichero de datos que representa una
rejilla rectangular de pixeles o puntos de color.
Relación
Conexión, de una cosa con otra.
Rutear
Indicar la ruta de un archivo.
SGML
Standard Generalized Markup Language (Lenguaje de
Marcado Generalizado). Consiste en un sistema para la
organización y etiquetado de documentos.
Shape
Forma. Molde.
SIG
Un Sistema de Información Geográfica (SIG o GIS). Un
modelo de una parte de la realidad referido a un sistema de
100 coordenadas terrestre y construido para satisfacer unas
necesidades concretas de información.
SQL
Lenguaje de consulta estructurado es un lenguaje
declarativo de acceso a bases de datos relacionales que
permite especificar diversos tipos de operaciones en éstas.
SRID
Identificador
de
Referencia
Espacial
(SRID).
Corresponde a un sistema de referencia espacial basado en el
elipsoide concreto usado para la creación de mapas de tierra
plana o de tierra redonda.
SSL
Secure Sockets Layer proporcionan comunicaciones
seguras por una red.
Subconsulta
Es una instrucción anidada dentro de una instrucción o
dentro de otra consulta.
Superposición
Poner una cosa encima de otra.
Tags
Etiqueta. Es una marca con tipo que delimita una región
en los lenguajes basados en XML.
Terabyte
Unidad de medida de almacenamiento, su símbolo es
TB y equivale a 1024GB.
Tuplas
Son estructuras de datos que constan de varios campos
que pueden contener datos de tipos distintos.
Vector
Es todo segmento de recta dirigido en el espacio.
W3C
World
Wide
Web
Consortium,
es
un
consorcio
internacional que produce recomendaciones para la World
Wide Web.
Widgets
Es una aplicación o programa, presentado en archivos o
ficheros pequeños que son ejecutados por un motor.
101 WKT
Well Known Text (texto bien conocido). Una codificación
o sintaxis diseñada específicamente para describir objetos
espaciales expresados de forma vectorial.
XML
(lenguaje de marcas extensible), es un lenguaje
extensible
de
etiquetas
Extensible
Markup
Language
desarrollado por el W3C.
XML Schema
Lenguaje de esquema utilizado para describir la
estructura y las restricciones de los contenidos de los
documentos XML de forma precisa.
XPath
XML Path Language es un lenguaje que permite
construir expresiones que recorren y procesan un documento
XML.
XSL
Extensible Stylesheet Language, (lenguaje extensible
de hojas de estilo) lenguajes basados en el estándar XML que
permite describir cómo la información contenida en un
documento XML debe ser transformada o formateada para su
presentación en un medio.
XSLT
Transformaciones
XSL
es
un
estándar
de
la
organización W3C que presenta una forma de transformar
documentos XML en otros e incluso a formatos que no son
XML.
102 INDICE DE FIGURAS
Figura 1.1 Los tres niveles de abstracción de datos
14
Figura 1.2 Ejemplo de diagrama E- R
16
Figura 1.3 Ejemplo de base de datos relacional
18
Figura 1.4 Estructura arborescente a varios niveles
20
Figura 1.5 Código de ejemplo de modelo orientado a objetos
25
Figura 2.1 Tres tipos de datos espaciales: punto, línea y región
36
Figura 2.2 Enlace ‘forward’ para la relación de regiones
42
Figura 2.3 Enlace ‘backward’ para la relación de regiones
42
Figura 2.4 Contenido de Gran L
57
Figura 2.5 Ubicación del bombero “T. Montoya” y del incendio “Grann L”: a) punto
A y región de 315km2 el 5/7/06, b) punto B y región de 503km2 el
6/7/06, c) punyo C y región de 503km2 el 7/7/06, y d) punto D y región
de 114km2 el 7/7/06
61
Figura 2.6 MPOINT resultante de INTERSECTION(ubicación, GranL).
63
Figura 3.1 Proceso de transformación de documentos XML
73
Figura 4.1 Componentes de un SIG
79
103 INDICE DE TABLAS
Tabla 2.1 Modelo conceptual de objetos espaciales.
38
Tabla 2.2 Estándar para la implementación de objetos espaciales
39
Tabla 2.3 Muestra de datos de la relación bosque para SQLST y para el lenguaje
de Guting
53
Tabla 2.4 Muestra de datos de la relación incendio para SQLST
54
Tabla 2.5 Muestra de datos de la relación bombero para SQLST
54
Tabla 2.6 Muestra de datos de la relación incendio para el lenguaje
de Guting
55
Tabla 2.7 Muestra de datos de la relación bombero para el lenguaje
de Guting
55
Tabla 2.8 Resultado de la consulta 1 en el SQLST
57
Tabla 2.9 Resultado de la consulta 1 en Guting
58
Tabla 2.10 Resultado de la consulta 2 en SQLST
59
Tabla 2.11 Contenido de reg_grande
60
Tabla 1.12 Resultado parcial de la consulta 3 en SQLST
61
Tabla 2.13 Resultado de la consulta 3 en SQLST
62
Tabla 2.14. Resultado de la consulta 4 en SQLST
63
Tabla 2.15 Comparación entre SQLST y el lenguaje de Guting
64
Tabla 3.1 Características de las clases base de Java
67
Tabla 3.2 Descripción de algunos componentes de Swing.
68
104 Tabla 3.3 Tecnologías XML
71
105 
Descargar