Banco de Dados Espaciais
Disciplina BD Não Convencionais
Prof. Ricardo Rodrigues Ciferri
São Carlos, 20 de Agosto de 2010
Sumário
Tipos de Dados Espaciais
Representação dos Dados
Processamento de Consultas Espaciais
Filtragem
Refinamento
Tipos de Consulta Espacial
Exemplos de MAM
2
Tipos de Dados Espaciais
4
Ponto (0-dimensional) Menor unidade possível para representar um
objeto espacial Um objeto espacial representado por um ponto
não possui extensão Usado para representar localizações discretas.
Ex: cidade em um mapa
Tipos de Dados Espaciais
Linha (1-dimensional) Sequência de pontos conectados retilinearmente
Linha poligonal (1-dimensional) Linha em que os pontos não estão dispostos de forma
retilínea
Cada par de pontos conectados corresponde a um segmento de linha
Usadas para representar objetos espaciais lineares. Ex: rios, estradas, ferrovias e redes de infra-estrutura
5
Tipos de Dados Espaciais
Polígono (2-dimensional) Sequência fechada de linhas ou linhas poligonais Funcionalmente equivalente a uma linha poligonal
fechada Polígonos complexos podem permitir buracos ou
consistir de diversas partes disjuntas Usado para representar objetos bidimensionais.
Ex: área ocupada por um bairro
6
Tipos de Dados Espaciais
Poliedro (3-dimensional) Limitado por quatro ou mais polígonos,
denominados faces Interseção das faces formam as arestas Interseção das arestas formam os vértices Usado para representar sólidos no espaço. Ex:
peça mecânica ou membro humano
7
Tipos de Dados Espaciais
Os principais tipos espaciais oferecidos pelo PostGIS: POINT: define um Ponto com as dimensões fornecidas; POINTM: define um Ponto com duas dimensões (X e Y) e mais
uma dimensão M, que tem semântica livre, podendo ser temporal; LINESTRING: define uma linha utilizando uma coleção de pontos
de mesma dimensão; MULTILINESTRING: define uma coleção de linhas; POLYGON: Define um polígono, composto por uma LINESTRING
fechada; MULTIPOINT: coleção de Pontos de mesma dimensão; MULTILINESTRING: coleção de LINESTRINGs; MULTIPOLYGON: coleção de polígonos; GEOMETRYCOLLECTION: coleção de geometrias diversas;
8
Exemplos
Modelos numéricos de terreno Armazenadas em grades regulares (matricial), grades
triangulares (vetorial), ou isolinhas (representação vetorial sem topologia)
14
Exemplos
Redes Sua parte gráfica é armazenada em forma de coordenadas
vetoriais, e seus atributos não gráficos são guardados em um banco de dados
15
Representação dos Dados no MAM Utilização de abstrações (aproximações)
para representar a geometria do objeto espacial Diminuição de requisitos de armazenamento Redução do custo para se determinar a satisfação
de relacionamentos métricos, topológicos e direcionais
Aproximação deve ser conservativa
16
Processamento de Consultas Espaciais Aproximação progressiva
Aproximação de um objeto é um subconjunto de seus pontos
Deve ser utilizada antes da fase de refinamento Recuperação de candidatos verdadeiros Seu cálculo é mais custoso se comparado com a
aproximação conservativa
20
Tipos de Consultas Espaciais
Exact Match Query Dado um objeto o’ com atributo espacial o’.G ⊆ Ed,
encontre todos os objetos o que possuam as mesmas coordenadas que o’, ou seja, que possuam a mesma extensão e localização no espaço
EMQ (o’, dataset) = { o | o ∈ dataset ∧ o.G = o’.G }
21
Tipos de Consultas Espaciais Partial Match Query
Dado um objeto o’ com atributo espacial o’.G ⊆ Ed, encontre todos os objetos o que possuam, em uma dada dimensão, a mesma extensão e localização no espaço que o’
22
Tipos de Consultas Espaciais Point Query
Dado um ponto p ∈ Ed, encontre todos os objetos o que sobrepõem p
23
Tipos de Consultas Espaciais
Range Query Intersection Range Query: dado um retângulo d-‐
dimensional iso-‐oriented R ⊆ Ed, encontre todos os objetos o que tenham pelo menos um ponto em comum com R
24
Tipos de Consultas Espaciais
Range Query Containment Range Query: dado um retângulo d-‐
dimensional iso-‐oriented R ⊆ Ed, encontre todos os objetos o contidos em R
25
Tipos de Consultas Espaciais
Range Query Enclosure Range Query: dado um retângulo d-‐
dimensional iso-‐oriented R ⊆ Ed, encontre todos os objetos o englobam R
26
Tipos de Consultas Espaciais
Region Query É uma versão mais genérica de Range Query,
permitindo que a área de pesquisa tenha orientação e formatos arbitrários
Intersection / Containment / Enclosure Region Query: similar à definição utilizada para Range Query, substituindo-se somente o retângulo d-‐dimensional iso-‐oriented R por um objeto o’ com atributo espacial o’.G ⊆ Ed
27
Tipos de Consultas Espaciais
Adjacency Query Dado um objeto o’ com atributo espacial o’.G ⊆ Ed,
encontre todos os objetos o que são adjacentes a o’
28
Tipos de Consultas Espaciais
Nearest Neighbor Query One-Nearest Neighbor Query: dado um objeto o’ com
atributo espacial o’.G ⊆ Ed, encontre todos os objetos o que tenham a distância mínima de o’
29
Tipos de Consultas Espaciais
Nearest Neighbor Query k-Nearest Neighbor Query: dado um objeto o’ com
atributo espacial o’.G ⊆ Ed, encontre os k objetos o mais próximos de o’
30
Tipos de Consultas Espaciais
Direction Query Dado um objeto espacial o’ com atributo espacial o’.G ⊆ Ed, encontre todos os objetos o posicionados na direção s com relação ao objeto o’
Valores válidos para a direção s incluem: ao norte de, ao sul de, a leste de, a oeste de, a nordeste de, a sudeste de, a noroeste de, e a sudoeste de
31
Tipos de Consultas Espaciais
Distance Query Dado um objeto o’ com atributo espacial o’.G ⊆ Ed,
encontre todos os objetos o cuja distância com relação ao o’ seja no máximo q
DTQ (o’, dataset, q) = { o | o ∈ dataset ∧ dist (o.G, o’.G) ≤ q }
≡ IReQ (o’’, dataset) onde o’’ = região formada por o’.G e
distância q
32
Tipos de Consultas Espaciais
Spatial Join Para dois conjuntos de objetos espaciais A e B e um
predicado espacial θ, determine todos os pares de objetos (o, o’) ∈ A x B onde θ (o.G, o’.G) é verdadeiro
O predicado espacial pode ser definido a partir de um relacionamento topológico, métrico ou direcional
Nomenclatura de alguns subtipos de Spatial Join: Intersection / Containment / Enclosure / Adjacency / Exact Match / Nearest Neighbor / Distance Minor / Direction North Spatial Join
33
Tipos de Consultas Espaciais
34
Nearest Neighbor Spatial Join
Spatial Join – exemplos
Direction North Spatial Join
Intersection Spatial Join
Exemplos de MAM
R-tree Mecanismo de indexação espacial estruturado
hierarquicamente na forma de uma árvore balanceada Similar a B-tree Suporte dinâmico para a manipulação de objetos de
dimensão não-zero no espaço multidimensional R*-tree
Mecanismo de indexação espacial derivado da R-tree Proporciona um bom desempenho na recuperação
destes objetos através da utilização dos critérios de coverage, overlap, margin e storage
35
R-tree
36
P1
P2 P3
P4
P5
P6 L1
L2
L3 L4
L5
L6
r1
r2
r3
r4
r5
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95
100
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100
R3
r6
R4
R1 R7
R6
R5
R8
R2
Extensão e localização dos objetos no espaço
Pesquisa na R-tree
Ramificação do percurso pela sobreposição entre os MBB das entradas de um nó interno
38
E1
E2
E3
janela de consulta
Pesquisa na R-tree
Ramificação do percurso causado pelo armazenamento de MBB grandes
39
E3 E1
E2
Entradas (MBB)
Extent
Janela de Consulta JC
Pesquisa na R-tree
Ramificação do percurso causado pela escolha de uma janela de consulta abrangente
40
E3 E1
E2
Entradas (MBB)
Extent
Janela de Consulta
JC
Pesquisa na R-tree
Relacionamento de inclusão (está contido) e relacionamento de interseção
41
janela de consulta
MBB da entrada de um nó interno
obj2
obj1 obj3 janela de consulta
MBB da entrada de um nó interno
obj1
obj2
obj3
Pesquisa na R-tree
Existência do relacionamento de inclusão (contém) do MBB de um objeto espacial com relação à janela de consulta
42
JC
(a)
(c)
(b)
(a) engloba a JC e também possui um MBB de objeto espacial que contém a JC
(b) não possui nenhum MBB de objeto espacial que contém a JC, apesar da entrada englobar a JC
(c) não engloba a JC e portanto não possui nenhum MBB de objeto espacial que possa conter a JC
Pesquisa na R-tree
Candidatos falsos e influência da área de dead space na determinação dos relacionamentos topológicos de (a) Interseção e (b) Inclusão (contém)
43
Área de Dead Space
Entrada (MBB) Janela de Consulta Objeto Espacial
(a) (b)
Representando incerteza
Fuzzy Minimum Bounding Rectangle (FMBR)
Regiões vagas
Dentro de IR: =1
Fora de IR: valor decrescente
46
Top Related