Base de Dados 1
Hélio Martins
Agenda

 História das Bases de Dados
 Hoje
 Conceitos e Terminologias
Sistema de Gestão de
Ficheiros


 Antes dos modernos sistemas de gestão de Bases
de Dados, existiam os sistemas de gestão de
ficheiros, destacando-se entre eles os
desenvolvidos com recurso ao COBOL
(Common Business Oriented Language);
 Hoje, ainda, existem milhares de sistemas destes
em plena exploração e desenvolvimento;
 Com base nesta tecnologia foi possível
automatizar tarefas até então realizadas
manualmente, tornando-as essencialmente mais
rápidas;
3
Sistema de Gestão de
Ficheiros (cont.)

 Uma das características principais é a associação
aplicação
ficheiros, de que resulta que o
mesmo documento seja tratado em várias vias,
com destino a processamentos diferentes
(replicação);
 Cada sistema é tratado como ilhas isoladas,
autonomamente, sem relação com os sistemas já
existentes, sendo os mesmos dados armazenados
e recolhidos por aplicações diferentes em
momentos diferentes;
4
Aplicação B
Aplicação A

Dados

Aplicação C

Aplicação D

Dados

Dados

Dados

Cada aplicação com os seus dados - Sistemas Isolados
5
Expedição

Guia de Produção Nº 1234
Ref.

Descrição

Dta

Guia de Produção Nº 1234
Ref.

Descrição

Descrição

2ª Via

Dta

Guia de Produção Nº 1234
Ref.

3ª Via

Gestão de Stocks

1ª Via

Dta

Controlo de Produção

Replicação de Dados

6
Sistema de Gestão de
Ficheiros (cont.)

 Igualmente os dados são actualizados de forma
independente, com grande probabilidade de
ocorrerem incoerências e/u contradições redundância não controlada;
 Outra característica é as aplicações efectuarem o
interface físico com os dados que processam - se
o mesmo ficheiro de dados é usado por mais de
uma aplicação a especificação física vai estar
definida em cada aplicação, tornando a
manutenção muito complexa;
7
Aplicação
A
Ficheiro X

Aplicação
B

Aplicação
C

Ficheiro Y

Aplicação
D

Aplicação
E

Ficheiro Z

Interfaces entre as aplicações e os ficheiros que utilizam

8
Sistema de Gestão de
Ficheiros (cont.)

 Assim, basta que ocorra uma alteração no ficheiro,
para que esta se propague a todas as aplicações que o
utilizem;
 Caso existam acessos concorrentes, estes têm de ser
resolvidos ao nível das aplicações, pondo em causa a
fiablidade do sistema;

9
Porquê evoluir?/ Porquê não evoluir?


 Atitude de constante
modernização
 Adopção de tecnologias
mais recentes, mais
produtivas
 Eficiência
 Eficácia
 Clareza e transparência

 Investimentos em
hardware e software
 Formação
 Dificuldade de justificar
os benefícios e vantagens
da mudança
 Dificuldades técnicas de
conversão dos sistemas
10
Sistema de Gestão de Base de Dados



 Os dados estão organizados num único conjunto,
isto é, encontram-se interligados numa única
unidade de armazenamento (do ponto de vista
lógico, não físico);
 O SGBD centraliza o acesso físico aos dados;
 As aplicações têm apenas um interface lógico e
não físico;
 As aplicações não necessitam de conhecer os
detalhes físicos do armazenamento dos dados,
sendo o SGBD que os fornece no formato
pretendido;
12
Sistema de Gestão de Base de Dados


 O SGBD é a única entidade que manipula a base de
dados;
 O interface lógico entre as aplicações e os dados, fazse através do armazenamento na base de dados dos:

13
Sistema de Gestão de Base de Dados


 O dicionário de dados actua como um filtro,
permitindo ao SGBD interpretar a estrutura dos
dados disponibilizando um interface lógico para as
aplicações;
 É assim obtida uma separação entre os dados e as
aplicações;
 E é reduzida a redundância dos dados e os
problemas daí decorrentes.
14
Aplicação
A

Sistema de Base de Dados

Aplicação
B

S
G
B
D

Aplicação
C

Base
de
Dados

Aplicação
D

Aplicação
E
15
Dados vs Informação

 Um dos recursos mais importantes de uma
organização é a informação e dela depende a sua
maior ou menor competitividade;
 A tomada de decisões numa organização é um
processo complexo dada a quantidade de
informação, a sua complexidade e a frequência e
rapidez com que a mesma se altera;

17
Dados vs Informação
(cont.)


 Para que a informação possa ser utilizada no apoio à
decisão precisa verificar certas condições:

 Actualidade - a validade da informação é cada vez mais
curta;
 Correcção - além de actual a informação deverá ser rigorosa
