Você está na página 1de 7

Prefcio stima edio

Este livro, uma introduo bastante ampla a agora muito


extensa rea dos sistemas de bancos de dados, oferece
uma base slida sobre os fundamentos da tecnologia de
bancos de dados e apresenta algumas idias a respeito da
forma provvel como essa rea se desenvolver no futuro.
O livro se destina principalmente a ser utilizado como
livro-texto, e no como uma obra de referncia (embora
eu acredite que ele tambm possa ser til, at certo
ponto, como manual de referncia). A nfase, em todo o
livro, est nas idias e na compreenso, e no apenas em
formalismos.
PR-REQUISITOS
O livro como um todo se destina a qualquer pessoa que
tenha algum tipo de interesse profissional em
informtica e queira adquirir uma compreenso do assunto
de sistemas de bancos de dados. Suponho que o leitor
tenha pelo menos um conhecimento bsico de:
Recursos de armazenamento e gerenciamento de arquivos
(indexao etc.) de um moderno sistema de computador;
Caractersticas de uma ou mais linguagens de
programao em alto nvel (por exemplo, C, Java, Pascal,
PL/I etc).
ESTRUTURA
O livro se divide em seis partes principais:
1. Conceitos bsicos
II. O modelo relacional
III. Projeto de bancos de dados
IV. Gerenciamento de transaes
V. Temas avanados
VI. Bancos de dados de objetos e relacional/objeto
Cada parte, por sua vez, se divide em vrios captulos:
A Parte 1 (quatro captulos) fornece uma ampla
introduo aos conceitos de sistemas de bancos de dados
em geral e sistemas relacionais em particular. E tambm
apresenta a linguagem padro de bancos de dados SQL.
A Parte II (cinco captulos) consiste em uma descrio
detalhada e muito cuidadosa do modelo relacional, que
no somente o alicerce terico subjacente aos sistemas
relacionais, como tambm a base terica da rea de
bancos de dados como um todo.
A Parte III (quatro captulos) discute a questo geral
do projeto de bancos de dados; trs captulos so
dedicados teoria do projeto; o quarto tece
consideraes a respeito da modelagem semntica e do
modelo de entidades e relacionamentos.
A Parte IV (dois captulos) se ocupa de vrios
aspectos do gerenciamento de transaes (isto , a
recuperao e controle da concorrncia).
XIX

A Parte V (oito captulos) uma espcie de miscelnea. Em


geral, porm, ela mostra como os conceitos do modelo
relacional so relevantes para uma variedade de aspectos
complementares da tecnologia de bancos de dados segurana,
bancos de dados distribudos, dados temporais, apoio
deciso, e assim por diante.
Finalmente, a Parte VI (dois captulos) descreve o impacto
da tecnologia de objetos sobre os sistemas de bancos de
dados. Em particular, o Captulo 25 (o ltimo) considera a
possibilidade de uma aproximao entre as tecnologias
orientada a objeto e relacional, alm de examinar os sistemas
relacional/objeto.
Alm disso, h trs apndices um deles fornecendo mais
detalhes sobre a SQL, um sobre a SQL3 (uma nova verso de
SQL que provavelmente ser ratificada como padro na poca em
que este livro estiver impresso) e um que contm uma lista
com algumas abreviaturas e siglas importantes.
Nota: Tambm se encontra disponvel um Manual do Professor
on-line, que fornece orientao sobre a maneira de utilizar o
livro como uma base para se ministrar um curso sobre bancos
de dados. Ele consiste em uma srie de anotaes, dicas e
sugestes a respeito de cada parte, captulo e apndice, bem
como respostas para exerccios no resolvidos no prprio
livro e outros materiais de apoio. Para obter instrues
sobre como conseguir acesso ao Manual, visite o Web site da
editora que publicou a verso original deste livro, em
http://hepg.awl.com/rep-locator.
COMO LER ESTE LIVRO
De modo geral, o livro deve ser lido mais ou menos na mesma
seqncia em que foi escrito mas, se preferir, voc poder
saltar os ltimos captulos e as ltimas sees dentro dos
captulos. Um plano sugerido para uma primeira leitura seria:

Ler os Captulos 1 e 2 superficialmente.


