Artigo

Zerando Suas Dúvidas – Parte 03 – Álgebra Relacional (FCC)

Olá pessoal,

Estava respondendo as peguntas do fórum do Estratégia hoje e me deparei com essa questão:

Ano: 2007 Banca: FCC Órgão: MPU Cargo: Analista de banco de dados

No estágio 2 de otimização dos sistemas relacionais, para transformação de expressões, pode-se aplicar a propriedade idempotência apenas nas operações da álgebra relacional

A) união, interseção e divisão.
B) união, interseção e junção.           
C) união, junção e diferença.
D) interseção, diferença e divisão.
E) junção, diferença e divisão.

Achei a questão extremamente interssante. Mistura conceitos de algebrá relacional e explica um pouco do estágio 2 de otimização dos sistemas operacionais. Vejamos primeiramente a dúvida da aluna: "Poderia comentar essa questão? O que seria idempotência?".

Vamos agora fazer alguns comentários sobre a questão:

Uma operação idempotente pode ser aplicada a um determinado conjunto várias vezes e retornaria o mesmo resultado. Formalmente, dado uma operação, caso ela seja executada n vezes se obtêm o mesmo resultado. Para uma função unária você pode pensar assim f(x) = f(f(x)).

Por exemplo, se você multiplicar qualquer número por 1 várias vezes você vai obter como resultado esse número. Quando pensamos em bando de dados as operações de UNDO e REDO são idem potentes, ou seja, se você aplicar essa operação diversas vezes vamos obter o mesmo resultado na base de dados.

Agora vamos voltar nossa atenção ao contexto da questão que está associado as operações idempotentes da álgebra relacional. De posse do conceito, tente resolver a questão antes de ler o restante do meu comentário.

Se pensarmos nas operações de álgebra relacional de seleção e projeção é possível perceber a propriedade de idempotência. Suponha uma seleção sobre uma tabela, em seguida a mesma seleção sobre o resultado.

Agora vamos para as operações binárias que também tem a propriedade de idempotência. Percebam que:

A U A = A ; A união de um conjunto qualquer A com ele mesmo é igual a A;

A ∩ A = A ; A interseção de um conjunto qualquer A com ele mesmo é igual a A;

A JOIN A = A;

De forma genérica: Dado (op) um operador binário, (op) é idempotente se A (op) A = A, para todo A.

Desta forma a resposta estaria na alternativa B: UNIÃO, INTERSEÇÃO e JUNÇÃO.

Forte abraço e bons estudos,

Thiago

Deixe seu comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Veja os comentários
  • Nenhum comentário enviado.