e correcta;
 Relevância - o excesso de informação pode ser um
obstáculo, pelo que é necessário filtrá-la para que seja usada
a que é relevante;
 Disponibilidade - a informação só é útil se estiver
disponível, quando necessária;
 Legibilidade - a informação só é informação se puder ser
interpretada;
18
Dados vs Informação
(cont.)

 Dados - elementos ou valores discretos que
isoladamente não têm valor; transformam-se em
informação quando relacionados e interpretados de
alguma forma.
 Informação - resultado de alguma forma de
processamento/tratamento dos dados, sendo que
estes são a matéria prima necessária.

19
Definição de Base de
dados

 Colecção de dados, relacionados entre si, armazenados
conjuntamente, com o mínimo de redundância, por forma
a servirem para múltiplas aplicações numa dada
organização.
 Colecção organizada de registos e ficheiros, guardados
para servir um determinado propósito.


Por exemplo, há quem guarde no computador uma lista de nomes e endereços das pessoas
amigas ou de clientes; ou quem reúna todas as cartas que escreve e as organize por
destinatário; ou ainda quem tenha um conjunto de ficheiros para controlar a contabilidade contas a pagar ou a receber, registo de cheques e balanços. Os documentos escritos com um
processador de texto e organizados por assuntos constituem, grosso modo, um tipo de base de
dados
Terminologias

 Terminologia Básica
 Campo: unidade básica de informação mínima com
significado
 Registro: conjunto de campos
 Tipo de dados: Conjunto de valores possíveis por
campo

 Terminologia Relacional
 Campo: atributo
 Registro: tupla
 Domínio: conteúdo da relação
Conceitos


 Redundância: Repetição/Replicação desnecessária de
dados
 Integridade - Qualidade dos dados do banco de dados
(Integridade referencial, de entidade, Domínio etc)
 Consistência: Quando as transacções não violem
nenhuma integridade
 Metadados – Dados sobre Dados
 Dicionário de Dados - Um dicionário de dados é um
arquivo de meta-dados – isto é, dados a respeito de
dados. Em um sistema de banco de dados, esse arquivo
ou diretório é consultado antes que o dado real seja
modificado.
Conceitos (2)

 Abstração – Estratégia de simplificação, em que
detalhes concretos são deixados ambíguos, vagos ou
indefinidos;
 Esquema – é a estrutura de uma Base de Dados. O
SGBD apresentam diversos esquemas, referentes aos
níveis de abstracção que.
 Instância - São os valores contidos na Base de Dados
em um determinado momento.
Conceitos (3)

 Nível físico: também chamado de “Esquema interno”, é o Descreve
como os dados estão realmente armazenados, englobando estruturas
complexas de baixo nível.
 Nível conceptual (ou lógico): conhecido também como “Esquema
Conceptual”, descreve quais os dados estão armazenados e seus
relacionamentos. Neste nível, o BD é descrito através de estruturas
relativamente simples, que podem envolver estruturas complexas no
nível físico.
 Nível de visões do usuário: é o nível externo, descrevendo partes do
BD que serão visualizadas pelos usuários de acordo com suas
necessidades. Uma visão é um subconjunto de dados do BD, sem que
exista a necessidade de estarem armazenados no BD.
Conceitos (4)

 Independência de dados - Existem dois níveis de
independência de dados:
 Independência física de dados é a habilidade de modificar
o esquema físico sem a necessidade de reescrever as
Aplicações. As modificações no nível físico são
ocasionalmente necessárias para aprimorar o desempenho.
 Independência lógica de dados é a habilidade de modificar
o esquema conceitual sem a necessidade de reescrever as
Aplicações. As modificações no nível conceptual são
necessárias quando a estrutura lógica da base de dados é
alterada
Modelos de dados

 Modelo de dados é uma colecção de ferramentas conceituais
para a descrição dos dados, relacionamento entre os dados e
suas restrições. Diversos modelos de dados foram propostos e
estão divididos em três diferentes grupos:
 Modelos lógicos baseados em objectos
 Modelo E-R (Entidade-Relacionamento)
 Modelo OO (Object Oriented)
 …

 Modelos lógicos baseados em registos
 Modelo Hierárquico (ex: XML)
 Modelo em rede ()
 Modelo Relacional (Tabelas, Colunas)

 Modelos Físicos
Linguagem de Definição
de dados

 Linguagem de Definição de dados - Linguagem
utilizada para definição (Criar) de um esquema de
dados
 Linguagens de Manipulação dos Dados Linguagens utilizada para a consultar, inserir,
apagar e alterar informações em base de dados.
Exemplos de SGBD

















IBM Informix
PostgreSQL
Firebird
HSQLDB
DB2
mSQL
MySQL
Oracle
SQL-Server
TinySQL
ZODB
JADE
Sybase
Microsoft Access)
Microsoft Visual Foxpro
Conclusões

 Dados vs Informação
 Conceito SGBD
 Conceitos Básicos (Integridade, Concistência
Independências etc.)

