Aula 1
Aula 1
Aula 1
Apresentação
No mundo digital, nossas vidas são regidas por diversos sistemas. Para funcionar, esses sistemas necessitam de
grande volume de dados. Não é possível conceber qualquer sistema que possa prescindir de um Banco de Dados.
Você já parou para pensar o que é um Banco de Dados? Nesta aula, procuraremos responder a essa pergunta.
Objetivos
Identificar as características de um sistema de banco de dados;
Diferenciar sistemas de banco de dados, sistemas gerenciadores de banco de dados e banco de dados;
Dados e informações
Quando vamos realizar um saque no caixa eletrônico de um banco, o sistema do equipamento tem que acessar os números
da agência e da conta, senha e saldo disponível. Estes dados necessitam de gerenciamento eficiente e confiável, que permita
sua rápida recuperação e atualização.
Mas muita gente confunde dados com informações. Por isso, vamos fazer a distinção entre eles.
Dados
compare_arrows
Informações
Fatos, eventos, conceitos, instruções
Dados já formatados de uma maneira
antes de terem sido organizadas em um
inteligível e útil ao usuário.
formato inteligível e
útil para o usuário.
Ele contém informações sobre pessoas e lugares dentro da organização ou do ambiente externo à organização, com o qual
ela mantenha constante intercâmbio.
Em um Sistema de Informação, há três atividades básicas, através das quais ele produz as informações necessárias para a
tomada de decisão e controle das operações dentro da organização:
Entrada (input)
Coleta os dados dentro da organização ou do ambiente
externo para o processamento.
Processamento
Converte os dados coletados, colocando-os em uma forma
inteligível.
Saída (output)
Distribui as informações processadas para os usuários e
para outras atividades, ou armazena-os para futura
utilização.
Os Sistemas de Informação também necessitam de realimentação (feedback). A saída (output) retorna aos membros
da
organização para avaliação e correção dos dados coletados e processados.
Sistemas de informação
O desenvolvimento de Sistemas de informações evoluiu,ao longo do tempo, de Sistemas Tradicionais para Sistema de Banco
de Dados.
Sistemas tradicionais
Estes sistemas são baseados no uso de arquivos que, normalmente, são associados a um único sistema de aplicação, que
traz, por consequência, redundância de dados quando os mesmos dados se faziam necessários em outros sistemas.
A maioria das organizações desenvolve os seus Sistemas de Informação um por vez, à medida que se tornam necessários,
utilizando, cada um, o seu próprio conjunto de programas, arquivos e usuários.
A figura abaixo mostra a estrutura de um sistema baseado em arquivo. Com ela podemos notar que:
2. Se uma aplicação compartilha dados com outras, estes têm que ser duplicados;
Sistemas baseados em arquivo
De acordo com Silberschatz, Korth e Sudarshan (2006), o esquema apresentado acaba acarretando em:
Redundância de dados Dependência entre Custo excessivo em
Duplicação dos mesmos dados em programas e dados software
dois ou mais arquivos. O problema Os aplicativos tradicionais de Custo resultante da criação,
da redundância é que as banco de dados de arquivos são documentação e
mudanças, ao serem feitas no caracterizados pela dependência acompanhamento de muitos
arquivo de uma aplicação, não são entre programas e dados, isto é, arquivos e aplicações
diferentes.
automaticamente realizadas nos programas e dados desenvolvidos
arquivos das
outras aplicações, e organizados para uma aplicação
gerando a falta de integridade dos são incompatíveis com os
dados. programas e dados organizados
para um outro aplicativo.
Redundância
Dificuldades de acesso
Integridade
Problemas de segurança
Um banco de dados é uma coleção de dados organizados de tal forma que possam ser acessados e utilizados por muitas
aplicações diferentes. Ou seja, em vez de armazenar dados em arquivos separados para utilização, os dados são
armazenados e organizados em um só local, permitindo compartilhamento e interrelacionamento por múltiplos usuários.
A fim de usar a abordagem de banco de dados para o gerenciamento de dados, foi necessário um software adicional
– um
sistema de gerenciamento de banco de dados (SGBD1).
Sistemas de banco de dados
Coleção de programas que permite aos usuários criar e manipular uma base de dados. Um SGBD é,
assim, um sistema
de software de propósito geral, que facilita o processo de definir, construir e manipular
a base de dados de diversas
aplicações.
Módulo do SGBD responsável por determinar a forma de executar a consulta solicitada pelo
usuário, via aplicação.
Realiza a interpretação do comando (análise sintática, léxica e semântica) e elabora
o plano de execução do comando,
estabelecendo a forma de acessar fisicamente os dados.
Dados
Catálogo
Local onde são armazenados os metadados, ou seja, informações referentes ao tipo e organização
dos dados do banco.
Definição de Banco de Dados
Um banco de dados é uma coleção de dados interrelacionados, representando informações sobre um domínio específico.
Estes dados são fatos que podem ser armazenados e têm significado implícito. Como exemplo podemos citar listas
telefônicas, o controle do acervo de uma biblioteca e o sistema de controle de recursos humanos de uma empresa.
Um banco de dados representa alguns dos aspectos do mundo real, algumas vezes chamado de
minimundo. As
1 mudanças neste minimundo são refletidas no banco de dados.
Um banco de dados é uma coleção lógica e coerente de dados com algum significado. Uma coleção
aleatória de dados
2 não pode, corretamente, referir-se a um banco de dados.
Um banco de dados é projetado, construído e povoado com dados para um propósito específico.
Ele tem um grupo de
3 usuários e algumas aplicações pré-concebidas nas quais estes usuários estão
interessados.
Características da abordagem de banco de dados
De acordo com Elmasri e Navathe (2011), existem quatro características. A Saber:
Autoinformação
Uma característica importante da abordagem de banco de dados é que o SGBD mantém, além dos dados, a forma
como os
eles são armazenados, contendo uma descrição completa do banco de dados.
Uma característica importante da abordagem de banco de dados é que o SGBD mantém, além dos dados, a forma
como os
eles são armazenados, contendo uma descrição completa do banco de dados.
1 - Redução ou eliminação de
redundâncias
Possibilita a eliminação de dados privativos
de cada sistema. Os dados comuns a mais
de um sistema são compartilhados, sendo
mantida uma única informação a ser
consultada por vários sistemas.
2 - Eliminação de inconsistências
Ocorre através do armazenamento da
informação em um único local com acesso
descentralizado. A inconsistência acontece
quando um mesmo campo tem valores
distintos em sistemas diferentes. Exemplo: o
estado civil de uma pessoa é solteiro em um
sistema e casado em outro. Isto ocorre
porque o campo em um sistema foi
atualizado e, no outro, não. Quando o dado é
armazenado em um único local e
compartilhado pelos sistemas, este problema
não ocorre.
4 - Restrições de segurança
Definem, para cada usuário, o nível de acesso
(leitura, leitura e gravação ou sem acesso) ao
arquivo e ao campo. Este recurso impede que
pessoas não autorizadas utilizem ou
atualizem um determinado arquivo ou campo.
5 - Padronização dos dados
Permite que os campos armazenados na
base de dados sejam padronizados segundo
um determinado formato (padronização de
tabela, conteúdo de campo), seguindo
critérios padrões preestabelecidos pela
organização. Para o campo "Sexo", por
exemplo, somente será permitido
armazenamento dos conteúdos "M" ou "F".
7 - Manutenção da integridade
Consiste em impedir que um determinado
código ou chave em uma tabela não tenha
correspondência em outra. Exemplo: Um
código de uma determinada disciplina na
tabela “Histórico Escolar” sem a sua
descrição na tabela “Disciplina”.
Testam, depuram, documentam e Administrador de banco de dados
mantêm estes programas.
Supervisiona e gerencia o compartilhamento de
Identifica os dados a serem armazenados no todos usuários na utilização do banco de dados;
banco de dados;
Autoriza o acesso ao banco de dados;
Escolhe estruturas apropriadas para representar e
armazenar tais dados; Coordenar e monitorar seu uso;
Obtém requisitos necessários dos futuros usuários Coordena o projeto global de banco de dados;
Implementa o SGBD.
Ao realizarmos a modelagem, devemos executar um conjunto de atividades sucessivas, que podem se subdividir em outras
atividades mais simples, até atingimos o nível de atividades elementares.
Técnica
Outro componente da modelagem é a técnica, que nada
mais é do que a forma como os insumos são
transformados em produtos no âmbito da atividade.
Ferramentas
Para aplicar a técnica, necessitamos de ferramentas, que
são os instrumentos utilizados para transformar os
insumos em produtos. No nosso caso específico, são
denominadas Ferramentas de Modelagem.
Metodologia
Conjunto de atividades para produzir o modelo.
Técnica
Como cada atividade é executada.
Ferramenta
Instrumento utilizada para executar a atividade.
Veja uma representação gráfica da modelagem:
Modelagem de dados
Modelos
Temos aqui duas acepções para o termo modelo:
Ferramenta de modelagem Produto final da atividade de modelagem
Observe na figura anterior a seta amarela, pois ela Como produto final que são representam graficamente,
representa as técnicas utilizadas na modelagem e o na maioria das vezes, o minimundo. Repare na figura
conjunto de suas ferramentas, que visam definir as anterior o Modelo 1 e o Modelo n. Repare também que,
estruturas de armazenamento de dados necessárias a partir do minimundo (insumo), foi gerado Modelo 1
para o atendimento das necessidades dos sistemas. (produto) e que, a partir de Modelo 1 (insumo), foi
realizada uma nova atividade de modelagem e gerado
o Modelo n (produto).
Mundo real
Na busca pela compreensão do mundo que o cerca, o homem produz modelos do mundo real, visando a sua formalização.
Ao construirmos um DER ou ao escrevermos um texto descritivo de uma realidade, estamos formalizando no papel a
situação que examinamos e da qual, ao abstrairmos detalhes irrelevantes, criamos conceitos que irão estabelecer modelos
que servirão sucessivamente de insumos para a criação de modelos cada vez mais complexos.
Podemos, dessa forma, compreender o conjunto de modelos que criamos a partir de parcelas do mundo real ou a partir de
outros modelos, que compõem o conhecimento humano.
A transformação da realidade observada em algo que possa ser processado em um computador é um grande desafio.
Para fazer essa transformação, temos o projeto de banco de dados, que é a metodologia utilizada para criar o esquema de
um ou mais bancos de dados que irão armazenar os valores (instância) necessários ao funcionamento dos sistemas de uma
organização.
Atividade de modelagem
Objetivo do projeto de banco de dados
A atividade de projetar um banco de dados é complexa devido aos seguintes fatores:
Quais são as partes (atividades do
Como elas se relacionam?
processo)?
Quais são seus produtos?
Criação de um modelo abstrato do minimundo
Como a criação do modelo processável ainda é inerentemente complexa, vamos subdividi-la em duas fases:
Clique nos
botões para ver as informações.
Criação de um modelo implementável
A partir do modelo abstrato, criamos um modelo que pode ser implementado em uma classe de tecnologia da
informação de banco de dados (orientado a objetos, banco relacional, banco objeto relacional, noSQL).
Criação de um modelo processável
A partir do modelo implementável, criamos um modelo que possa ser colocado em produção em uma implementação
da tecnologia de banco de dados específica (SGBD, PostgreSQL), rodando em Windows Server constituindo um Servidor
de Banco de Dados para até 64 usuários acessando o Banco de Dados de forma não simultânea.
Projeto lógico de banco de dados - Quando um modelo de dados (Relacional, Orientado a Objetos, Documentos etc.) é
2 utilizado, criamos um esquema de armazenamento para os dados.
Na figura seguinte, são expostas as fases do projeto de banco de dados e as ferramentas a serem utilizadas em cada uma
delas:
Fases do projeto de banco de dados
Existe no mercado grande quantidade de ferramentas que fornecem diferentes serviços. A grande maioria possui em
comum
a possibilidade de fazer a modelagem de forma visual, gerando os modelos de forma gráfica.
As ferramentas CASE utilizadas em modelagem de dados permitem realizar a diagramação do modelo conceitual, gerar o
modelo lógico e, normalmente, gerar o script SQL para a criação do banco de dados no SGBD.
Ferramentas profissionais permitem ainda fazer a engenharia reversa do banco, ou seja, acessar o banco no SGBD e
criar o
modelo lógico e o modelo conceitual a partir do banco criado fisicamente.
(Fonte: Shutterstock).
Atividades
1. Dentro da estrutura de um sistema de banco de dados, onde a autoinformação é materializada?
2. Quem é o usuário de banco de dados que gerencia o SGBD? Explique sua função.
Notas
SGBD1
Grupo de programas que pode ser usado como uma interface entre o banco de dados e um usuário, ou
entre um banco
de
dados e um programa aplicativo.
Independência dos dados2
Ao incluir novos campos no arquivo, a manutenção seja feita apenas nos programas que utilizam
esses campos, não
sendo necessário alterar os demais programas. Observação: Nos sistemas tradicionais, este tipo
de operação requer
a
alteração no layout de todos os programas do sistema que utilizam o arquivo.
Referências
DATE, C. J. Introdução a sistemas de banco de dados. 7. ed. Rio de Janeiro: Campus, 2000.
ELMASRI, R.; NAVATHE, S. B. Sistemas de banco de dados. 6. ed. São Paulo: Pearson Addison Wesley, 2011.
SILBERSCHATZ, A.; KORTH, H. F.; SUDARSHAN, S. Sistemas de banco de dados. 5. ed. Rio de Janeiro: Campus, 2006.
Próxima aula
Modelo Relacional.
Explore mais
Leia os textos:
Assista ao vídeo: