A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

© Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 1 Disciplina Banco de Dados II Revisão da Matéria VP3 Msc, Marcelo Bezerra de Alcântara

Apresentações semelhantes


Apresentação em tema: "© Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 1 Disciplina Banco de Dados II Revisão da Matéria VP3 Msc, Marcelo Bezerra de Alcântara"— Transcrição da apresentação:

1 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 1 Disciplina Banco de Dados II Revisão da Matéria VP3 Msc, Marcelo Bezerra de Alcântara malcantara@fa7.edu.br

2 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 2 Objetivos 1.Revisar a matéria para a VP3;

3 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 3 Sumário 1.Questões sobre transação 2.Questões sobre recuperação de falhas 3.Controle de concorrência 4.Segurança 5.Bancos de Dados Distribuído 6.Banco de Dados Não Convencionais

4 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 4 Questão 1 Defina o que é transação e quais são as suas propriedades ?

5 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 5 Resposta 1 Unidade lógica de processamento em um SGBD, composta de uma ou mais operações, onde seus limites podem ser determinados em SQL. De forma abstrata e simplificada, uma transação pode ser encarada como um conjunto de operações de leitura e escrita de dados A transação garante as 4 propriedades: Atomicidade, Consistência, Isolamento e Durabilidade read(x) x = x – i read(y) y = y * x write(x) write(y) TxTx lê o dado X do BD e o armazena na variável X grava no dado Y do BD o valor da variável Y

6 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 6 Questão 2 Defina as propriedades da transação?

7 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 7 Resposta 2 Atomicidade –Princípio do Tudo ou Nada, ou todas as operações da transação são efetivadas com sucesso no BD ou nenhuma delas se efetiva Consistência –Uma transação sempre conduz o BD de um estado consistente para outro estado também consistente Isolamento –No contexto de um conjunto de transações concorrentes, a execução de uma transação T x deve funcionar como se T x executasse de forma isolada, T x não deve sofrer interferências de outras transações executando concorrentemente Durabilidade –Deve-se garantir que as modificações realizadas por uma transação que concluiu com sucesso persistam no BD,nenhuma falha posterior ocorrida no BD deve perder essas modificações

8 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 8 Questão 3 Explique para que servem as operações COMMIT e ROLLBACK

9 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 9 Resposta 3 A operação COMMIT deve ser utilizada para solicitar a efetivação da transação, ou seja, garantir que os efeitos da transação sejam disponibilizadas para as outras transações e que seus efeitos sejam duráveis; A operação ROLLBACK deve ser utilizada para solicitar o aborto da transação, ou seja, desfazer todos os efeitos da transação.

10 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 10 Questão 4 Explique para que serve o mecanismo de recuperação de falhas de um SGBD, e que propriedades ele garante?

11 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 11 Resposta 4 Técnicas de recuperação são técnicas que garantem a consistência, atomicidade e durabilidade de transações, mesmo com a ocorrência de falhas. Possuem duas partes: 1.Ações realizadas durante o funcionamento normal do SGBD para coletar informações suficientes que permitam recuperar falhas 2. Ações realizadas após a falha para recuperar a base de dados a um estado consistente, garantindo o isolamento e durabilidade das transações.

12 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 12 Questão 5 Considere as transações abaixa e responda que operações devem ser tomadas pelo sistema de recuperação de falhas, tendo como base a técnica de modificação postergada. Considere o log gerado! Duas transações T 0 : read (A)T 1 : read (C) T 2 : read (D) A: - A * 10C:-C- 100D : D + 1 write (A) write (C)write (D) read (B) B:- B + 150 write (B) Log de execução

13 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 13 Resposta 5 Realizar a operação de REDO de T1

14 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 14 Questão 6 Considere as transações abaixa e responda que operações devem ser tomadas pelo sistema de recuperação de falhas, tendo como base a técnica de modificação imediata. Considere o log gerado! Duas transações T 0 : read (A)T 1 : read (C) A: - A * 50C:-C- 100 write (A) write (C) read (B) B:- B + 150 write (B) Log de execução

15 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 15 Resposta 6 Realizar a operação de REDO de T1 e UNDO de T0

16 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 16 Questão 7 Defina o que é seriabilidade baseada na equivalência de conflito e der exemplos?

17 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 17 Resposta 7 Equivalência de Conflito –dado um escalonamento não-serial E para um conjunto de Transações T, E é serializável em conflito se E for equivalente em conflito a algum escalonamento serial E para T, ou seja, a ordem de quaisquer 2 operações em conflito é a mesma em E e E.

