TrSBDE2 Final

Fazer download em docx, pdf ou txt
Fazer download em docx, pdf ou txt
Você está na página 1de 24

FACULDADE DE CIÊNCIAS

Departamento de Matemática e Informática

Ciências de Informação Geográfica

Unidade Curricularː Base de Dados Espacial

Tema: Avaliação da Eficiencia de Consultas em Base


de Dados Espacial

Discentes:

 Cacilda Lucas Mucambe;


 Ginélcio Filimone.

Docentes:

M.sc.Israel Matavele .

Lic. Edson Inguane

Maputo, Outubro de 2024


Resumo

Os bancos de dados são amplamente utilizados en diversas aplicações presentes no dia-a-dia,


tais como:transações bancárias, transações com cartão de crédito, reservas de linhas aéreas e
informações de horários, revendedores on-line, vendas, dentre outras aplicações. Devido ao
grande volume de dados que estes precisam gerenciar e a complexidade de suas aplicações, é
funadamental que as operações sejam realizadas de forma eficiente,pois o desempenho de um
sistema de gestão de uma base de dados (SGB) é medido a partir da sua eficiência na realaização
de consultas. Visando na agilidade na consulta desses dados, o objectivo deste trabalho é avaliar
a eficiência de consultas em uma base de dados espacial (BDE), tendo como foco o estudo do
desempenho da base de dados aplicando a técnica de optimização.

Palavras – Chave: Base de Dados, , Base de Dados Espacial (BDE), SGB, optimização
Índice
1. Introdução................................................................................................................................5

1.1. Geral..................................................................................................................................6

1.2. Específicos........................................................................................................................6

2. Metodologia.............................................................................................................................6

3. Revisão Bibliográfica..............................................................................................................7

3.1. Modelo conceptual..............................................................................................................10

3.2. Modelo Lógico................................................................................................................11

3.2. Normalização......................................................................................................................12

3.3. Otimização de consultas SQL.........................................................................................13

3.3.1. Otimização através de índices.................................................................................13

3.3.1.1. Tipos de Índices...................................................................................................14

3.3.1.2. Índice B-Tree em Chaves Primárias e Estrangeiras.............................................14

3.3.1.3. Índice B-Tree em Colunas Frequentemente Filtradas..........................................14

3.3.1.4. Índice GiST para Geometria................................................................................15

4. Material e Métodos...................................................................................................................15

4.1. Material...............................................................................................................................15

4.2. Métodos..............................................................................................................................16

...................................................................................................................................................17

5. Resultado...............................................................................................................................18

5.1. Resultado de consultas não otimizadas...............................................................................18

5.2. Resultado de consultas otimizadas com índices.................................................................20

6. Conclusão..............................................................................................................................23

7. Referências Bibliográficas.....................................................................................................24
1. Introdução
Segundo Elmasri & Shamkant (2003), as bases de dados são um conjunto interrelacionado de
dados numa determinada área e os SGBD são o software que gere o armazenamento,
manipulação e pesquisa dos dados existentes na BD, funcionado como um interface entre as
aplicações e os dados necessários para execução dessas aplicações.

Como peça fundamental, é necessário que seja dada sua devida importância na
implementação de algum Sistema de Informação, passando da escolha de um Sistema
Gerenciador de Banco de Dados (SGBD), pela construção de tabelas e relacionamentos até a
criação de consultas de Linguagem de Consulta Estruturada ou Structured Query Language
(SQL) que permite que usuários possam fazer alterações no BD, ou consultas específicas
formadas por diversos filtros. Essas consultas são muitas vezes tratadas como meros
caminhos sem importância para se chegar ao objetivo final que é o resultado da mesma,
porém o que fica cada vez mais evidente é que dependendo do caminho a se seguir, podemos
chegar ao objetivo de maneira mais rápida e sem imprevistos. Mesmo um aplicativo bem
projetado poderá experimentar problemas de desempenho se a frase SQL que usa for mal
construída. Falhas no projeto do aplicativo e na construção do SQL causam a maioria dos
problemas de desempenho em bancos de dados projetados adequadamente (VOLACO,
2004).

