Aula 1
Orlando Zacarias
Motivao e Revisando
Uma base de dados uma coleco de dados
relacionados que pode ser armazenada sob alguma
forma fsica
Os dados armazenados em uma base de dados
representam algum aspecto especfico do mundo real
um universo de discurso de onde os dados so obtidos
e apresentam algum grau de coerncia lgica entre seus
componentes
Uma coleco aleatria de dados no constitui uma
base de dados
Um sistema de gesto de base de dados o software
que permite criar, manter e manipular bases de dados
para diversas aplicaes. O sistema de gesto de base
de dados pode ser de propsito geral ou especfico para
alguma aplicao
Base de Dados II-OZ@ APolitecnica2015
Cont.
Um sistema de base de dados constitudo por uma
base de dados e por um sistema de gesto de base de
dados
A necessidade de utilizao de um sistema de base de
dados para suportar a armazenagem da informao de
uma aplicao principalmente a independncia da
aplicao com relao estrutura interna de
armazenagem e a possibilidade de compartilhar dados
entre aplicaespassaram a ser desejadas em outras
classes de aplicaes, tais como projectos de
engenharia (CAD/CAEComputer Aided Design,
Computer Aided Engineering), automao industrial e
de escritrios (CAMComputer Aided Manufacturing,
OAOffice Automation), sistemas especialistas de
suporte tomada de decises (DSS Decision Support
Systems) e sistemas de suporte ao trabalho cooperativo
(CSCW Computer Supported Cooperative Work)
Base de Dados II-OZ@ APolitecnica2015
Cont.
Estas aplicaes no convencionais impem requisitos
ao sistema de base de dados que no estavam
presentes nas aplicaes tradicionais, tais como lidar
com maiores volumes de dados, a necessidade de
manipulao de dados em formatos no-alfanumricos;
incluindo informao multimdia e o tratamento de
esquemas evolutivos e dinmicos
Os requisitos impostos por estas categorias de aplicaes
constituem a maior motivao para o surgimento de
novas abordagens de gestao de dados
neste sentido que a integrao do paradigma de
orientao a objectos ao sistemas de base de dados tem
surgido como a tendncia mais promissora em termos de
gestao de dados para as mais diversas categorias de
aplicaes
Base de Dados II-OZ@ APolitecnica2015
Cont.
SGBDOO combinam conceitos de objecto
com capacidade das bases de dados tendo
o potencial de fornecer poderosos
repositrios para aplicaes avanadas de
bases de dados
Dividem-se em tres niveis
Logico
Interno
Externo
Base de Dados II-OZ@ APolitecnica2015
Cont.
Nivel Lgico
Usa-se a noo de objecto
Possui caracteristicas no encontradas nas
linguagens de programao tradicionais:
Operadores de manipulao de estruturas
Gesto de armazenamentos
Tratamento de integridade
Persistncia dos dados
Definio de SGBDOO
Sistemas de Gesto de Base de Dados Orientados a
Objectos (SGBDOO) podem ser definidos como uma
base de dados capaz de armazenar alm de dados,
como nos Sistemas de Arquivos e estruturas de dados
nas Bases de Dados Relacionais, outros tipos diferentes
de dados que no podem ser convertidos somente em
arquivos lineares ou bidimensionais como tabelas, e sim
um tipo especial de objecto
A principal caracterstica de SGBDOO modelar
estruturas complexas armazenando no somente na
estrutura de dados, mas tambm seu comportamento.
Assim que, tem-se a necessidade de Bases de Dados
Orientados a Objectos
SGBDOO esto em continuo desenvolvimento ...
Base de Dados II-OZ@ APolitecnica2015
Outros Conceitos
Duas propriedades fundamentais para a
construo de um SGBDOO:
extensibilidade e completude computacional
Vantagens de SGBDOO
Aplicaes Internet so particularmente adequadas
para bases de dados de orientadas a objectos, pois que
a maioria das aplicaes so desenvolvidas em Java,
que uma linguagem orientada a objecto
SGBDOO ideal para as aplicaes mais populares
O crescimento da Internet, videogames, aplicaes
para multimdia e o desenvolvimento de bases de
dados distribudos que no se adequam ao modelo
relacional esto trazendo o foco para SGBDOO, sendo
menos complexo do ponto de vista do desenvolvimento
e utilizao
Segue os princpios das actuais linguagens de
programao
Base de Dados II-OZ@ APolitecnica2015
10
Desvantagens de SGBDOO
SGBDOO no tem uma base terica forte como bases
de dados hierrquicos baseado na metodologia de
"rvore e relacional baseado em "matemtica dos
conjuntos". Porm, nem tudo que no tem muita base
terica intil, como o clculo numrico que utilizado
at hoje....... .
Escassos recursos graficos para desenvolvimento
Instvel com relao a direcionamento de suas
aplicaes, j que tudo se resume em objectos
linguagens para consultas de objectos so difceis,
pouco padronizadas e uma relativa fraca explorao
Base de Dados II-OZ@ APolitecnica2015
11
12
Aspectos de Implementao
Ja sabemos que Object Database/Base de Dados de
Objectos constituida por objectos em vez de relaes,
tabelas ou outras estruturas
O que sera um Objecto?
Objecto um tipo idiomatico ou metafora que procura
relacionar a forma como os humanos percebem o mundo real
ou coisas da vida real
13
Cont.
Os problemas de criao de software
Custos elevados de desenho de software: desenvolvimento e
implantao
O problema de obsolencia de software
Riscos elevados de projectos falhados (sem sucesso)
Metodos de desenho e construo de software imaturos
Pouca confiabilidade problemas com a seguran
Integrao distribuda, heterogneo e redundante e fragmentada
de dados
Custos altos de manuteno de software
14
The
Theworld
worldof
ofanalysis
analysisand
anddesign
design: :
The
Theworld
worldof
ofthe
theproblem
problemdomain:
domain:
teams
teamsof
ofpeople
peoplehaving
havinglimitations
limitationsof
of
memory,
memory,perception,
perception,expressing
expressing
information
informationand
andcommunication.
communication.
comprising
comprisingcomplex,
complex,interdependent
interdependent
knowledge,
knowledge,aspects
aspectsand
andproblems.
problems.
Software:
strategic decisions,
analysis, design,
construction,
documentation,
deployment,
education, use,
maintenance,
modifications.
The
Theworld
worldof
ofcomputer
computer
artifacts
and
technologies:
artifacts and technologies:
hardware,
hardware,software,
software,networks,
networks,
languages,
tools,
facilities.
languages, tools, facilities.
The
Theworld
worldof
ofsoftware
softwareusers:
users:
psychological
psychologicalfactors,
factors,ergonomy,
ergonomy,
limitations
limitationsof
ofmemory
memoryand
and
perception,
tendency
to
perception, tendency toerrors
errorsand
and
abuse,
privacy,
security,
...
abuse, privacy, security, ...
Human
perception of the
problem domain
Abstract conceptual
model of the
problem domain
......
......
...
...
...
...
...
............
...
...
...... ...
Programmers view of
data structures and
operations
17
Cont.
Modelo relacional e OO sao
fundamentalmente diferentes e integracao dos
dois nao facil
Onda objecto-relacional decepcionante:
Quase ningum usa extenses orientadas a objecto
de sistemas relacionais
Eles no so suportados por padres, ferramentas e
APIs
Novos padres SQL, visando o modelo objectorelacional so mal sucedidos
18
19
Cont.
Novas Capacidades
Objectos complexos
Identidades de objectos
Tipos definidos pelo usurio
Encapsulation
Tipo de hierarquia / classe com herana
Sobrecarga, substituio ligao tardia,
polimorfismo
Completude computacional e
pragmtica de interfaces dos
programadores
20
21
Cont.
Relacionamentos, associaes,
ligaes:
Os objectos so ligados por elos
conceptuais. Por exemplo, os
objectos Employee e Department
podem ser conectados por um
link worksFor = TrabalhaPara
22
Cont.
Encapsulamento e ocultamento
de informaes:
As propriedades internas de um
objecto so subdivididos em
duas partes: pblico e privado
(invisvel a partir do exterior)
23
Cont.
Classes, tipos, interfaces:
Cada objecto uma instncia de
uma ou mais classes
Os objectos so instanciado de
acordo com a informao
apresentada na classe
A classe contm as propriedades
que so comuns para alguma
coleco de objectos
Cada objecto tem um tipo
Objectos so acessveis atravs
de suas interfaces
Base de Dados II-OZ@ APolitecnica2015
24
Cont.
Tipos de dados abstratos (ADTs): Um tipo de uma classe,
o que pressupe que qualquer acesso a um objecto
limitado coleco predefinida de operaes
Operaes, mtodos e mensagens: Um objecto
associado com um conjunto de operaes (mtodos).
O objecto executa a operao aps receber uma
mensagem com o nome da operao a ser realizada
(e seus parmetros)
Herana: As aulas so organizadas em uma hierarquia
que reflecte a hierarquia de conceitos do mundo real.
Por exemplo, a classe Person uma superclasse das
classes Empregado e Estudante
Base de Dados II-OZ@ APolitecnica2015
25
Cont.
Polimorfismo, ligao tardia, imperiosa:
A operao a ser executada sobre um
objecto escolhido de forma
dinmica, aps o objecto receber a
mensagem com o nome da operao
Persistncia: Objectos da base de
dados so persistentes, ou seja, devem
viver tanto tempo quanto necessrio.
Eles podem sobreviver a programas,
que os criou
26
Arquitectura de OO DBMS
Source program
in C++, Java, etc.
4GL/RAD environment
Processor
of ad hoc
queries
Facilities
Preprocessor
Compiler
Source program
in 4GL/RAD
Object code
modules
Linker
Executable
program
Transaction
processing,
log management,
rollback,
recovery,
authorization,
security
Query
optimization
and processing
Database resources
Data/Objects
Views
Rules
Indices
Catalogs
Possive data
(relations)
Database
schema
... ...
... ...
... ... ...
... ... ...
...
...
Linked objects
Database
schema
Classes and types
...
...
...
...
...
Procedure and
function libraries
Dictionaries,
catalogs
Types
Application
modules
Database procedures,
views, rules
...
...
...
...
...
...
...
...
...
Procedure and
function libraries
Dictionaries,
catalogs
Application
modules
Database procedures,
views, rules
Conclusao
Base de dados OO tem larga aplicacao no
mercado
Nao obstante suas rivais Objecto-Relacionais,
tem entretanto muito sucesso em diversas
areas da vida pratica
Modelo relacional perdeu ja seu papel de lider
na area de base de dados
Integracao com linguagens OO tem muita
aceitacao
29