18 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 18 Resposta 7 write(X) X = X + 10 read(X) write(Y) Y = Y + 20 read(Y) write(X) X = X – 20 read(X) T2T1 write(Y) Y = Y + 20 read(Y) write(X) X = X + 10 read(X) write(X) X = X – 20 read(X) T2T1 escalonamento serial E escalonamento não-serial E1 write(Y) Y = Y + 20 write(X) read(Y) write(X) X = X + 10 read(X) X = X – 20 read(X) T2T1 escalonamento não-serial E2 E1 equivale em conflito a E E2 não equivale em conflito a nenhum escalonamento serial para T1 e T2 E1 é serializável e E2 não é serializável

19 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 19 Questão 8 Defina o que é escalonamento recuperável?

20 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 20 Resposta 8 Garante que, se Tx realizou commit, Tx não irá sofrer UNDO –o recovery espera sempre esse tipo de escalonamento! Um escalonamento E é recuperável se nenhuma Tx em E for concluída até que todas as transações que gravaram dados lidos por Tx tenham sido concluídas

21 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 21 Resposta 8 abort( ) commit( ) write(X) X = X + 10 read(X) write(X) X = X – 20 read(X) T2T1 escalonamento não-recuperável commit( ) write(X) X = X + 10 read(X) write(X) X = X – 20 read(X) T2T1 escalonamento recuperável

22 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 22 Questão 9 Defina o que é escalonamento sem aborto em cascata?

23 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 23 Resposta 9 Um escalonamento recuperável pode gerar abortos de transações em cascata –consome muito tempo de recovery! Um escalonamento E é recuperável e evita aborto em cascata se uma Tx em E só puder ler dados que tenham sido atualizados por transações que já concluíram

24 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 24 Resposta 9...abort( ) write(X) X = X + 10 read(X) write(X) X = X – 20 read(X) T2T1 Escalonamento recuperável com aborto em cascata... write(X) X = X + 10 read(X) commit( ) write(X) X = X – 20 read(X) T2T1 Escalonamento recuperável sem aborto em cascata

25 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 25 Questão 10 Defina o que é escalonamento estrito?

26 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 26 Resposta 10 Garante que, se Tx deve sofrer UNDO, basta gravar a before image dos dados atualizados por ela Um escalonamento E é recuperável, evita aborto em cascata e é estrito se uma Tx em E só puder ler ou atualizar um dado X depois que todas as transações que atualizaram X tenham sido concluídas

27 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 27 Resposta 10 abort( ) commit( ) write(X) X = Y + 10 read(Y) write(X) X = X – 20 read(X) T2T1 Escalonamento recuperável sem aborto em cascata e não-estrito commit( ) write(X) X = Y + 10 read(Y) commit( ) write(X) X = X – 20 read(X) T2T1 Escalonamento recuperável sem aborto em cascata e estrito

28 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 28 Questão 11 1.Dadas as transações abaixo, associe corretamente a história com o tipo de escalonamento (SR, R, SAC, E, S) T1 =r(x) w(x) w(y) w(z) c1T2 = r(u) w(x) r(y) w(y)w(u)c2 H E1 = r1(x) w1(x)w1(y)r2(u) w2(x) r2(y) w2(y) w(u) c2 w1(z) c1 ( ) H E2 = r1(x) w1(x) w1(y) w1(z)c1 r2(u) w2(x) r2(y) w2(y) w(u) c2 ( ) H E3 =r1(x) w1(x) w1(y) r2(u) w2(x) w1(z) c1 r2(y) w2(y) w(u) c2 ( ) H E4 =r1(x) w1(x)w1(y) r2(u) w1(z) c1 w2(x) r2(y) w2(y) w(u) c2 ( ) H E5 =r1(x) w1(x) w1(y) r2(u) w2(x) r2(y) w2(y) w1(z) c1 w(u) c2 ( )

29 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 29 Resposta 11 1.Dadas as transações abaixo, associe corretamente a história com o tipo de escalonamento (SR, R, SAC, E, S) T1 =r(x) w(x) w(y) w(z) c1T2 = r(u) w(x) r(y) w(y) w(u) c2 H E1 = r1(x) w1(x)w1(y) r2(u) w2(x) r2(y) w2(y) w(u) c2 w1(z) c1 (SR ) H E2 = r1(x) w1(x) w1(y) w1(z)c1 r2(u) w2(x) r2(y) w2(y) w(u) c2 (S ) H E3 =r1(x) w1(x) w1(y) r2(u) w2(x) w1(z) c1 r2(y) w2(y) w(u) c2 (SAC) H E4 =r1(x) w1(x) w1(y) r2(u) w1(z) c1 w2(x) r2(y) w2(y) w(u) c2 (E ) H E5 =r1(x) w1(x) w1(y) r2(u) w2(x) r2(y) w2(y) w1(z) c1 w(u) c2 (R)