O presente trabalho tem como objectivos:

1.1. Geral
O objectivo geral do trabalho é avaliar a eficiência de consultas em base de dados espaciais.

1.2. Específicos
 Extracção das possíveis entidades;
 Elaboração do modelo conceptual;
 Transformação do modelo conceptual em lógico;
 Norma lização da base de dados espacial;
 Implementação da base de dados espacial;
 Execução de consultas da base de dados.
2. Metodologia
A metodologia adoptada para a conclusão do trabalho é baseada em uma revisão bibliográfica,
que consistiu em analisar estudos anteriores, artigos científicos, relatórios ténicos e publicações
relevantes para obter uma compreensão sólida do tema, sendo a elaboração do trabalho
organizada em 3 fases que são a revisão bibliográfica que foi realizada para fundamentar o
estudo, consultando artigos, livros e dissertações sobre o tema. Em seguida, foi construída uma
base de dados espaciais utilizando ferramentas de Sistemas de Informação Geográfica (SIG),
integrando diferentes camadas de dados geográficos, por fim foram realizadas consultas
espaciais sobre essa base de dados, permitindo a análise de padrões e tendências espaciais
relevantes para a pesquisa.

.
3. Revisão Bibliográfica
Desde os primórdios da civilização, existe Banco de Dados, seja ele em forma de manuscritos,
pastas, armários, prateleiras até o armazenamento virtual que é aplicado hoje em dia. Com foco
no armazenamento virtual da informação, do mesmo jeito que se usam gerenciadores de
comunicação para comunicar-se através de processos remotos, usam-se SGBD para manter
grandes armazenamentos de dados compartilhados, ou seja, para manter um banco de dados
(Heuser,2008).

Uma base de dados é um conjunto de dados ou informações que se relacionam entre si e estão
organizados de forma a facilitar a sua utilização pelo utilizador. É um sistema cuja finalidade é
registar, atualizar, manter e disponibilizar informação relevante para a atividade de uma
organização .Este conjunto de informações será partilhado e utilizado para diferentes fins e por
diferentes utilizadores. No entanto, os usuários não apenas compartilham informações, mas
também têm necessidades e perspetivas diferentes dessas informações.

Quando uma base de dados é criada, os seguintes objecticos são

 Reduzir o espaço ocupado pela informação;


 Facilitar a atualização da informação;
 Aumentar a velocidade de pesquisa;
 Evitar redundância de informação.

Tabela 1:Vantagens e desvantagens de uma base de dados.

Vantagens Desvantagens
Diminuição de redundância Custo elevados
Controlo centralizado Maior complexidade
Lexibilidade Risco centralizado

Um SGBD – Sistema de Gestão de Base de Dados (em inglês DBMS – DataBase Management
System) é uma ferramenta construída para gerir a informação que se encontra armazenada numa
base de dados (Silva & Feitais, 2013-2014). Um SGBD ajuda a adicionar nova informação à
medida que fica disponível, a actualizar a informação sempre que necessário, a catalogar
rapidamente a informação, a realizar cálculos com os dados e a imprimir a informação numa
grande variedade de formatos. Mais importante que tudo isto, permite-lhe encontrar exactamente
a informação pretendida.

Assim um Sistema de Gestão de Base de Dados é um software que possui recursos capazes de
manipular as informações da base de dados e interagir com o usuário. Alguns exemplos de
SGBDs são: PostgreSQL,o, o próprio Microsoft Office Acess.

O SGBD faz toda a gestão de transações das bases de dados contidas nele. Uma transação em
uma base de dados consiste num conjunto de operações que são tratadas como uma unidade
lógica indivisível.

As transações realizadas pelo SGBD nas bases de dados devem seguir algumas propriedades
fundamentais conhecidas como ACID (Atomicidade, Consistência, Isolamento e Durabilidade),
provenientes do inglês Atomicity, Consistency, Isolation, Durability (Elmasri & Shamkant,
2003).