Ler os Captulos 3 e 4 com todo o cuidado.
Ler os Captulos 5, 6, 8 e 9, mas ignorar o Captulo 7,
exceto talvez pela Seo 7.7.
Ler o Captulo 10 superficialmente.
Ler os Captulos 11 e 13 com cuidado e saltar o Captulo
12.
Ler os Captulos 14 e 15 cuidadosamente.
Ler os captulos subseqentes de maneira seletiva, de
acordo com seu gosto e interesse.
Cada captulo se inicia com uma introduo e termina com um
resumo. Alm disso, a maioria dos captulos inclui uma srie
de exerccios, normalmente com respostas (com freqncia, as
respostas fornecem informaes adicionais sobre o assunto do
exerccio). A maioria dos captulos inclui tambm uma extensa
lista de referncias, muitas delas com anotaes. Essa
estrutura permite que o assunto seja tratado em vrios
nveis, com os conceitos e resultados mais importantes sendo
apresentados em linha no corpo principal do texto, enquanto
diversas questes subsidirias e aspectos mais complexos so
adiados para a seo Exerccios, Respostas ou Referncias,
conforme apropriado. Nota: as referncias so identificadas
no texto por nmeros em duas partes entre colchetes. Por
exemplo, a referncia [3. 1] diz respeito ao primeiro item
da lista de referncias encontrada no final do Captulo 3:
especificamente, um artigo de E. F. Codd publicado em CACM,
Vol. 25, N2 2, em fevereiro de 1982. (Para ver uma explicao
das abreviaturas usadas nas referncias por exemplo, CACM
consulte o Apndice C.)
xx

COMPARAO COM EDIES ANTERIORES


As principais diferenas entre esta edio e sua predecessora
esto resumidas a seguir:
Parte 1: os Captulos de 1 a 3 cobrem de modo geral os
mesmos assuntos dos Captulos de 1 a 3 da edio anterior,
mas eles foram reescritos, e o tratamento de diversos tpicos
foi melhorado e ampliado. O Captulo 4, novo (embora se
baseie parcialmente no antigo Captulo 8), oferece uma
introduo SQL, focalizando aspectos que no pertencem
logicamente a nenhuma outra parte do livro (em particular,
exemplos de linguagem hospedeira e SQL embutida).
Parte II: os Captulos de 5 a 9 (sobre o modelo relacional)
representam uma verso completamente reescrita, bastante
expandida e muito melhorada dos Captulos de 4 a 7 e 17 de
edio anterior. Em particular, as sees sobre tipos
(domnios), valores de relaes versus variveis de relaes,
integridade, predicados e vises foram todas drasticamente
revisadas.
Nota: nesse ponto, so necessrias algumas palavras de
explicao. Edies anteriores deste livro usaram a SQL para
ilustrar idias relacionais, na crena de que seria mais
fcil para o estudante mostrar-se o concreto antes do
abstrato. Entretanto, infelizmente, o abismo entre a SQL e o
modelo relacional cresceu tanto que agora considero que seria
um equvoco usar a SQL para tal finalidade. De fato, a SQL em
sua forma atual est to longe de ser uma incorporao
verdadeira de princpios relacionais ela sofre de muitos
pecados de omisso e comisso que teria sido prefervel
releg-la a um apndice; porm, a linguagem to importante
do ponto de vista comercial (e todo profissional de bancos de
dados precisa ter uma certa familiaridade com ela) que
simplesmente no seria adequado trat-la de forma to
desleixada. Por essa razo, preferi ficar em um meio-termo
um captulo sobre fundamentos de SQL na Parte 1 do livro e
sees individuais em outros captulos (onde aplicveis)
descrevendo os aspectos de SQL especficos para o assunto do
captulo em questo.
Parte III: os Captulos de 10 a 13 so uma reviso
significativa dos antigos Captulos de 9 a 12, com novo
material sobre atributos valorados de relaes,
desnormalizao, projeto ortogonal e abordagens alternativas
para modelagem semntica (inclusive regras de negcio).
Nota: novamente, necessria uma explicao. Alguns
revisores de edies anteriores reclamaram que as questes de
projeto de bancos de dados estavam sendo tratadas muito
tarde. Porm, tenho a impresso de que os alunos no esto
preparados para projetar bancos de dados de forma apropriada
ou para apreciar totalmente as questes relacionadas com o
projeto at terem uma certa compreenso do que so os bancos
de dados e de como eles so empregados; em outras palavras,
acredito que importante dedicar algum tempo ao modelo
relacional e s questes que ele envolve antes de expor o
aluno a questes de projeto. Desse modo, ainda creio que a
Parte III est no lugar correto do livro.
Parte IV: os dois captulos dessa parte so verses
ligeiramente revisadas e expandidas dos Captulos 13 e 14 da
edio anterior.
Parte V: os Captulos 19 (sobre herana de tipo), 21 (sobre
apoio deciso) e 22 (sobre bancos de dados temporais) so
totalmente novos. Os Captulos 16 (sobre segurana), 17
(sobre otimizao), 18 (sobre perda de informaes) e 20
(sobre bancos de dados distribudos) so verses expandidas e
bastante revisadas dos antigos Captulos 15, 18, 20 e 21,
respectivamente. O Captulo 23 (sobre bancos de dados
baseados na lgica ou dedutivos) uma verso revisada do
antigo Apndice C.
Parte VI: o Captulo 24 uma verso completamente
reescrita e muito melhorada dos antigos Captulos de 22 a 24.
O Captulo 25 quase todo novo.
Por fim, o Apndice A se baseia em uma parte do antigo
Captulo 8, o Apndice B novo, e o Apndice C uma verso
atualizada do antigo Apndice D.
xx