30 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 30 Questão 12 Defina o que é seriabilidade baseada na equivalência de visão e der exemplos?

31 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 31 Resposta 12 dado um escalonamento não-serial E para um conjunto de Transações T, E é serializável em visão se E for equivalente em visão a algum escalonamento serial E para T, ou seja: – para toda operação read(X) de uma Tx em E, se X é lido após um write(X) de uma Ty em E (ou originalmente lido do BD), então essa mesma seqüência deve ocorrer em E; –se uma operação write(X) de uma Tk for a última operação a atualizar X em E, então Tk também deve ser a última transação a atualizar X em E.

32 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 32 Resposta 12 Idéia básica –enquanto cada read(X) de uma Tx ler o resultado de uma mesmo write(X) em E e E, em ambos os escalonamentos, Tx tem a mesma visão do resultado –se o último write(X) é feito pela mesma transação em E e E, então o estado final do BD será o mesmo em ambos os escalonamentos Exemplo H serial = r1(X) w1(X) c1 w2(X) c2 w3(X) c3 H exemplo = r1(X) w2(X) w1(X) w3(X) c1 c2 c3 –H exemplo não é serializável em conflito, mas é serializável em visão

33 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 33 Exercício 13 1.Explique o princípio da técnica de bloqueio de duas fases e mostre exemplo?

34 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 34 Resposta 13 Premissa –para toda transação Tx, todas as operações de bloqueio de dados feitas por Tx precedem a primeira operação de desbloqueio feita por Tx Protocolo de duas fases 1.Fase de expansão ou crescimento Tx pode obter bloqueios, mas não pode liberar nenhum bloqueio 2.Fase de retrocesso ou encolhimento Tx pode liberar bloqueios, mas não pode obter nenhum bloqueio

35 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 35 Resposta 13 número bloqueios Gráfico de bloqueios de Tx tempo start commit crescimentoencolhimento ponto em que os bloqueios para todos os dados desejados por Tx foram obtidos (P max (Tx)) execução de operações de Tx

36 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 36 Questão 14 Explique o que é Deadlock?

37 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 37 Resposta 14 Ocorrência de deadlock –Ty está na Fila-WAIT(D1) de um dado D1 bloqueado por Tx –Tx está na Fila-WAIT(D2) de um dado D2 bloqueado por Ty Pode ser descoberto através de um grafo de espera de transações –se o grafo é cíclico existe deadlock! Tx Ty

38 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 38 Questão 15 Para que server o operador grant do SQL

39 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 39 Resposta 15 O Comando grant é usado para conferir autorização. A forma básica deste comando é: grant on to

40 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 40 Resposta 15 grant select on agencia to U1, U2, U3 grant update on deposito to U1 grant references (nome-agencia) on agencia to U1

41 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 41 Questão 16 Para que server a opção with grant option?

42 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 42 Resposta 16 A opção with grant option, permite ao usuário que recebeu um privilégio repassar para quem quiser.

43 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 43 Questão 17 Para que server a operação revoke?

44 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 44 Resposta 17 Para revogar a autorização, o comando revoke é usado. Ele toma a forma quase idêntica àquela do comando grant: revoke on from

45 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 45 Resposta 17 revoke select on agencia from U1, U2, U3 revoke update on deposito from U1 revoke references (nome-agencia) on agencia from U1

46 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 46 Questão 18 Para que servem os pápeis (Role) no contexto de segurança no SGBD e como ela são criadas?

47 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 47 Resposta 18 É um identificador ao qual pode-se atribuir privilégios que não existem a princípio. Então pode-se atribuir a um usuário este papel (conjunto de privilégios) com um único comando GRANT. Pode-se inclusive ao criar um papel usar outros papéis já cadastrados. Ex. PapelVendedor, PapelVendedorSapatos, PapelVendedoFrutas.

48 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 48 Resposta 18 Sintaxe SQL:1999 CREATE ROLE nome-papel [WITH ADMIN {CURRENT_USER | CURRENT_ROLE}] Para remover um papel: DROP ROLE nome-papel;

49 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 49 Questão 19 O que são visões em um SGBD?

50 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 50 Resposta 19 Uma visão, na terminologia SQL, é uma tabela única e derivada de outra tabela, que pode ser uma tabela básica ou uma visão previamente definida. Uma visão não existe de forma física, ela é considerada uma tabela virtual, em contraste com as tabelas básicas, cujas tuplas são realmente armazenadas no banco de dados. Isso limita as operações de atualização possíveis para as visões, embora não imponha nenhuma limitação para consultas.