-Atomicidade: Capacidade de uma transação ter todas as suas operações executadas ou nenhuma
delas. Ou seja, caso a transação não aconteça totalmente a base de dados executa um rollback e
retorna ao seu estado consistente anterior, caso todas as operações da transação aconteçam esta é
considerada como válida.

-Consistência: Uma transação que termine de uma forma normal garante que a base de dados
fica no estado consistente, ou seja uma transação só confirma dados que respeitem a consistência
da base de dados. Esta propriedade é necessária para garantir a quarta característica,
durabilidade.

-Isolamento: Quaisquer operações dentro de uma transação não são afetadas por operações de
outras transações a decorrer concorrencialmente. Do ponto de vista de cada transação, a base de
dados está disponível apenas para si. Não respeitar esta característica leva ao problema mostrado
anteriormente, na medida em que podem acontecer interferências indesejáveis entre operações de
transações concorrentes.

-Durabilidade: Após uma transação terminar e confirmar os seus resultados na base de dados, o
SGBD deve garantir que esses dados são persistentes. Se o Criação de Sistema de Gestão de
Base de Dados Único 8 utilizador for informado do sucesso da transação, os dados devem estar
guardados de forma persistente na base de dados.

Existem muitas vantagens em se usar um SGBD, segue apenas algumas das destacadas por
(Elmasri, Navathe .2011) que são:

- Capacidade de controlar redundância: evita que sejam armazenados dados iguais em


diferentes lugares, acabando com os dados redundantes, possíveis discrepâncias em informações
buscadas em lugares diferentes e ainda diminuí o desperdício de esforço;

- Controle de acesso: evita o acesso de usuários não autorizados a determinadas informações;

- Backup e recuperação de dados: oferece recursos para recuperar os dados em casos de falha
de software ou hardware, ou seja, além dele fazer o backup dos 16 dados atuais, ele consegue
recuperar o sistema todo baseado nesses dados caso haja alguma falha;

- Múltiplas interfaces de usuário: oferece diferentes interfaces para diferentes tipos de


usuários, com isso podem existir interfaces mais básicas para usuários que irão fazer simples
consultas aos dados armazenados, ou então interfaces mais robustas e complexas para os
programadores de aplicação poderem fazer alterações no sistema;

- Restrição de Integridade: existem vários tipos de restrições, do mais básico, que seria
restringir um campo a aceitar apenas números inteiros (por exemplo, uma nota de prova, ou
salário), a casos mais complexos que envolvem verificações programadas para avaliar diferentes
circunstâncias, ou ainda, restrição para atualizações simultâneas, impedindo que diferentes
usuários atualizem a mesma informação .

3.1. Modelo conceptual

A elaboração do modelo conceptual torna-se como o passo mais importante na criação de uma
base de dados relacional, considerando-se como a base de todo o processo.Com a produção do
modelo conceptual é possível alcançár uma simplificação da realidade no que diz respeito á
problemática, pois somente considerándo-se as particularidades e objectividades de maior
interesse de um projecto (Silva & Feitais, 2013-2014) ..
O modelo conceptual no geral permite identificar e representar o problema e os objectivos de
estudo que se pretendem atingir e solucionar. O modelo conceptual consiste essencialmente, na
definição das entidades (objectos apreendidos) e dos seus atributos, assim como os seus
respectivos relacionamentos entre elas e o tipo de cardinalidade existente, para subsequente
verificação, análise e concretização do trabalho. Um modelo é conceptualizado para o fim a que
se destina, não servindo, geralmente para outros fins sobre a mesma realidade.