Aula 1 introdução a base de dados

  • 1.
    Base de Dados1 Hélio Martins
  • 2.
    Agenda   História dasBases de Dados  Hoje  Conceitos e Terminologias
  • 3.
    Sistema de Gestãode Ficheiros   Antes dos modernos sistemas de gestão de Bases de Dados, existiam os sistemas de gestão de ficheiros, destacando-se entre eles os desenvolvidos com recurso ao COBOL (Common Business Oriented Language);  Hoje, ainda, existem milhares de sistemas destes em plena exploração e desenvolvimento;  Com base nesta tecnologia foi possível automatizar tarefas até então realizadas manualmente, tornando-as essencialmente mais rápidas; 3
  • 4.
    Sistema de Gestãode Ficheiros (cont.)   Uma das características principais é a associação aplicação ficheiros, de que resulta que o mesmo documento seja tratado em várias vias, com destino a processamentos diferentes (replicação);  Cada sistema é tratado como ilhas isoladas, autonomamente, sem relação com os sistemas já existentes, sendo os mesmos dados armazenados e recolhidos por aplicações diferentes em momentos diferentes; 4
  • 5.
    Aplicação B Aplicação A Dados AplicaçãoC Aplicação D Dados Dados Dados Cada aplicação com os seus dados - Sistemas Isolados 5
  • 6.
    Expedição Guia de ProduçãoNº 1234 Ref. Descrição Dta Guia de Produção Nº 1234 Ref. Descrição Descrição 2ª Via Dta Guia de Produção Nº 1234 Ref. 3ª Via Gestão de Stocks 1ª Via Dta Controlo de Produção Replicação de Dados 6
  • 7.
    Sistema de Gestãode Ficheiros (cont.)   Igualmente os dados são actualizados de forma independente, com grande probabilidade de ocorrerem incoerências e/u contradições redundância não controlada;  Outra característica é as aplicações efectuarem o interface físico com os dados que processam - se o mesmo ficheiro de dados é usado por mais de uma aplicação a especificação física vai estar definida em cada aplicação, tornando a manutenção muito complexa; 7
  • 8.
  • 9.
    Sistema de Gestãode Ficheiros (cont.)   Assim, basta que ocorra uma alteração no ficheiro, para que esta se propague a todas as aplicações que o utilizem;  Caso existam acessos concorrentes, estes têm de ser resolvidos ao nível das aplicações, pondo em causa a fiablidade do sistema; 9
  • 10.
    Porquê evoluir?/ Porquênão evoluir?   Atitude de constante modernização  Adopção de tecnologias mais recentes, mais produtivas  Eficiência  Eficácia  Clareza e transparência  Investimentos em hardware e software  Formação  Dificuldade de justificar os benefícios e vantagens da mudança  Dificuldades técnicas de conversão dos sistemas 10
  • 12.
    Sistema de Gestãode Base de Dados   Os dados estão organizados num único conjunto, isto é, encontram-se interligados numa única unidade de armazenamento (do ponto de vista lógico, não físico);  O SGBD centraliza o acesso físico aos dados;  As aplicações têm apenas um interface lógico e não físico;  As aplicações não necessitam de conhecer os detalhes físicos do armazenamento dos dados, sendo o SGBD que os fornece no formato pretendido; 12
  • 13.
    Sistema de Gestãode Base de Dados   O SGBD é a única entidade que manipula a base de dados;  O interface lógico entre as aplicações e os dados, fazse através do armazenamento na base de dados dos: 13
  • 14.
    Sistema de Gestãode Base de Dados   O dicionário de dados actua como um filtro, permitindo ao SGBD interpretar a estrutura dos dados disponibilizando um interface lógico para as aplicações;  É assim obtida uma separação entre os dados e as aplicações;  E é reduzida a redundância dos dados e os problemas daí decorrentes. 14
  • 15.
    Aplicação A Sistema de Basede Dados Aplicação B S G B D Aplicação C Base de Dados Aplicação D Aplicação E 15
  • 17.
    Dados vs Informação  Um dos recursos mais importantes de uma organização é a informação e dela depende a sua maior ou menor competitividade;  A tomada de decisões numa organização é um processo complexo dada a quantidade de informação, a sua complexidade e a frequência e rapidez com que a mesma se altera; 17
  • 18.
    Dados vs Informação (cont.)  Para que a informação possa ser utilizada no apoio à decisão precisa verificar certas condições:  Actualidade - a validade da informação é cada vez mais curta;  Correcção - além de actual a informação deverá ser rigorosa e correcta;  Relevância - o excesso de informação pode ser um obstáculo, pelo que é necessário filtrá-la para que seja usada a que é relevante;  Disponibilidade - a informação só é útil se estiver disponível, quando necessária;  Legibilidade - a informação só é informação se puder ser interpretada; 18
  • 19.
    Dados vs Informação (cont.)  Dados - elementos ou valores discretos que isoladamente não têm valor; transformam-se em informação quando relacionados e interpretados de alguma forma.  Informação - resultado de alguma forma de processamento/tratamento dos dados, sendo que estes são a matéria prima necessária. 19
  • 20.
    Definição de Basede dados   Colecção de dados, relacionados entre si, armazenados conjuntamente, com o mínimo de redundância, por forma a servirem para múltiplas aplicações numa dada organização.  Colecção organizada de registos e ficheiros, guardados para servir um determinado propósito.  Por exemplo, há quem guarde no computador uma lista de nomes e endereços das pessoas amigas ou de clientes; ou quem reúna todas as cartas que escreve e as organize por destinatário; ou ainda quem tenha um conjunto de ficheiros para controlar a contabilidade contas a pagar ou a receber, registo de cheques e balanços. Os documentos escritos com um processador de texto e organizados por assuntos constituem, grosso modo, um tipo de base de dados
  • 21.
    Terminologias   Terminologia Básica Campo: unidade básica de informação mínima com significado  Registro: conjunto de campos  Tipo de dados: Conjunto de valores possíveis por campo  Terminologia Relacional  Campo: atributo  Registro: tupla  Domínio: conteúdo da relação
  • 22.
    Conceitos   Redundância: Repetição/Replicaçãodesnecessária de dados  Integridade - Qualidade dos dados do banco de dados (Integridade referencial, de entidade, Domínio etc)  Consistência: Quando as transacções não violem nenhuma integridade  Metadados – Dados sobre Dados  Dicionário de Dados - Um dicionário de dados é um arquivo de meta-dados – isto é, dados a respeito de dados. Em um sistema de banco de dados, esse arquivo ou diretório é consultado antes que o dado real seja modificado.
  • 23.
    Conceitos (2)   Abstração– Estratégia de simplificação, em que detalhes concretos são deixados ambíguos, vagos ou indefinidos;  Esquema – é a estrutura de uma Base de Dados. O SGBD apresentam diversos esquemas, referentes aos níveis de abstracção que.  Instância - São os valores contidos na Base de Dados em um determinado momento.
  • 24.
    Conceitos (3)   Nívelfísico: também chamado de “Esquema interno”, é o Descreve como os dados estão realmente armazenados, englobando estruturas complexas de baixo nível.  Nível conceptual (ou lógico): conhecido também como “Esquema Conceptual”, descreve quais os dados estão armazenados e seus relacionamentos. Neste nível, o BD é descrito através de estruturas relativamente simples, que podem envolver estruturas complexas no nível físico.  Nível de visões do usuário: é o nível externo, descrevendo partes do BD que serão visualizadas pelos usuários de acordo com suas necessidades. Uma visão é um subconjunto de dados do BD, sem que exista a necessidade de estarem armazenados no BD.
  • 25.
    Conceitos (4)   Independênciade dados - Existem dois níveis de independência de dados:  Independência física de dados é a habilidade de modificar o esquema físico sem a necessidade de reescrever as Aplicações. As modificações no nível físico são ocasionalmente necessárias para aprimorar o desempenho.  Independência lógica de dados é a habilidade de modificar o esquema conceitual sem a necessidade de reescrever as Aplicações. As modificações no nível conceptual são necessárias quando a estrutura lógica da base de dados é alterada
  • 26.
    Modelos de dados  Modelo de dados é uma colecção de ferramentas conceituais para a descrição dos dados, relacionamento entre os dados e suas restrições. Diversos modelos de dados foram propostos e estão divididos em três diferentes grupos:  Modelos lógicos baseados em objectos  Modelo E-R (Entidade-Relacionamento)  Modelo OO (Object Oriented)  …  Modelos lógicos baseados em registos  Modelo Hierárquico (ex: XML)  Modelo em rede ()  Modelo Relacional (Tabelas, Colunas)  Modelos Físicos
  • 27.
    Linguagem de Definição dedados   Linguagem de Definição de dados - Linguagem utilizada para definição (Criar) de um esquema de dados  Linguagens de Manipulação dos Dados Linguagens utilizada para a consultar, inserir, apagar e alterar informações em base de dados.
  • 28.
    Exemplos de SGBD                 IBMInformix PostgreSQL Firebird HSQLDB DB2 mSQL MySQL Oracle SQL-Server TinySQL ZODB JADE Sybase Microsoft Access) Microsoft Visual Foxpro
  • 29.
    Conclusões   Dados vsInformação  Conceito SGBD  Conceitos Básicos (Integridade, Concistência Independências etc.)