aula 1 - bade dados ii-2015
TRANSCRIPT
-
7/24/2019 Aula 1 - Bade Dados II-2015
1/29
Base de Dados II-OZ@ APolitecnica-2015
Base de Dados II
Aula 1
Orlando Zacarias
-
7/24/2019 Aula 1 - Bade Dados II-2015
2/29
Motivao e Revisando
Uma base de dados uma coleco de dadosrelacionados que pode ser armazenada sob algumaforma fsica
Os dados armazenados em uma base de dadosrepresentam algum aspecto especfico do mundo real
um universo de discurso de onde os dados so obtidose apresentam algum grau de coerncia lgica entre seuscomponentes
Uma coleco aleatria de dados no constitui umabase de dados
Um sistema de gesto de base de dados o softwareque permite criar, manter e manipular bases de dadospara diversas aplicaes. O sistema de gesto de basede dados pode ser de propsito geral ou especfico paraalguma aplicao
Base de Dados II-OZ@ APolitecnica-2015
2
-
7/24/2019 Aula 1 - Bade Dados II-2015
3/29
Cont.
Um sistema de base de dados constitudo por uma
base de dados e por um sistema de gesto de base dedados
A necessidade de utilizao de um sistema de base dedados para suportar a armazenagem da informao deuma aplicaoprincipalmente a independncia da
aplicao com relao estrutura interna dearmazenagem e a possibilidade de compartilhar dadosentre aplicaespassaram a ser desejadas em outrasclasses de aplicaes, tais como projectos deengenharia (CAD/CAEComputer Aided Design,
Computer Aided Engineering), automao industrial ede escritrios (CAMComputer Aided Manufacturing,OAOffice Automation), sistemas especialistas desuporte tomada de decises (DSSDecision SupportSystems) e sistemas de suporte ao trabalho cooperativo
(CSCWComputer Supported Cooperative Work)Base de Dados II-OZ@ APolitecnica-2015
3
-
7/24/2019 Aula 1 - Bade Dados II-2015
4/29
Cont.
Estas aplicaes no convencionais impem requisitosao sistema de base de dados que no estavampresentes nas aplicaes tradicionais, tais como lidarcom maiores volumes de dados, a necessidade demanipulao de dados em formatos no-alfanumricos;incluindo informao multimdia e o tratamento deesquemas evolutivos e dinmicos
Os requisitos impostos por estas categorias de aplicaesconstituem a maior motivao para o surgimento denovas abordagens de gestao de dados
neste sentido que a integrao do paradigma deorientao a objectos ao sistemas de base de dados temsurgido como a tendncia mais promissora em termos degestao de dados para as mais diversas categorias deaplicaes
Base de Dados II-OZ@ APolitecnica-2015
4
-
7/24/2019 Aula 1 - Bade Dados II-2015
5/29
Sistema de Gesto de Base Dados OO(SGBDOO)
Desenvolvimento Fruto da combinao de ideias dos modelos de dados
tradicionais e de linguagens de programao orientadaa objectos
A importancia do modelo de dados orientado a objectosdeve-se a: Serem adequados para o tratamento de objectos
complexos (textos, grficos, imagens)
Serem dinmicos (programas, simulaes)
Possuirem maior naturalidade conceptual Estarem em consonncia com fortes tendncias em
linguagens de programao e engenharia de software
Consequencia: casamento entre as ling. de progr. e basede dados de forma mais adequada tratado no
contexto de orientao a objectosBase de Dados II-OZ@ APolitecnica-2015
5
-
7/24/2019 Aula 1 - Bade Dados II-2015
6/29
Cont.
SGBDOO combinam conceitos de objectocom capacidade das bases de dados tendoo potencial de fornecer poderososrepositrios para aplicaes avanadas debases de dados
Dividem-se em tres niveis
Logico
Interno
Externo
Base de Dados II-OZ@ APolitecnica-2015
6
-
7/24/2019 Aula 1 - Bade Dados II-2015
7/29
Cont.
Nivel LgicoUsa-se a noo de objecto
Possui caracteristicas no encontradas naslinguagens de programao tradicionais:Operadores de manipulao de estruturas
Gesto de armazenamentos
Tratamento de integridade
Persistncia dos dados
Base de Dados II-OZ@ APolitecnica-2015
7
-
7/24/2019 Aula 1 - Bade Dados II-2015
8/29
Definio de SGBDOO
Sistemas de Gesto de Base de Dados Orientados aObjectos (SGBDOO) podem ser definidos como umabase de dados capaz de armazenar alm de dados,como nos Sistemas de Arquivos e estruturas de dadosnas Bases de Dados Relacionais, outros tipos diferentes
de dados que no podem ser convertidos somente emarquivos lineares ou bidimensionais como tabelas, e simum tipo especial de objecto
A principal caracterstica de SGBDOO modelar
estruturas complexas armazenando no somente naestrutura de dados, mas tambm seu comportamento.Assim que, tem-se a necessidade de Bases de DadosOrientados a Objectos
SGBDOO esto em continuo desenvolvimento ...
Base de Dados II-OZ@ APolitecnica-2015
8
-
7/24/2019 Aula 1 - Bade Dados II-2015
9/29
Outros Conceitos
Duas propriedades fundamentais para aconstruo de um SGBDOO: extensibilidade e completude computacional
A primeira garante que o conjunto de tiposoferecidos pelo sistema permita a definio denovos tipos e no h distino entre os tipospr-definidos e os definidos pelo usurio
A segunda implica que a linguagem demanipulao de uma base de dadosorientado a objectos possa exprimir qualquerfuno computacional
Base de Dados II-OZ@ APolitecnica-2015
9
-
7/24/2019 Aula 1 - Bade Dados II-2015
10/29
Vantagens de SGBDOO
Aplicaes Internet so particularmente adequadaspara bases de dados de orientadas a objectos, pois quea 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, aplicaespara multimdia e o desenvolvimento de bases dedados distribudos que no se adequam ao modelo
relacional esto trazendo o foco para SGBDOO, sendomenos complexo do ponto de vista do desenvolvimentoe utilizao
Segue os princpios das actuais linguagens deprogramao
Base de Dados II-OZ@ APolitecnica-2015
10
-
7/24/2019 Aula 1 - Bade Dados II-2015
11/29
Desvantagens de SGBDOO
SGBDOO no tem uma base terica forte como basesde dados hierrquicos baseado na metodologia de"rvore e relacional baseado em "matemtica dosconjuntos". Porm, nem tudo que no tem muita baseterica intil, como o clculo numrico que utilizado
at hoje....... .
Escassos recursos graficos para desenvolvimento
Instvel com relao a direcionamento de suasaplicaes, 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@ APolitecnica-2015
11
-
7/24/2019 Aula 1 - Bade Dados II-2015
12/29
Aplicaes de SGBDOO e Nota Conclusiva
Consideradas como SGBD de "prxima gerao" paraaplicaes avanadas
Bases de dados orientados a objectos estoamadurecendo graas ao explosivo crescimento da
Internet e da multimdia
O modelo de base de dados de objectos e o modelorelacional coexistem porque so projetados paraaplicaes diferentes; i.e., no se deve adaptar osdados a base de dados, mas sim escolher o tipo debase de dados e o produto com base no tipo dosdados e na forma como os usurios finais os acessaro,pois no existe at o presente momento um SGBDcompatvel para aplicaes diversificadas
Base de Dados II-OZ@ APolitecnica-2015
12
-
7/24/2019 Aula 1 - Bade Dados II-2015
13/29
Aspectos de Implementao
Ja sabemos que Object Database/Base de Dados deObjectos constituida por objectos em vez de relaes,tabelas ou outras estruturas
O que sera um Objecto?
Milhes de anos de evoluo criaram mecanismos emnossas mentes que nos permite isolar objectos em nosso
ambiente, para nome-los e atribuir-lhes algumaspropriedades e comportamentos
Orientacao-objectos em ciencias computacionaisbaseia-se em mecanismos inatos/internos de nossasmentes
Base de Dados II-OZ@ APolitecnica-2015
13
Objecto um tipo idiomatico ou metafora que procurarelacionar a forma como os humanos percebem o mundo realou coisas da vida real
-
7/24/2019 Aula 1 - Bade Dados II-2015
14/29
Cont.
Os problemas de criao de software Custos elevados de desenho de software: desenvolvimento eimplantao
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
O principal factor dos problemas de software:Complexidade
Orientao a objectos representa nova esperana naluta contra a complexidade
Base de Dados II-OZ@ APolitecnica-2015
14
-
7/24/2019 Aula 1 - Bade Dados II-2015
15/29
Factores de Complexidade de Software
The world of analysis and design:teams of people having limitations of
memory, perception, expressing
information and communication.
The world of analysis and design:teams of people having limitations of
memory, perception, expressing
information and communication.
The world of the problem domain:comprising complex, interdependent
knowledge, aspects and problems.
The world of the problem domain:comprising complex, interdependent
knowledge, aspects and problems.
The world of computer
artifacts and technologies:hardware, software, networks,
languages, tools, facilities.
The world of computer
artifacts and technologies:hardware, software, networks,
languages, tools, facilities.
Software:
strategic decisions,analysis, design,
construction,
documentation,
deployment,
education, use,
maintenance,
modifications.
The world of software users:psychological factors, ergonomy,
limitations of memory and
perception, tendency to errors and
abuse, privacy, security, ...
The world of software users:psychological factors, ergonomy,
limitations of memory and
perception, tendency to errors and
abuse, privacy, security, ...
-
7/24/2019 Aula 1 - Bade Dados II-2015
16/29
Modelo Conceptual de Software
Processes of the software constructions are performed in our minds.
People must clearly imagine the problem before solving it.
Software analysis and design tools are nowadays object-oriented as a
rule, c.f. UML.
Object-orientation reduces the complexity of the mappings:
- between the human perception of the problem domain and an abstract model
- between the abstract object-oriented model and databases object databases
Humanperception of the
problem domain
Abstract conceptualmodel of the
problem domain
Programmers view ofdata structures and
operations
.........
...... .................. .................. ...
mappingmapping
*
-
7/24/2019 Aula 1 - Bade Dados II-2015
17/29
Porque Bases Dados Relacionais eObjecto-Relacionais no so Suficientes
Base de dados relacionais so mais populares: Poucoprovavel que percam sua dominio
No entanto, bases de dados relacionais implicam
incompatibilidade de impedncia grave entre desenhoorientado a objectos e estruturas de dados relacionais
impedance mismatch: Incompatibilidade entre aplicacoes e DBMS
Aplicacoes criam estrutura de dados complexas
Aplicacao pretende acede-las duma forma especifica
Incompatibilidade aumenta se app for OO
O mapeamento difcil, o custo de produo desoftware mais elevada
Desempenho frequentemente comprometida, custo de
manuteno muito altoBase de Dados II-OZ@ APolitecnica-2015
17
-
7/24/2019 Aula 1 - Bade Dados II-2015
18/29
Cont.
Modelo relacional e OO saofundamentalmente diferentes e integracao dosdois nao facil
Onda objecto-relacional decepcionante:Quase ningum usa extenses orientadas a objecto
de sistemas relacionais
Eles no so suportados por padres, ferramentas eAPIs
Novos padres SQL, visando o modelo objecto-relacional so mal sucedidos
Base de Dados II-OZ@ APolitecnica-2015
18
-
7/24/2019 Aula 1 - Bade Dados II-2015
19/29
Capacidades Gerais de Base Dados OO
Capacidades Tradicionais Gesto do armazenamento secundario
Controlo e processsos concorrentes
Gesto de transacoes e sua recuperao
Processamento de consultas Autorizao de acesso e controle,
segurana
Base de Dados II-OZ@ APolitecnica-2015
19
-
7/24/2019 Aula 1 - Bade Dados II-2015
20/29
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 epragmtica de interfaces dosprogramadores
Base de Dados II-OZ@ APolitecnica-2015
20
-
7/24/2019 Aula 1 - Bade Dados II-2015
21/29
Conceitos de Base de Dados OO
Objectos complexos, aidentidade do objecto: Os objectos tm complexidade
arbitrria Cada objecto tem identidade, ouseja, um nico identificadorinterno (OID)
Cada objecto tem um ou maisnomes externos
Base de Dados II-OZ@ APolitecnica-2015
21
-
7/24/2019 Aula 1 - Bade Dados II-2015
22/29
Cont.
Relacionamentos, associaes,ligaes:
Os objectos so ligados por elos
conceptuais. Por exemplo, osobjectos Employee e Departmentpodem ser conectados por umlink worksFor = TrabalhaPara
Base de Dados II-OZ@ APolitecnica-2015
22
-
7/24/2019 Aula 1 - Bade Dados II-2015
23/29
Cont.
Encapsulamento e ocultamentode informaes:
As propriedades internas de um
objecto so subdivididos emduas partes: pblico e privado(invisvel a partir do exterior)
Base de Dados II-OZ@ APolitecnica-2015
23
-
7/24/2019 Aula 1 - Bade Dados II-2015
24/29
Cont.
Classes, tipos, interfaces:
Cada objecto uma instncia deuma ou mais classes
Os objectos so instanciado deacordo com a informaoapresentada na classe
A classe contm as propriedadesque so comuns para algumacoleco de objectos
Cada objecto tem um tipo
Objectos so acessveis atravsde suas interfaces
Base de Dados II-OZ@ APolitecnica-2015
24
-
7/24/2019 Aula 1 - Bade Dados II-2015
25/29
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 umamensagem com o nome da operao a ser realizada(e seus parmetros)
Herana: As aulas so organizadas em uma hierarquiaque reflecte a hierarquia de conceitos do mundo real.Por exemplo, a classe Person uma superclasse dasclasses Empregado e Estudante
Base de Dados II-OZ@ APolitecnica-2015
25
-
7/24/2019 Aula 1 - Bade Dados II-2015
26/29
Cont.
Polimorfismo, ligao tardia, imperiosa:A operao a ser executada sobre umobjecto escolhido de formadinmica, aps o objecto receber a
mensagem com o nome da operao
Persistncia: Objectos da base dedados so persistentes, ou seja, devem
viver tanto tempo quanto necessrio.Eles podem sobreviver a programas,que os criou
Base de Dados II-OZ@ APolitecnica-2015
26
-
7/24/2019 Aula 1 - Bade Dados II-2015
27/29
Arquitectura de OO DBMS
Executable
program
Transaction
processing,
log management,
rollback,
recovery,
authorization,
security
Data/Objects
Views
Rules
Query
optimization
and processing
Database resources
Indices Catalogs
4GL/RAD environment
Source program
in 4GL/RAD
Processor
of ad hoc
queries
Facilities
Preprocessor
Compiler
Source program
in C++, Java, etc.
Object code
modules
Linker
Class library, run-
time modules of
the prog. lang.
Class library, run-
time modules of
OODBMS
-
7/24/2019 Aula 1 - Bade Dados II-2015
28/29
Modelo de Aplicacao Tradicional e OO
The traditional structure
of an application
... ... ...... ... ...
... ... ...... ... ...
... ... ...... ... ...
Types
Procedure and
function librariesApplication
modules
Dictionaries,
catalogsDatabase procedures,
views, rules
Possive data
(relations)
Linked objects
Classes and types
......
...
...
...
...
.........
...
...
......
......
The object-oriented structure
of an application
...
Applicationmodules
Dictionaries,
catalogsDatabase procedures,
views, rules
Database
schema
Database
schema
Procedure andfunction libraries
-
7/24/2019 Aula 1 - Bade Dados II-2015
29/29
Conclusao
Base de dados OO tem larga aplicacao nomercado
Nao obstante suas rivais Objecto-Relacionais,tem entretanto muito sucesso em diversas
areas da vida pratica
Modelo relacional perdeu ja seu papel de liderna area de base de dados
Integracao com linguagens OO tem muitaaceitacao
Base de Dados II-OZ@ APolitecnica- 29