Através do modelo conceptual são identificados:

 Entidades – Substantivos (o que é tangível, coisa que existe e é distinguível, ou seja, são
objectos do “mundo real” sobre os quais deseja-se manter informações na base de dados);
 Relacionamentos – Verbos (traduz a relação entre duas ou mais entidades. Ás vezes um
relacionamento aparece mais do que uma vez numa entidade, tal como um actor
desempenha diversos papéis, também uma entidade pode ter diversos papéis
relativamente a um relacionamento);
 Atributos – Adjectivos (caracterização da entidade, ou seja, propriedades ou
características próprias que permitem descrever as entidades e os relacionamentos).

Existem três tipos de cardinalidade dos relacionamentos:

 Relacionamento um-para-um (1:1) - uma única ocorrência de uma entidade pode-se


relacionar com apenas uma única ocorrência de outra entidade.
 Relacionamento um-para-muitos (1:N) ou (N:1) - uma ocorrência de uma entidade
pode-se relacionar com muitas ocorrências de outra entidade ou vice-versa.
 Relacionamento muitos-para-muitos (N:M) - várias ocorrências de uma entidade
podem-se relacionar com muitas ocorrências de outra entidade.

Para a elaboraboração da nossa base de dados a modelagem conceitual do sistema foi


desenvolvida após uma análise detalhada dos requisitos, identificando as principais entidades
(proprietário, parcela, tipo_de_plantação, e finalidade) e seus relacionamentos.

O Sistema de Gestão Agrícola (SGA) foi concebido para atender às necessidades específicas do
Município da Vila de Boane.No núcleo do sistema, encontra-se a entidade Parcela, que
representa as áreas agrícolas do município. Cada parcela está associada a um Proprietário, possui
uma Finalidade específica e um determinado Tipo de Plantação. A característica distintiva deste
modelo é a inclusão do componente espacial, representado pelo atributo geometria na entidade
Parcela, que armazena a forma e localização geográfica de cada área agrícola.

Os relacionamentos entre as entidades foram estabelecidos considerando as regras de negócio do


município:

 Uma parcela pertence a exatamente um proprietário;


 Cada parcela tem uma finalidade específica;
 Uma parcela possui um tipo de plantação definido;
 Um proprietário pode ter múltiplas parcelas.

3.2. Modelo Lógico


A realização do modelo lógico é o processo posterior á concretização do modelo conceptual.
Aparece como essencial, para a obtenção do objectivo proposto, podendo esta etapa ser
considerada como a solução inicial da problemática. Recai na estruturação e esquematização
lógica e pormenorizada da base de dados e na deliberação do seu conteúdo identificando as
relações (entidades), atributos chave (primárias e estrangeiras), e os atributos não chave.

Com base no modelo conceptual foi possível chegar ao seguinte modelo lógico:

Parcela ( cod_parcela (PK), localização, área, perímetro, geometria, cod_proprietário(FK),


finalidade_id(FK), tipo_plantação(FK) )

Proprietario ( cod_proprietario(PK), nome_proprietario, data_nascimento)

Finalidade ( id (PK), descricao_finalidade)

TipoPlantacao ( id (PK), descricao_tipo_plantacao)

3.2. Normalização
A normalização é uma etapa muito importante na criação da base de dados final, pois incide na
validação e correcção da solução inicial de uma problemática. Consiste em analisar o esquema
de relações /dependências entre atributos, baseados em chaves idênticas, com um conjunto de
regras bem definidas com vista á eliminação dos dados.

Este método baseia-se na transformação de uma relação arbitrária, sujeita a determinadas


restrições, num conjunto de projecções possuindo certas características de normalização,
reduzindo o risco de anomalias no projecto da base de dados.

A normalização é um conjunto de normas que permitem criar uma boa estruturação da base de
dados relacional, por forma a evitar redundância, inconsistência, anomalias de inserção e
anomalias de apagamento (Silva & Feitais, 2013-2014).

A normalização é um processo composto por seis regras básicas chamadas de Formas Normais
(as relações que não satisfazem certas propriedades chamadas formas normais, são
consequentemente decompostas em relações mais pequenas, de modo a satisfazer as
propriedades pretendidas):

 A Primeira Forma Normal (1 NF) – nenhum dos atributos simples ou compostos pode ser