Alm das mudanas descritas anteriormente, os tpicos a


seguir foram retirados desta edio:
Estruturas de armazenamento e mtodos de acesso (antigo
Apndice A).
Estudo detalhado de DB2 (antigo Apndice B).
O QUE TORNA ESTE LIVRO DIFERENTE?
Cada livro sobre bancos de dados existente no mercado tem
seus prprios pontos fortes e suas deficincias, e todo
escritor possui seu prprio estilo. Um autor se concentra nos
temas relacionados ao gerenciamento de transaes, outro
esgota o tema da modelagem de entidades/relacionamentos,
outro ainda observa tudo atravs das lentes da SQL, um outro
escritor adota apenas um ponto de vista de objetos, outro
v a rea de bancos de dados exclusivamente em termos de
produtos comerciais, e assim por diante. claro que no sou
exceo a essa regra tambm tenho minhas preferncias
pessoais: aquilo que poderia ser chamado de alicerce.
Acredito que devemos ter a base correta e compreend-la de
forma apropriada antes de tentarmos construir algo sobre essa
base. De minha parte, essa convico explica a nfase pesada
deste livro no modelo relacional; em particular, explica a
extenso da Parte II a parte mais importante do livro em
que apresento minha prpria maneira de entender o modelo
relacional da forma mais cuidadosa possvel. Estou
interessado em fundaes, no em modismos passageiros.
Nesse contexto, devo dizer que estou bastante ciente de que o
tom geral deste livro mudou ao longo dos anos. As primeiras
edies tinham uma natureza mais descritiva. Elas mostravam a
rea como ela era na prtica, sem retoques. Em contraste,
esta edio muito mais prescritiva; ela trata do modo como
a rea devia ser e sobre a maneira como ela dever se
desenvolver no futuro, se fizermos as coisas certas (em
outras palavras, este um livro-texto com uma postura!).
Alm disso, a primeira parte do fazer as coisas certas
educar a si mesmo de modo seguro sobre quais so realmente
essas coisas certas. Espero que esta edio possa ajudar
nesse empreendimento educacional.
Existe ainda outro ponto (relacionado): alguns dos leitores
devem saber que, junto com meu colega Hugh Darwen, publiquei
recentemente outro livro prescritivo a respeito da
tecnologia de bancos de dados, cujo ttulo (abreviado) The
ThirdManifesto [3.3j. Esse livro foi elaborado sobre os
fundamentos do modelo relacional com o objetivo de oferecer
uma proposta tcnica detalhada para o futuro dos sistemas de
bancos de dados (ele o resultado de muitos anos de ensino e
meditao sobre tais assuntos por parte de Hugh e de mim
mesmo). Assim, no surpreendente que as idias do Manifesto
alimentem todo este volume. Isso no quer dizer que o
Manifesto seja um pr-requisito para este livro no o
caso; porm, ele diretamente relevante para grande parte
daquilo que veremos neste livro e contm informaes
adicionais pertinentes que voc poder encontrar com
freqncia.
UM COMENTRIO FINAL
Gostaria de encerrar este prefcio com o seguinte texto
extrado de outro prefcio, o de Bertrand Russeli para The
Bertrand Russeli Dictionary of Mi, Matter and Morais (ed.
Lester E. Denonn), Citadel Press, 1993, reproduzido aqui com
permisso:
Tenho sido acusado do hbito de mudar minhas opinies... Eu
prprio no tenho nenhuma vergonha [desse hbito]. Que fsico
que estivesse em atividade no ano de 1900 sonharia em se
vangloriar de que suas opinies no mudaram durante o ltimo
meio sculo?... A espcie de filosofia a que dou valor e
tenho tentado perseguir cientfica, no sentido de haver
algum conhecimento definido a ser obtido e de que novas
descobertas podem tornar inevitvel a qualquer mente sincera
o reconhecimento de erros anteriores. Pelo que tenha dito,
seja cedo, seja tarde, no afirmo a espcie de verdade que os
telogos afirmam para seus credos. Afirmo apenas, na melhor
das hipteses, que a opinio expressa era sensata em seu
tempo... Ficaria muito surpreso se a pesquisa subseqente no
mostrasse que precisava ser modificada. [Tais opinies] no
pretendiam ser pronunciamentos pontificais, apenas eram o
melhor que eu podia dizer na ocasio para a promoo do
pensamento claro e preciso. Clareza, acima de tudo, tem sido
meu alvo.
XXII

Au comparar edies anteriores deste livro com esta edio,


voc descobrir que tambm mudei de opinio sobre muitas
questes (e sem dvida continuarei a faz-lo). Espero que
aceitem as observaes citadas anteriormente como
justificativa razovel para esse estado de coisas.
Compartilho da percepo de Bertrand Russell do que seja o
campo da pesquisa cientfica, mas ele exprime essa percepo
de modo muito mais eloqente do que eu poderia fazer.
AGRADECIMENTOS
Mais uma vez, um prazer reconhecer minha dvida para com as
muitas pessoas envolvidas, direta ou indiretamente, na
produo deste livro. Primeiro, devo agradecer a meus amigos
David McGoveran e Hugh Darwen por sua importante participao
nesta edio. David colaborou com o primeiro esboo do
Captulo 21 sobre apoio deciso, e Hugh contribuiu com o
rascunho inicial do Captulo 22, sobre bancos de dados
temporais. Hugh tambm empreendeu um trabalho de reviso
muito cuidadoso sobre grandes partes do original, incluindo
em particular todos os captulos sobre o modelo relacional e
o apndice sobre SQL3. Em segundo lugar, o texto se
beneficiou dos comentrios dos alunos dos seminrios que
venho ministrando nos ltimos anos. Ele tambm se beneficiou
enormemente dos comentrios e da discusso com numerosos
amigos e revisores, incluindo Charley Bontempo, Declan Brady,
Hugh Darwen (novamente), Tim Hartley, Adrian Larner, Chung
Lee, David Livingstone, Nikos Lorentzos, Huizha Lu, Ramon
Mata-Toledo, Nelson Mattos, David McGoveran (novamente),
Fabian Pascal, Sudha Ram, Rick van der Lans, Yongdong Wang,
Colin White e Qiang Zhu. Cada uma dessas pessoas revisou pelo
menos uma parte do original desta edio ou ps disposio
algum material tcnico, ou me ajudou de algum modo a
encontrar respostas para minhas muitas dvidas tcnicas. Sou
muito grato a todos. Em particular, gostaria tambm de
agradecer a minha esposa Lindy por colaborar mais uma vez no
trabalho de arte da capa. Por fim, sou grato (como sempre) a
todo o pessoal da Addison-Wesley especialmente a Maite
Suarez-Rivas e Katherine Harutunian por todo o incentivo e
apoio durante este projeto, e ainda minha editora Elydia
Davis por seu trabalho sempre perfeito.
C. J. Date
Healdsburg, Califrnia
1999
AAIII