51 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 51 Questão 20 Para que servem operador create view e drop view respectivamente?

52 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 52 Resposta 20 Create view para criar uma visão Drop view para remover

53 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 53 Questão 21 Para que server o Audit Trail?

54 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 54 Resposta 21 Audit trail: componente de todo SGBD que armazena histórico de informações de auditoria

55 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 55 Questão 22 Quanto a classificação de um SQBDD, qual a diferença entre um Homogêneo e um Heterogêneo?

56 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 56 Resposta 22 BD Homogêneo –BDs são idênticos à nível de modelo e SGBD BD Heterogêneo (BDH) –pode apresentar diferenças a nível de SGBD modelo e esquema de dados DML

57 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 57 Questão 23 Que atividade deve ser adiciona a um projeto de SGBDD?

58 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 58 Resposta 23 Projeto de BDC –definir e estruturar dados persistentes relevantes para um domínio de aplicação levantamento de requisitos, modelagem conceitual, modelagem lógica e modelagem física Projeto de BDD (do zero) –modelagem lógica definir adicionalmente a alocação do esquema lógico nos BDs dos nodos –decisão sobre quais dados serão armazenados em quais nodos –leva em conta fragmentação e replicação de dados

59 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 59 Questão 24 O que é fragmentação dos dados?

60 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 60 Resposta 24 Separação dos dados de uma relação para fins de armazenamento nos nodos –definição de um esquema de fragmentação Princípios da fragmentação –completude dada uma relação R, não pode haver perda de dados de R quando R for fragmentada em vários nodos –reconstrução deve ser sempre possível reconstruir R a partir da sua coleção de fragmentos Tipos de fragmentação –horizontal, vertical e mista

61 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 61 Questão 25 O que é fragmentação horizontal?

62 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 62 Resposta 25 Separação de R a nível de tupla Cada fragmento horizontal fh i de R (fh i (R)) é definido através de uma seleção – fh i (R) = c (R) R é obtida através da união de todos os seus fragmentos (princípios da fragmentação) –R = fh 1 (R) fh 2 (R)... fh n (R) FH com fragmentação derivada –tuplas de uma relação secundária S (com referência à R) são também fragmentadas

63 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 63 Resposta 25 rua Q, 52Fpolis5 rua K, 87Fpolis4 rua E, 18Blumenau3 rua H, 55Blumenau2 rua X, 10Fpolis1 endereçocidadenúmero 21300,00vendedor15/05/74rua Q, 52Ana5... 2 1 1 1 filial 14/01/73 13/08/72 12/04/71 11/11/70 DN 1000,00 1300,00 1200,00 1500,00 salário caixa vendedor caixa vendedor cargo rua K, 87Carlos4 rua E, 18Paulo3 rua H, 55Maria2 rua X, 10João1 endereçonomecódigo Filiais Funcionários cidade = Fpolis (Filiais) cidade = Blumenau (Filiais) fh 1 fh 2 (derivada para Funcionários) rua E, 18Blumenau3 rua H, 55Blumenau2 endereçocidadenúmero rua Q, 52Fpolis5 rua K, 87Fpolis4 rua X, 10Fpolis1 endereçocidadenúmero... 1 1 1 filial... rua E, 18Paulo3 rua H, 55Maria2 rua X, 10João1 endereçonomecódigo

64 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 64 Questão 26 O que é fragmentação vertical?

65 © Marcelo Bezerra de Alcântara Resposta 26 Separação de R a nível de atributo Cada fragmento vertical fv i de R (fv i (R)) é definido através de uma projeção – fv i (R) = a1,..., aj (R) R é obtida através da junção natural de todos os seus fragmentos –R = fv 1 (R) fv 2 (R)... fv n (R) –requer a mesma chave candidata em todos os fragmentos

66 © Marcelo Bezerra de Alcântara Resposta 26 21300,00vendedor15/05/74rua Q, 52Ana5... 2 1 1 1 filial 14/01/73 13/08/72 12/04/71 11/11/70 DN 1000,00 1300,00 1200,00 1500,00 salário caixa vendedor caixa vendedor cargo rua K, 87Carlos4 rua E, 18Paulo3 rua H, 55Maria2 rua X, 10João1 endereçonomecódigo Funcionários código, cargo, salário, filial (Funcionários) fv 2 (dados profissionais) 21300,00vendedor5 21000,00caixa4... 1 1 1 filial 1300,00vendedor3 1200,00caixa2 1500,00vendedor1 saláriocargocódigo código, nome, endereço, DN (Funcionários) fv 1 (dados pessoais) 15/05/74rua Q, 52Ana5 14/01/73rua K, 87Carlos4... 13/08/72 12/04/71 11/11/70 DN rua E, 18Paulo3 rua H, 55Maria2 rua X, 10João1 endereçonomecódigo