uma relação, ou seja, nenhuma relação pode ter grupos de atributos repetidos; a tabela
deve ser apenas bidimensional e todas as ocorrências de um mesmo registo devem conter
o mesmo número de atributos;
 A Segunda Forma Norma (2 NF) – quando esta na 1 NF e cada atributo não participante
na chave primária for totalmente, ou seja, quando todos os atributos não chave dependem
da totalidade da chave;
 A Terceira Forma Normal (3 NF) - quando está na 2 NF e cada atributo não participante
na chave primária for dependente da forma não transitiva da chave primária, isto é, se
nenhum atributo não chave depender funcionalmente de algum outro atributo que não
seja chave.

Apenas na prática as três que foram mencionadas sucintamente são as mais importantes,
enquanto a forma BCNF (Forma Normal de Boyce Cood), 4 NF (Quarta Forma Normal) e 5 NF
(Quinta Forma Normal) são raramente consideradas no desenvolvimento prático de uma base de
dados (Silva & Feitais, 2013-2014).

3.3. Optimização de consultas SQL


Existem diferentes sintaxes para se construir uma consulta que traga os mesmos resultados, cada
uma dessas sintaxes pode ser mais demorada ou consumir maior processamento dependendo da
situação em que ela é usada, por isso é necessário identificar qual é a forma com melhor custo
benefício para cada situação, essa avaliação em busca de uma consulta é chamada de
optimização de consulta.

Optimização da consulta é o processo de selecionar o plano de avaliação de consulta mais


eficiente dentre as muitas estratégias normalmente possíveis para o processamento de
determinada consulta, especialmente se esta for complexa.” (SILBERSCHATZ et all,2006).

O princípio da optimização é analisar as consultas de forma algébrica relacional, portanto não é


uma tarefa simples, fazendo com que a grande maioria da otimização seja feita pelo próprio
SGBD, que transformará a consulta de linguagem SQL em uma expressão algébrica e assim
poderá encontrar uma nova expressão equivalente que tenha uma execução mais eficiente
(SILBERSCHATZ et all,2006).

3.3.1. Optimização através de índices


Na optimização de uma base de dados, índices (ou indexes, em inglês) são estruturas que
aumentam a eficiência na recuperação de dados em uma tabela. Eles funcionam de maneira
semelhante aos índices de um livro, permitindo que o sistema de gerenciamento de banco de
dados (SGBD) encontre rapidamente linhas que atendem a certas condições, evitando a
necessidade de varrer toda a tabela. A optimizicação através de índices permite melhor
performance nas consultas, aprimoramento da ordenação e filtragem e a eficiência em consultas
agregadas por outro lado ela tem um custo elevado em armazenamento, impacto em operações
de escrita e complexidade de manutenção.

3.3.1.1. Tipos de Índices


Segundo Silberschatz, 2006, os índices podem variar em tipo e função, dependendo das
necessidades específicas do banco de dados e da aplicação:

 Índice Clusterizado (Clustered Index): Ordena fisicamente os dados da tabela com


base nos valores do índice. Como resultado, só é possível ter um índice clusterizado por
tabela.
 Índice Não-Clusterizado (Non-Clustered Index): Armazena uma cópia ordenada das
colunas indexadas e uma referência para o registro na tabela. Permite múltiplos índices
por tabela.
 Índices Compostos: Criados em mais de uma coluna, são úteis para consultas que filtram
por mais de uma coluna ao mesmo tempo.
 Índices Únicos: Garantem que todos os valores da coluna ou colunas sejam únicos.

A optimização pode ser feita através dos seguintes índices:

3.3.1.2. Índice B-Tree em Chaves Primárias e Estrangeiras


O Índice B-Tree é o tipo de índice padrão em PostgreSQL e é ideal para operações de
comparação e busca por igualdade. Este índice organiza os dados em uma estrutura de árvore
balanceada, permitindo acesso rápido a registros baseados em valores específicos, como chaves
primárias e estrangeiras.

