• Nenhum resultado encontrado

DIRETRIZES PARA O PROJETO INFORMAL DE ESQUEMAS DE RELAÇÕES

No documento INTRODUÇÃO A BANCO DE DADOS (páginas 75-77)

Nessa seção serão discutidas métricas de qualidade informal para projeto de esquemas de relações, quais sejam:

• Semântica de atributos.

• Redução de valores redundantes em tuplas. • Redução de valores nulos em tuplas. • Não permissão de tuplas espúrias.

Essas métricas não são sempre independentes uma das outras, como será visto.

9.1.1 Semântica de atributos de relação

Assume-se que certo significado esteja associado aos atributos, para todo agrupamento de atributos que formam uma relação esquema. Intuitivamente, verifica-se que cada relação pode ser interpretada como um conjunto de fatos ou declarações. Este significado, ou semântica, especifica como podem ser interpretados os valores de atributos armazenados em uma tupla da relação, em outras palavras, como os valores de atributos estão relacionados uns com os outros. Em geral, é mais simples descrever a semântica de relações, ao invés da semântica de atributos de uma relação.

Para ilustrar, considere a versão simplificada da base de dados COMPANHIA da Figura 5.4. O significado do esquema da relação é simples - cada tupla representa um empregado, com valores para nome, número do seguro social, data de aniversário, endereço, e o número do departamento em que cada empregado trabalha. Além desses atributos existem aqueles atributos que são utilizados para estabelecer um relacionamento entre relações.

Assim, todas os esquemas de relações da Figura 5.4. podem ser considerados como um bom ponto de partida para manter clara a semântica. Pode-se assim, estabelecer as seguintes diretrizes para projetar esquemas de relações:

Diretriz 1ª: Projetar um esquema de relação de maneira que seja simples descrever seu

significado. Normalmente, isso significa que não se pode combinar atributos de múltiplos tipos de entidades e tipos de relacionamentos numa simples relação. Intuitivamente, se um esquema de relação corresponde a um tipo de entidade ou tipo de relacionamento, o significado tende a ser claro. Por outro lado, tende ser uma mistura de múltiplas entidades e relacionamentos e, assim, semanticamente não-clara.

A relação esquema da Figura 9.1 a e b possuem semântica clara. Uma tupla na relação esquema EMP_DEPT da Figura 9.1a representa um mero empregado, mas inclui informações adicionais, tais como o nome do departamento em que o empregado trabalha (DNOME) e o número do seguro social do gerente do departamento (NSSGER). Na relação esquema EMP_PROJ da Figura 9.1b, cada tupla relaciona um empregado a um projeto, mas também, incluem nome do empregado (ENOME), nome do projeto (PNOME) e a localização do projeto (PLOCALIZAÇÃO). Embora não exista, logicamente, nada de errado com esses esquemas, eles são considerados um projeto pobre, pois viola a Diretriz 1 porque mistura atributos de

entidades distintas do mundo real; EMP_DEPT mistura atributos de empregados e

departamentos, e EMP_PROJ mistura atributos de empregados e projetos. Eles podem ser usados como visões, mas podem causar problemas quando usados como relações da base de dados, como será discutido mais adiante.

(a) EMP_DEPT

ENOME NSS DATANASC ENDEREÇO DNUMERO DNOME NSSGER

(b) EMP_PROJ

NSS PNUMERO HORAS ENOME PNOME PLOCALIZAÇÃO

Figura 9.1

Informação redundante em tuplas e anomalias de atualizações

Uma das metas do projeto de esquemas é a minimização do espaço de armazenamento que relações da base ocupam. O agrupamento de atributos em esquemas de relações tem um efeito significativo no espaço de armazenamento. Por exemplo, compare o espaço usado pelas duas relações base EMPREGADO e DEPARTAMENTO na Figura 9.2 com o espaço utilizado por EMP_DEPT na relação base da Figura 9.3, que é o resultado da aplicação do JOIN NATURAL entre EMPREGADO e DEPARTAMENTO.

EMPREGADO

ENOME NSS DATANASC ENDEREÇO DNUMERO John Smith 123456789 09-JAN-55 R. A, 1 5

