Trabalho_BD_PostrgreSQL_Final

Propaganda
UERJ – Universidade do Estado do Rio de Janeiro
Mestrado em Engenharia da Computação – Geomática
Docente: Oscar Luiz Monteiro de Farias
Disciplina: Banco de Dados
Alunos: Elisa Santos de Oliveira Teixeira ME1010112
Najara Proença Marques
ME 1010119
Wilson Messias dos Santos
ME 1010123
TRABALHO DE BANCO DE DADOS – POSTGRES
MINI-MUNDO: BD PARA GERENCIAMENTO DE UNIDADES
DE CONSERVAÇÃO
Rio de Janeiro, 22 de junho de 2010.
TRABALHO DE BANCO DE DADOS – POSTGRES
MINI-MUNDO: BD PARA GERENCIAMENTO DE UNIDADES DE CONSERVAÇÃO
1 – OBJETIVO
Modelagem de um banco de dados para gerenciamento de unidades de conservação
estaduais localizadas no Estado do Rio de Janeiro, visando à atualização de relatórios anuais
sobre as pesquisas nas mesmas, o andamento de realização dos Planos de Manejos,
funcionários que trabalham nas unidades (cargo, função, especialidade), administração de
recursos entre outros.
2 – CONTEXTUALIZAÇÃO
Geralmente toda descrição é uma seleção dos atributos que a caracterizam e, portanto,
são escolhidos fatores que realmente determinam a existência do objeto analisado. Através da
observação da realidade podemos extrair fatos que nos levam a conhecer a necessidade de
forma mais organizada, ou seja, é possível construir o que chamamos de mini-mundo.
No mini-mundo, existem fatos que, quando observados e modelados, dizem algo a
respeito do funcionamento esperado do sistema. Para que possamos retratar estes fatos e
que os mesmos possam nos levar a futuras decisões e ações, é necessário analisá-los e
registrá-los. Para que este registro seja organizado da melhor forma possível, é feito, através
da constituição do mini-mundo, a modelagem conceitual, ou seja, a determinação dos objetos
a serem mapeados e quais suas principais características (atributos). A próxima etapa é a
modelagem lógica, onde são determinadas, a partir do modelo conceitual, as tabelas que
serão confeccionadas e preenchidas pelo registros, além do tipo de dados dos mesmos. E,
para finalizar o processo de registro, temos a modelagem física, que corresponde a
implementação dos dados em um espaço físico de fato, que no caso, corresponde a um
programa no computador. O sucesso ou o fracasso dos registros é determinado pela qualidade
dos três níveis de modelagem feito pelo autor ou autores. Portanto, é de suma importância o
total empenho nas três etapas.
No presente trabalho foi projetado um Bando de Dados (BD) destinado a Gerência e
Monitoramento das Unidades de Conservação de Proteção Integral do Estado do Rio de
Janeiro teve a produção da análise de requisitos. O objetivo da Modelagem Conceitual é
descrever as informações contidas no mini-mundo, as quais deverão ser armazenadas em um
Banco de Dados.
O Modelo Lógico tem seu início a partir do Modelo Conceitual, levando em consideração
uma das abordagens: Hierárquica, Rede, Orientado a Objetos e Entidade Relacional (ER). A
utilizada no Projeto do banco de dados das unidades de conservação foi Entidade Relacional
(ER).
A abordagem de Entidade Relacional é a mais flexível e adequada ao solucionar os
vários problemas que se colocam no nível da concepção e implementação da base de dados.
A estrutura fundamental é a relação (tabela). Uma relação é constituída por um ou mais
atributos (campos) que traduzem o tipo de dados a armazenar. Cada instância (linha) é
chamada de tupla (registro).
O Modelo Físico irá partir do Modelo Lógico e descreve as estruturas físicas do
armazenamento de dados, tais como: tamanho de campos, índices, tipo de preenchimento
destes campos, nomenclaturas, etc. Projetadas de acordo com os requisitos de
processamento e uso mais econômico dos recursos computacionais, este modelo detalha o
estudo dos métodos de acesso do BD, para elaboração dos índices de cada informação
colocada nos Modelos Conceitual e Lógico.
No Projeto do BD para as Unidades de Conservação, tivemos a produção dos
atributos das entidades que especificam quais variáveis serão usadas, os índices, os tipos,
tamanhos de cada campo, etc.
Todo o projeto de um BD necessita de um ponto central. A modelagem de um sistema
através da abordagem Entidade Relacional (ER) representa este ponto central.
O objetivo da Modelagem de Dados é transmitir e apresentar uma representação única,
não redundante e resumida, dos dados de uma aplicação. Em projetos conceituais de BD o
modelo ER é o mais utilizado.
O projeto de um BD é uma atividade complexa que inclui planejamento, especificações
e o desenvolvimento de vários componentes. Portanto, é aconselhável seguir a sequência
destas atividades em uma ordem que possa resultar em ganhos de produtividade e
confiabilidade dos BD's desenvolvidos, eliminando-se sensivelmente as falhas de sistemas
após a sua implantação.
No Projeto do banco de dados destinado as Unidades de Conservação, a nossa
preocupação é ordenar e reunir uma grande quantidade de informações para serem
armazenadas em diferentes tabelas. Esta grande quantidade de dados, se não controladas e
armazenadas adequadamente, pode ocasionar lentidão no sistema e até o desaparecimento
de informações. Pensando nisso convencionou-se a restringir o mini-mundo somente as
Unidades de Proteção Integral (UPI), geridas pelo Instituto Estadual do Ambiente (INEA).
3 – DESCRIÇÃO DO MINI-MUNDO
"Sistema de Gerenciamento e Monitoramento das Unidades de Conservação de
Proteção Integral do Estado do Rio de Janeiro”.
Fomos contratados para trabalhar em uma Unidade de Conservação na Ilha Grande, o
Parque Estadual da Ilha Grande (PEIG), quando chegamos no local verificamos que as
informações da UC não estavam cadastradas em nenhum local elas estavam em fichas de
papel perdidas por toda a área administrativa da UC.
Resolvemos então criar um banco de dados para a UC e tentar resolver os problemas
de organização do local.
Este sistema tem por objetivo monitorar e gerenciar as unidades de proteção integral
visando reunir e armazenar de forma uma rápida, eficiente e segura os dados da UC.
Todas as informações serão transmitidas das sedes de unidades para o servidor central
localizado na sede do PEIG, aonde as informações serão pós-processadas e reenviadas às
unidades referentes.
Como havíamos feito a aula de banco de dados do Professor Oscar resolvemos criar
um banco de dados que englobasse 10(dez) das UC de Proteção Integral (mesmo tipo
daquela que estávamos trabalhando) do Estado do Rio de Janeiro.
Para iniciar a criação do nosso banco de dados verificamos as Entidades que deveriam
ser levadas em consideração, e posteriormente cada atributo correspondente a cada entidade.
Inicialmente foram levantados todos os funcionários relacionados a UC, com suas
descrições de cargo, data de início do contrato, nome, CPF, formação.
Consideramos também as características principais da UC, como uso do solo, status de
conservação, ano de criação, cadastro no SNUC (Sistema Nacional de Unidade de
Conservação), regularização fundiária, possui demarcação física de seus limites, possui Plano
de Manejo e área territorial (que seria um atributo composto por município e coordenadas),
nome da UC e código da UC.
Serão verificados também no banco de dados todas as ocorrências da UC, como tipo da
ocorrência, data da ocorrência, ações relevantes, localização da ocorrência, nome da
ocorrência e código da ocorrência.
Todos os projetos em desenvolvimento nas UC também estarão em nosso banco de
dados, onde serão considerados o nome do projeto, o código do projeto, área de atuação, a
Instituição de vinculação, ano de início do projeto e autor responsável.
Foram considerados ainda para o banco de dados a infra-estrutura da UC, com os
atributos Sede, estradas, patrimônios, energia elétrica, esgoto e água. E a entidade Meio
Físico da UC com os atributos nome do meio físico, localização do meio físico, código do meio
físico e grupo do meio físico.
4 – SOFTWARE ESCOLHIDO: POSTGRESQL
Abrindo o PostgreSQL
Depois de instalado o programa pode ser aberto, mas será necessária a definição do
nome do usuário e a senha.
Assim que a senha é digitada, o servidor é liberado e daí é possível trabalhar dentro do
programa. Para se criar um novo banco de dados clica com o botão direito em Banco de
Dados e seleciona a opção Novo Banco de Dados. Com essa seleção nomeia-se o novo
banco de dados que já é carregado com catálogo, esquemas e replicação. É dentro de
esquemas aonde vão se concentrar a maior parte das ações do banco, pois é nele onde estão
alocadas as tabelas e os respectivos registros. No caso do presente trabalho, o banco de
dados foi nomeado como BD_Ambiental.
Criar Tabela
Em Esquema do banco de dados (BD_Ambiental), clicar com o botão direito sobre
tabelas e selecionar Nova Tabela. Após nomear a nova tabela, já é possível definir as colunas,
o tipo de dados de cada uma delas além das restrições (chaves). Veja a ilustração abaixo.
Inserir dados nas Tabelas
Com as tabelas já criadas, temos que inserir os registros nas mesmas. Clicando com o
botão direito na tabela, selecionar Visualizar Dados e depois Ver todos Registros, conforme
mostra a ilustração abaixo. Com essa seleção será aberta outra tela com a tabela e suas
colunas em branco.
A inserção dos dados é possível com a entrada manual (digitação) diretamente nas
linhas das tabelas, ou ainda copiando e colando as informações nas células, como destacado
acima.
Determinação das Chaves
Com a criação das tabelas já é possível estabelecer as chaves primárias e chaves
estrangeiras, se for o caso. Em Propriedades da tabela, selecionar Restrições. Nessa área é
possível determinar chave primária, chave secundária, unicidade e verificação. Quando a
opção de chave primária é selecionada, o programa automaticamente ativa a lista das colunas
que compõem a tabela. Cabe ao usuário indicar a coluna, ou as colunas, que serão a chave
primária.
O mesmo procedimento é utilizado para definição da chave estrangeira.
5 – CONSULTAS EM SQL
Para testarmos as funcionalidades do nosso banco de dados, criamos algumas consultas:
1)Quantos biólogos trabalham na Unidade de Conservação PEIG?
EM SQL:
SELECT nome_uc, cod_uc, formacao_func, nome_func
FROM uc, funcionario
WHERE nome_uc= 'PARQUE ESTADUAL DA ILHA GRANDE (PEIG) ' AND
formacao_func='Biologia'
2)Quantas ocorrências do tipo Queimadas foram registradas no ano de 2010?
SELECT tipo
FROM ocorrencia
WHERE tipo='Queimada' AND data >=('2010/01/01')
3)Qual é o total de projetos em de Plano de Manejo?
SELECT COUNT (*)
FROM projeto
WHERE nome_projeto='Plano de Manejo '
O resultado dessa consulta será conforme a figura abaixo:
4)Qual o nome do Funcionário de Gerencia do Projeto EF001?
SELECT cod_projeto, nome_projeto, cpf_func, nome_func
FROM projeto, funcionario
WHERE cod_projeto='EF001' AND cpf_func=cpf
5)Qual o nome da Unidade de Conservação em que foram registrados o maior numero de
desmatamentos no ano de 2010.
SELECT tipo, COUNT ('Queimada'), cod_uc_oco, nome_uc
FROM ocorrencia, uc
WHERE tipo='Queimada' AND cod_uc_oco=cod_uc
GROUP BY tipo, cod_uc_oco, nome_uc
6 ) Para cada Unidade de Conservação recupere o seu código, o seu nome e o n o de estradas
que possui a UC.
SELECT cod_uc, estradas COUNT(*),
FROM UC, infra-estrutura
WHERE cod_uc=cod_uc_inf
GROUP BY cod_uc, estradas
7) Listar o patrimônio das unidades que não tenham plano de manejo.
SELECT cod_uc, nome_uc, patrimonios
FROM uc, infraestrutura
WHERE cod_uc=cod_uc_infra AND plano_manejo=FALSE
6 – CONSULTAS POR ÁLGERA RELACIONAL
Mesmo tendo a consciência que o PostgreSQL não trabalha com álgebra relacional,
consideramos importante mostrar como ficariam as consultas utilizando esse método.
1)Quais são os biólogos trabalham na Unidade de Conservação PEIG?
σ formação=biólogo(Funcionários) – Result 1
Result 1 X Funcionário – Result 2
π nome (Result 2) – Result Final
2)Quantas ocorrências do tipo Queimadas foram registradas no ano de 2010?
σ TIPO=QUEIMADAS (OCORRÊNCIAS UC) – RESULT 1
σ cout ANO=2010 (RESULT 1) – RESULT FINAL
3)Em quais UC estão sendo desenvolvidos projetos de Plano de Manejo?
σ nome=plano de manejo(Projeto) – Result 1
Result 1 CPF X Funcionário CPF – Result 2
σ
cod_uc (Result 2) – Result 3
π nome (Result 3) – Result Final
4)Qual o nome do Funcionário que Gerencia do Projeto EF001?
σ cod_p (Projeto) – Result 1
Result 1 X Funcionários – Result 2
π nome (Result 2) – Result Final
5)Qual o nome das Unidades de Conservação em que foram registrados desmatamentos no
ano de 2010.
σ tipo=desmatamento (Ocorrências UC) – Result 1
Result 1 X UC – Result 2
π nome (Result 2) – Result Final
7- MODELAGEM CONCEITUAL
8 – MODELAGEM LÓGICA
Download