As consultas que utilizam junções ( JOIN) entre tabelas de dados, como Parcelas e Proprietario,
frequentemente dependem das chaves primárias e estrangeiras para unir as tabelas corretamente.
Ao indexar as colunas de chaves primárias e estrangeiras, o PostgreSQL pode acessar os
registros de junção de forma mais rápida e eficiente, sem precisar examinar todas as linhas.

3.3.1.3. Índice B-Tree em Colunas Frequentemente Filtradas


Colunas frequentemente utilizadas em filtros (como condições WHERE) também se beneficiam de
um índice B-Tree. Esse tipo de índice ajuda o PostgreSQL a localizar os registros que atendem a
uma condição específica de maneira rápida, sem precisar ler todas as linhas da tabela.

Se a coluna área,por exemplo, é consultada com frequência para verificar parcelas maiores ou
menores que determinados valores (WHERE area > 1000), um índice B-Tree torna essas
operações mais rápidas. Quando a coluna area é indexada, o PostgreSQL pode buscar
rapidamente parcelas que correspondem aos critérios de área especificados, melhorando o
desempenho das consultas.

3.3.1.4. Índice GiST para Geometria


Existem operações que executam cálculos complexos entre as geometrias para verificar
sobreposições, distâncias e contenções, e um índice GiST na coluna geometria torna essas
operações muito mais rápidas. Isso ocorre porque o GiST permite que o PostgreSQL encontre
rapidamente áreas relevantes dentro do espaço geométrico, reduzindo a necessidade de
varreduras completas na tabela.

4. Material e Métodos

4.1. Material
Tabela 2: Tabela do material usado

Material Utilidade
Microsoft Word 2016 Usado no registro de toda
informação escrita no presente
relatório
Norma APA 7ª edição Para organização das referências
bibliográficas e citação
QGIS 3.30 Para a vectorização e geração do
shapefile das parcelas
PostgreSQL Criação das tabelas e geração da
base de dados
4.2. Métodos
Figura 1: Fluxograma Metodológico
5. Resultado

5.1. Resultado de consultas não optimizadas


Consulta 1:

Essa consulta realiza uma agregação de dados nas tabelas Parcelas e Tipoplantacao, calculando
a quantidade e a área total das parcelas para cada tipo de plantação.

SELECT tp.descricao_tipo_plantacao,

COUNT(*) as numero_parcelas,

SUM(p.area) as area_total

FROM public."Parcelas" p

JOIN Tipoplantacao tp ON p.codtipo = tp.id_tipo

GROUP BY tp.descricao_tipo_plantacao;

Tempo de Execução: 00:00:00.139

Figura 2:Resultado da consulta 1 não optimizada.

Consulta 2:

Esta consulta mostra a contagem de parcelas, área mínima, máxima e média para cada tipo de
plantação, fornecendo uma visão geral mais detalhada da distribuição das áreas.

SELECT tp.descricao_tipo_plantacao,

COUNT(*) AS numero_parcelas,

MIN(p.area) AS area_minima,
MAX(p.area) AS area_maxima,

AVG(p.area) AS area_media

FROM public."Parcelas" p

JOIN Tipoplantacao tp ON p.codtipo = tp.id_tipo

GROUP BY tp.descricao_tipo_plantacao;

Tempo de Execução: 00:00:00.203

Figura 3:Resultado da consulta 2 não optimizada.

Consulta 3:

Esta consulta retorna uma lista de proprietários e suas parcelas cujas áreas são maiores que 700
metros quadrados, ordenando as parcelas em ordem decrescente de área.

SELECT p.nome AS "Nome do proprietario",

pa.cod_parcela,

pa.area,

pa.geometria

FROM proprietario p

INNER JOIN public."Parcelas" pa

ON p.cod_proprietario = pa.codproprietario

WHERE area > 700

ORDER BY área