67 © Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 67 Questão 27 Quais as formas de replicação disponíveis?

68 © Marcelo Bezerra de Alcântara Resposta 27 Total –desempenho bom para consultas não há necessidade de acesso remoto –muita redundância de dados e desempenho ruim para atualizações manutenção de cópias consistentes (uso de triggers, por exemplo) scheduler e recovery mais complexos –bloqueios em todos os nodos e com interferências diferentes –UNDO e REDO em todos os nodos Nula –inverte-se as vantagens e desvantagens Parcial –meio termo entre as opções anteriores

69 © Marcelo Bezerra de Alcântara Questão 28 Num banco de dados centralizado, o estimativas de custo do processamento de uma consulta baseiam-se principalmente no número de acessos a disco. Cite dois novos paramentros em um SGBDD!

70 © Marcelo Bezerra de Alcântara Resposta 28 BDD –consultas podem requisitar dados em vários nodos, logo há outros fatores a estimar custo do volume de dados transmitido na rede –deve ser o menor possível! processamento paralelo de partes da consulta em diferentes nodos –DDD mantém a localização e as filtragens H e V que

71 © Marcelo Bezerra de Alcântara Questão 29 Que protocolo é utilizado para garantir a atomicidade e durabilidade em um SGBDD?

72 © Marcelo Bezerra de Alcântara Resposta 29 técnica 2PC (2-Phase Commit)

73 © Marcelo Bezerra de Alcântara Questão 30 Compare o banco Relacional com os bancos não convencionais.

74 © Marcelo Bezerra de Alcântara Resposta 30 atualização não é in-placeatualização in-place operações DML envolvem procedimentos complexos operações DML simples outras semânticas de relacionamento (composição, adjacência,...) relacionamentos de associação (por chave) transações longastransações curtas atributos complexosatributos atômicos estrutura não-fixaestrutura fixa Dados Não-ConvencionaisDados Convencionais

75 © Marcelo Bezerra de Alcântara Questão 31 Compare o modelo orientado a objetos com o modelo relacional

76 © Marcelo Bezerra de Alcântara Resposta 31 Comparação com o modelo relacional –maior nível de abstração modelo de objetos tem maior afinidade semântica com um modelo conceitual de dados –representação mais natural de uma entidade do mundo real –mais adequado a representação de dados complexos de aplicações não-convencionais aplicações CAD/CAM, sistemas de informação geográfica,... –modelo mais complexo maior número de conceitos

77 © Marcelo Bezerra de Alcântara Questão 32 Compare os BDR, BDOO e BDOR?

78 © Marcelo Bezerra de Alcântara Resposta 32 Comparação com o modelo relacional –maior nível de abstração modelo de objetos tem maior afinidade semântica com um modelo conceitual de dados –representação mais natural de uma entidade do mundo real –mais adequado a representação de dados complexos de aplicações não-convencionais aplicações CAD/CAM, sistemas de informação geográfica,... –modelo mais complexo maior número de conceitos

79 © Marcelo Bezerra de Alcântara Questão 33 Quais são os padrões XML?

80 © Marcelo Bezerra de Alcântara Resposta 33 DTD (Document Type Definition) –Permite se definir uma gramática para criar documentos específicos Namespaces –Permite utilizar nomes repetidos para tags utilizando espaços de nomes diferentes XML Schema –Estende o conceito de DTDs

81 © Marcelo Bezerra de Alcântara Resposta 33 XLInks –Links entre documentos –Uma forma generalizada dos conceitos de âncoras e links de HML XPointer –Permite um recurso ser identificado pela sua localização contextual. XPath –É uma linguagem para referenciar partes de um documento XML

82 © Marcelo Bezerra de Alcântara Resposta 33 Xquery –Permite a consulta dentro de documentos XSLT (eXtensible Style Language Transformation) – Transformação de documentos XML CSS –Linguagem de estilo. Foi definida primeiramente para HTML

83 © Marcelo Bezerra de Alcântara Resposta 33 DOM( Document Object Model) –Manipula documentos XML como sendo uma árvore de objetos SAX(Simple API for XML) –Utiliza o conceito de eventos para a manipulação de documentos XML


Carregar ppt "© Marcelo Bezerra de AlcântaraBanco de Dados II - Revisão - 1 Disciplina Banco de Dados II Revisão da Matéria VP3 Msc, Marcelo Bezerra de Alcântara"

Apresentações semelhantes


Anúncios Google