Franklin Wong 333445555 08-DEZ-45 R. B, 2 5 Alícia Zelaya 999887777 19-JUL-58 Av. C, 3 4 Jennifer Wallace 987654321 20-JUN-31 Trav. D, 4 4 Ramesh Narayan 666884444 15-SET-52 R. E, 5 5 Joyce English 453453453 31-JUL-62 R. F, 6 5 Ahmad Jabbar 987987987 29-MAR-59 Av G, 7 4 James Borg 888665555 10-NOV-27 Av H, 8 1

DEPARTAMENTO LOCAIS_DEPTO

DNOME DNUMERO NSSGER DNUMERO DLOCALIZAÇÃO

Pesquisa 5 333445555 1 Houston Administrativo 4 987654321 4 Stafford Gerencial 1 888665555 5 Bellaire 5 Sugariand 5 Houston TRABALHA_EM PROJETO

NSSEMP PNRO HORAS PNOME PNUMERO PLOCALIZAÇÃO DNUM

123456789 1 32.5 ProdutoX 1 Bellaire 5 123456789 2 7.5 ProdutoY 2 Sugarland 5 666884444 3 40.0 ProdutoZ 3 Houston 5 453453453 1 20.0 Automação 10 Stafford 4 453453453 2 20.0 Reorganização 20 Houston 1 333445555 2 10.0 Beneficiamento 30 Stafford 4 333445555 3 10.0 333445555 10 10.0 333445555 20 10.0 999887777 30 30.0 999887777 10 10.0 987987987 10 35.0 987987987 30 5.0 987654321 30 20.0 987654321 20 15.0 888775555 20 null

Figura 9.2

EMP_DEPT

ENOME NSS DATANASC ENDEREÇO DNUMERO DNOME NSSGER John Smith 123456789 09-JAN-55 R. A, 1 5 Pesquisa 333445555 Franklin Wong 333445555 08-DEZ-45 R. B, 2 5 Pesquisa 333445555 Alícia Zelaya 999887777 19-JUL-58 Av. C, 3 4 Administrativo 987654321 Jennifer Wallace 987654321 20-JUN-31 Trav. D, 4 4 Administrativo 987654321 Ramesh Narayan 666884444 15-SET-52 R. E, 5 5 Pesquisa 333445555 Joyce English 453453453 31-JUL-62 R. F, 6 5 Pesquisa 333445555 Ahmad Jabbar 987987987 29-MAR-59 Av G, 7 4 Administrativo 987654321 James Borg 888665555 10-NOV-27 Av H, 8 1 Gerencial 888665555

EMP_PROJ

NSS PNUMERO HORAS ENOME PNOME PLOCALIZAÇÃO 123456789 1 32.5 John Smith ProdutoX Bellaire 123456789 2 7.5 John Smith ProdutoY Sugarland 666884444 3 40.0 Ramesh Narayan ProdutoZ Houston 453453453 1 20.0 Joyce English ProdutoX Bellaire 453453453 2 20.0 Joyce English ProdutoY Sugarland 333445555 2 10.0 Franklin Wong ProdutoY Sugarland 333445555 3 10.0 Franklin Wong ProdutoZ Houston 333445555 10 10.0 Franklin Wong Automação Stafford 333445555 20 10.0 Franklin Wong Reorganização Houston 999887777 30 30.0 Alícia Zelaya Beneficiamento Stafford

999887777 10 10.0 Alícia Zelaya Automação Stafford 987987987 10 35.0 Ahmad Jabbar Automação Stafford 987987987 30 5.0 Ahmad Jabbar Beneficiamento Stafford 987987987 30 20.0 Jennifer Wallace Beneficiamento Stafford 987987987 20 15.0 Jennifer Wallace Reorganização Houston 888665555 20 null James Borg Reorganização Houston

Figura 9.3

Em EMP_DEPT, os valores de atributos pertencentes a um particular departamento (DNUMERO, DNOME, NSSGER) estão repetidos para todos os empregados que trabalham para um departamento. Em contraste, as informações de departamento aparecem apenas uma vez para cada departamento na relação DEPARTAMENTO da Figura 9.2, e apenas o número do departamento (DNUMERO) é repetido na relação EMPREGADO para cada empregado que trabalha no departamento. Similarmente, o mesmo comentário se aplica para a relação EMP_PROJ.

Um outro problema sério identificado, quando se utilizam relações similares às encontradas na Figura 9.3 como relações base, é o problema da anomalia de alterações. Podem ser classificadas em anomalias de inserção, remoção e modificações.

No documento INTRODUÇÃO A BANCO DE DADOS (páginas 75-77)