Tempo de Execução: 00:00:00.153


Figura 4:Resultado da consulta 3 não optimizada.

Figura 5: Visualização do resultado da consulta 3.

Consulta 4:

SELECT * FROM proprietario WHERE data_nascimento between '1983-


02-27' AND '1983-04-07’

Resultado da Consulta 4

5.2. Resultado de consultas optimizadas com índices


Consulta 1:
O índice B-Tree em cod_proprietario na tabela Parcelas e nas chaves primárias de Proprietario
permite que o banco de dados acelere as operações de junção baseadas nessas colunas,
especialmente quando há grande volume de dados.

SELECT tp.descricao_tipo_plantacao,

COUNT(*) as numero_parcelas,

SUM(p.area) as area_total

FROM public."Parcelas" p

JOIN Tipoplantacao tp ON p.codtipo = tp.id_tipo

GROUP BY tp.descricao_tipo_plantacao;

Tempo de Execução: 00:00:00.130

Figura 6: Resultado da consulta 1 optimizada com o índice B_Tree.

Consulta 2:

CREATE INDEX idx_parcelas_geometria ON public."Parcelas" USING GIST


(geometria);

SELECT p.nome as "Nome do proprietario" , pa.cod_parcela, pa.geometria

FROM proprietario p

INNER JOIN public."Parcelas" pa

ON p.cod_parcela = pa.cod_parcela

ORDER BY ST_Area(pa.geometria) DESC


Figura 7: Resultado da consulta 2 optimizada pelo índice GiST para geometria.

Consulta 3:

Um índice B-Tree na coluna area da tabela Parcelas permite que consultas com condições de
filtro baseadas em área sejam executadas mais rapidamente.

SELECT p.nome AS "Nome do proprietario",

pa.cod_parcela,

pa.area,

pa.geometria

FROM proprietario p

INNER JOIN public."Parcelas" pa

ON p.cod_proprietario = pa.codproprietario

WHERE area > 700

Tempo de Execução: 00:00:00.108


Figura 8:Resultado da consulta 3 optimizada pelo índice B-Tree em colunas frequentemente
filtradas.

Consulta 4:

SELECT cod_proprietario, nome FROM proprietario WHERE


data_nascimento between '1983-02-27' AND '1983-04-07’

Figura 9: Resultado da consulta 4 optimizada pelo índice B-Tree em colunas frequentemente


filtradas.
6. Conclusão
No contexto do desenvolvimento e optimização da base de dados espaciais, a utilização de
índices específicos mostrados é fundamental para melhorar o desempenho das consultas. Este
trabalho evidenciou uma diferença de eficência entre consultas realizadas sem índices e com
índices otimizados. Ao criar a base de dados espaciais e implementar índices observou-se um
impacto positivo no desempenho das operações de busca e recuperação de informações.

As consultas realizadas sem índices apresentam um tempo de resposta mais lento, especiamente
em operações envolvendo grande volume de dados espaciais, devido ao maior esforço
computacional para varrer a tabela. Com a inclusão dos índices, o tempo de processamento foi
significativo reduzido, otimizando o desempenho da base de dados promovendo uma
recuperação de dados mais eficiente e precisa.
7. Referências Bibliográficas
Elmasri, R., & Shamkant, B. (2003). Fundamentals of Database Systems (4ª ed.). Pearson
Education.

Feitais,A.,T., & Silva,D.,M.,M., Base de Dados dos Clubes de Futebol- Caso de Estudo no
Concelho de Fafe, Unidade Curricular: Base de Dados Relacionais, Universidade do porto,
2014-2015.

Madureira, A.M.,2003/2004. Sistema de Informação- Modelo Conceptual de Dados. Ensino


Superior de Tecnologia e Gestão de Felgueiras, Engenharia Informática.19 p.;

Silberschatz, Abraham , Korth , Henry F., Sudarshan S. Sistema de banco de dados. 3. Ed. São
Paulo: Makron, 2006.

Você também pode gostar