You are on page 1of 0

Captulo 1 Introduo

A introduo dos computadores nas empresas, embora seja um evento dos mais recentes
na histria da Humanidade, produziu uma das maiores e mais rpidas transformaes j
vistas em nossa sociedade. A escala dos negcios, as relaes de trabalho e de produo,
a cultura e os meios de comunicao so apenas alguns dos aspectos de nossa vida que
foram drasticamente modificados por esse processo. O nosso estilo de vida hoje todo
ele fundado, em maior ou menor grau, no suporte tecnolgico oferecido pela informtica,
no que isso tem de bom e, por que no, tambm de ruim. Os sistemas de bancos de dados
representam um componente importante dentro desse panorama, pois fazem parte da
infra-estrutura sobre a qual est fundada uma grande parte das aplicaes de informtica
utilizadas pelas empresas e organismos de todos os setores da economia. uma rea
multidisciplinar que abrange um largo espectro do conhecimento, indo da cincia da
computao administrao e filosofia, podendo por isso ser abordada por uma grande
variedade de enfoques. O objetivo deste livro oferecer uma viso da rea de bancos de
dados a partir de uma perspectiva de sua aplicao nos sistemas de informao,
procurando articular os principais aspectos de interesse para o leitor que no precisar
projetar um sistema gerenciador de bancos de dados mas sim construir aplicativos, em
geral para resolver problemas comerciais, que faam um bom uso desses recursos e dos
conceitos a eles subjacentes. Este primeiro captulo procura contextualizar o emprego dos
sistemas gerenciadores de bancos de dados nas aplicaes comerciais e apresentar alguns
conceitos bsicos, que podero ser retomados nos captulos subseqentes. Nosso ponto de
partida ser uma breve discusso sobre como a maneira de se construir os sistemas
informatizados foi evoluindo ao longo do tempo.
1.1 Evoluo das abordagens no desenvolvimento de sistemas
Os computadores tm sido efetivamente utilizados nas tarefas de processamento de dados
das empresas basicamente a partir do incio da dcada de 60 do sculo passado. Com a
progressiva diminuio dos custos e sofisticao dos produtos de hardware e software
verificada desde ento e o processo de difuso de uma cultura de informtica conduzido
tanto por parte dos fornecedores desses produtos como pelas escolas e universidades e,
num segundo momento, tambm pelos meios de comunicao de massa, a presena e
importncia dessas mquinas nas organizaes tornou-se cada vez maior. Tambm o
dramtico aumento de escala do volume de negcios desenvolvidos pelas empresas e
organismos de todos os setores da economia funcionou como um intensificador desse
processo, embora nem sempre seja claro se esse crescimento dos negcios em geral
motivou uma maior utilizao dos recursos da informtica ou foi motivado por ela ou,
ainda, ambos.
Hoje temos um imenso volume de informaes sendo processado a cada momento em um
sem nmero de transaes, executadas por equipamentos dos mais variados portes e
caractersticas, em empresas e instituies de todas as partes do mundo, de praticamente
todos os tamanhos e setores de atividade. Nesse contexto, os bancos de dados e os
software que cuidam de sua manipulao e gerenciamento desempenham um papel muito
importante, o que faz com que sua tecnologia esteja sempre em constante evoluo. A


introduo no ambiente corporativo dos programas de computador responsveis por esse
tipo de processamento ocorreu inicialmente nas grandes empresas e organismos pblicos
dos pases desenvolvidos, disseminando-se ento pelo resto do setor produtivo e do
mundo, podendo ser analisada, para fins didticos, numa perspectiva histrica e tcnica
que considera a existncia de trs momentos ou abordagens principais: a abordagem
inicial, a de sistemas integrados e a de sistemas gerenciadores de bancos de dados. Na
caracterizao de cada uma dessas fases esto embutidos aspectos cronolgicos (ou seja,
quem veio antes de quem) e tambm conceituais, que revelam toda uma evoluo
filosfica, at mais do que tcnica, da Cincia e/ou Arte do desenvolvimento de sistemas
informatizados. Merece ateno esse aspecto conceitual de cada abordagem, uma vez que
ele desvenda prticas e vises distintas de "como se fazer a coisa" e que, em certos
aspectos, independem do ambiente de hardware e de software disponvel numa
instalao.
1.1.1 A abordagem inicial
A abordagem inicial (ou tradicional ou convencional, conforme alguns autores) resulta,
como o prprio nome pode sugerir, dos primeiros esforos na especificao e
implantao de sistemas computacionais para o processamento de dados comerciais.
Apesar de ser a mais antiga e apresentar uma srie de inconvenientes, ainda hoje
adotada por alguns profissionais e empresas, principalmente para projetos isolados e de
pequeno porte.
Ao se comentar suas caractersticas bsicas devemos ter sempre em mente o contexto
histrico em que essa abordagem surgiu, nos primeiros anos da introduo dos
computadores nas empresas. Nessa poca, em primeiro lugar, no existia experincia
alguma em termos de anlise de sistemas baseados em computador, o que tornava a tarefa
da especificao de sistemas muito dependente da intuio e do senso prtico do analista,
j que no haviam regras ou conceitos suficientemente testados para serem utilizados. Em
segundo lugar, os custos para a introduo do departamento de processamento de dados
numa empresa eram muito altos, o que gerava uma presso sobre a equipe de
desenvolvimento no sentido de que o retorno do investimento ocorresse rapidamente.
Completando esse quadro inicial, todo o marketing dos computadores era feito em cima
da sua enorme velocidade de processamento. Assim, a situao com que os primeiros
analistas de sistemas se defrontaram levou a que objetivassem desenvolver o maior
nmero possvel de sistemas, priorizando-se aqueles que tivessem a maior repercusso
dentro da empresa, j que o lema era "Mostrar servio". Os resultados no tardaram: os
sistemas eram projetados independentemente uns dos outros, proporcionando solues
setorizadas para os problemas da organizao; as primeiras reas a serem informatizadas
eram aquelas que apresentavam tarefas repetitivas e demoradas; as aplicaes, em geral,
apenas automatizavam o que era feito manualmente, sem questionar os procedimentos em
busca de maiores otimizaes organizacionais.


Pessoal
Vendedores
Cargos Vendas
Pedidos
Mat. prima
Fornecedores
Materiais
Clientes
Produtos
Funcionarios Pedidos
Produtos
FOLHA
PAGTO
VENDAS
PCP
Horas trab, Pagamentos

Figura 1.1: Sistemas informatizados desenvolvidos segundo a abordagem inicial.
Assim, podemos resumir as principais caractersticas dessa abordagem inicial:
a) Cada aplicao tem seus prprios arquivos: como o projeto do sistema baseia-se
numa viso isolada do problema, ele no prev forma alguma de integrao com
outras aplicaes j existentes ou a serem desenvolvidas. Devido nfase nos
processos, os programas tornam-se mais importantes que os dados, e temos cada
aplicao administrando seus prprios arquivos. O resultado , em primeiro lugar,
o surgimento de redundncias, com vrios arquivos duplicados dentro da empresa
mas sendo de "donos" diferentes. Isso acaba gerando inconsistncias, pois
freqentemente ocorre que uma informao atualizada num arquivo mas no em
outro. Os mtodos de armazenamento e as linguagens de programao
tradicionais foram as aplicaes a conhecerem muito tanto da estrutura fsica
como da localizao dos arquivos a serem manipulados. Isso acaba levando a uma
excessiva dependncia dos programas em relao aos arquivos. Com isso,
qualquer modificao na estrutura ou mesmo na localizao de um arquivo de
dados implica em alteraes s vezes substanciais no cdigo fonte da aplicao.
b) Sistemas pouco flexveis: a introduo de alteraes nas aplicaes
problemtica devido a vrios fatores: a estreita ligao entre programas e
arquivos; a falta de metodologias para o desenvolvimento de sistemas, que torna
certos analistas "donos" das aplicaes que geram; a existncia de projetos
totalmente despreocupados com a alterabilidade, etc. Sempre que a manuteno
difcil, tambm demorada e cara e muitas vezes um sistema produzido com
essas caractersticas precisa ser abandonado pois torna-se invivel administrar a
sua manuteno.


c) Ausncia de dispositivos de segurana para os dados: uma vez que toda aplicao
deve ser construda a partir da estaca zero, os procedimentos de segurana
necessrios ao sistema tambm ficam inteiramente a cargo do analista /
programador, o que demanda recursos de tempo e mquina. Muitas vezes tais
dispositivos so deixados para o final do projeto e, devido s presses dos prazos
e aos imprevistos, nunca so implementados adequadamente.
1.1.2 Abordagem de sistemas integrados
Esta filosofia surgiu como conseqncia e em resposta a alguns dos inmeros problemas
decorrentes da abordagem inicial. A principal diferena reside na definio de bases de
dados sob uma ptica mais ampla, permitindo que um mesmo arquivo seja utilizado por
mais de um sistema, o que a faz caracterizar-se pela implantao de sistemas corporativos
nas empresas, onde h uma grande preocupao com a integrao das informaes das
principais reas operacionais. Ocorrem tambm esforos no sentido da padronizao de
algumas tarefas inerentes ao desenvolvimento de sistemas, embora muitos conceitos
relacionados especificao de sistemas apoiem-se ainda em bases empricas.
Constitui um avano em relao abordagem anterior, pois leva uma maior
coordenao entre os sistemas e diminuio das redundncias na base de dados, mas
ainda apresenta alguns problemas srios, pois os programas continuam fortemente
acoplados aos arquivos, agora com o agravante de que qualquer alterao na estrutura
fsica da base de dados envolve a correo de programas de vrios sistemas. Alm disso a
nfase continua sendo dada aos processos (programas) e no aos dados e com isso as
aplicaes tornam-se menos estveis, exigindo maiores esforos da equipe de
desenvolvimento para sua adaptao s mudanas nas regras de negcios da organizao.
Isso ocorre porque num mundo competitivo como o dos negcios, as prticas comerciais
so modificadas com uma freqncia muito grande, e possuem um reflexo maior sobre os
programas que as implementam do que sobre os dados por elas requeridos.
Cargos
Vendas Mat. prima
Fornecedores Materiais Clientes Funcionarios Pedidos
Produtos
FOLHA
PAGTO
VENDAS PCP
Horas trab, Pagamentos

Figura 1.2: Os sistemas informatizados segundo a abordagem integrada.
1.1.3 Abordagem de sistemas gerenciadores de bancos de dados
As duas abordagens anteriores, apesar de apresentarem diferenas at certo ponto
significativas, tm em comum uma caracterstica determinante: ao se desenvolver uma
aplicao comercial informatizada, a nfase dada aos processos, e isso gera dificuldades
de manuteno, em parte como conseqncia do forte acoplamento dos programas aos


arquivos de dados. Alm disso, importante reconhecer que existe uma grande carga de
processamento que requerida pelos dados em si, independentemente dos propsitos
gerais do sistema como, por exemplo, autenticao de acesso e controle de concorrncia
sobre os arquivos, manuteno de consistncias bsicas dos dados, funcionalidades para
recuperao de falhas e cpias de segurana, processamento de consultas, etc. Nos
sistemas desenvolvidos segundo as duas primeiras abordagens, esse conjunto de
funcionalidades encontra-se codificado em cada programa, constituindo uma espcie de
redundncia de processos: as mesmas rotinas, que no so especficas de nenhum
aplicativo em particular, acabam sendo mantidas, repetidas, em todos os sistemas,
criando suas prprias dificuldades de manuteno e desempenho em execuo. A
necessidade da construo de sistemas cada vez mais complexos, flexveis e confiveis,
integrando com robustez os dados de toda a organizao (e no apenas de alguns
departamentos) fez surgir a abordagem de Sistemas Gerenciadores de Bancos de Dados
(SGBD), considerada a mais adequada atualmente, que faz uma separao ainda mais
drstica entre a base de dados e as aplicaes finais por meio da introduo de um
software especfico, o SGBD, cujo papel concentrar as funcionalidades bsicas de
acesso e gerenciamento dos dados. Com isso alivia-se a carga de trabalho dos programas
destinados ao usurio final, centraliza-se a administrao da base de dados e elimina-se
redundncias de processos.
Cargos
Vendas Mat. prima
Fornecedores Materiais Clientes Funcionarios Pedidos
Produtos
FOLHA
PAGTO
VENDAS PCP
Horas trab, Pagamentos
SGBD

Figura 1.3: Os sistemas informatizados na abordagem baseada em SGBDs.
Existem duas preocupaes principais ao se trabalhar nesse novo enfoque. A primeira,
num nvel mais conceitual, consiste na definio de um modelo de dados em termos da
empresa como um todo, contemplando os diversos setores da organizao numa viso de
mdio e longo prazos. Nesse modelo deve estar retratada toda a inter-relao entre as
diversas reas componentes do negcio e todas as suas necessidades de informao. S
com base nisso pode-se garantir que as aplicaes a serem desenvolvidas individualmente
tero o comportamento desejado em termos de integrao com outros sistemas e os dados
sero sempre confiveis. A segunda preocupao diz respeito forma de implementao


fsica dos dados em termos dos programas que os iro manipular. necessrio que os
programas tenham uma viso de alto nvel dos dados, o mais independente possvel dos
fatores fsicos ligados forma de armazenamento dos dados (como tipo e tamanho de
cada dado, localizao fsica dos arquivos, etc). Assim, nos sistemas gerenciadores de
bancos de dados, existe uma separao interna entre o local onde se armazena a definio
fsica (e mesmo lgica) dos dados e aquele onde eles so realmente utilizados, inclusive
originando os conceitos de Linguagem de Definio dos Dados (LDD), utilizada para
construir, destruir e modificar a estrutura dos objetos do banco de dados; Linguagem de
Manipulao dos Dados (LMD, tambm chamada de linguagem de consulta), voltada
para a atualizao e leitura dos dados contidos nos objetos e Linguagem de Controle de
Dados (LCD), para o gerenciamento dos direitos de acesso lgico aos dados. Para que
esse tipo de isolamento possa ocorrer o SGBD deve utilizar um repositrio onde so
armazenadas todas essas definies, tambm chamadas de metadados, de forma que
fiquem externas ao cdigo da aplicao. Esse repositrio apresenta-se na forma de um
catlogo ou dicionrio de dados cuja aparncia e transparncia para o analista /
programador / usurio bastante varivel de SGBD para SGBD. Esses software tambm
chamam para si a responsabilidade pela implementao de controles de transao, de
segurana de acesso e de concorrncia, que so complexos e de difcil manuteno e
representam aquele tipo de redundncia lgica observada nas abordagens mais antigas.
Ao trabalhar sob a abordagem de banco de dados ento necessrio que o pessoal ligado
ao desenvolvimento comprometa-se com certos princpios e requisitos, em troca de
alguns importantes benefcios. A seguir esto resumidas as principais exigncias e
vantagens determinadas pela utilizao do enfoque de banco de dados.
Vantagens:
a) desenvolvimento mais flexvel e produtivo ;
b) integrao dos dados em nvel corporativo ;
c) transparncia dos dados quanto s aplicaes ;
d) maior controle sobre a integridade dos dados ;
e) maiores recursos para garantir a segurana dos dados.
Requisitos:
a) aquisio e utilizao de um SGBD ;
b) centralizao da definio de dados ;
c) centralizao do projeto das bases de dados ;
d) capacitao da equipe de desenvolvimento numa plataforma mais complexa.



1.2 Bancos de Dados e Sistemas Gerenciadores de Bancos de
Dados
Chamamos de Banco de Dados ou de Base de Dados a um conjunto de dados
relacionados entre si, que podem estar, em princpio, em qualquer formato ou meio fsico.
No atual contexto tecnolgico entretanto, e nesta obra em particular, esses termos estaro
associados com dados representados em formato digital e armazenados em algum
dispositivo eletrnico.
D-se o nome de Sistema Gerenciador de Banco de Dados ao conjunto de programas
responsvel pela definio e operacionalizao de uma base de dados, proporcionando
um ambiente para o acesso da comunidade de usurios s informaes armazenadas nos
seus diversos arquivos.
Tabela 1
Tabela 4
Tabela N Tabela 3 Tabela 5
...
AAAA BBBB CCCC
Tabela 2
SGBD
Banco de Dados
Aplicaes finais

Figura 1.4: Contexto de utilizao de um SGBD.
1.2.1 Arquitetura em 3 nveis
Um banco de dados pode ser caracterizado inicialmente por dois aspectos principais:
a) sua instncia, que o conjunto de informaes contidas no banco de dados em um
determinado momento. A instncia reflete o estado do banco de dados em um
instante especfico do tempo, e extremamente dinmica, pois modificada a
cada operao de incluso, excluso ou alterao de dados por parte dos usurios
finais.


b) seu esquema, ou seja, a sua estrutura ou lay-out bsico, que determina quais os
dados que podem ser nele armazenados, seu formato e detalhes de
implementao. O esquema descrito em termos de metadados, e pode expressar
a estrutura do banco de dados em diferentes nveis de detalhe. O esquema permite
saber quais as tabelas ou objetos existentes em um banco de dados e tambm
quais os tipos de informao capazes de serem guardados nesses objetos.
Conforme a necessidade dos diferentes tipos de usurio do banco de dados, interessante
expressar sua estrutura geral (seu esquema) em diferentes nveis de abstrao. O grupo de
estudos em sistemas de bancos de dados do comit ANSI/SPARC props, em 1978, uma
arquitetura que prev 3 nveis de abstrao para um banco de dados. Cada nvel
corresponde a um esquema e por esse motivo essa proposta recebeu o nome de
Arquitetura de 3 Esquemas, ilustrada na figura 1.5.












Figura 1.5: A arquitetura ANSI/SPARC.
O esquema interno representa os detalhes fsicos especficos sobre como os dados esto
realmente gravados nos dispositivos de armazenamento utilizados pelo sistema. Indica os
arquivos empregados, a estrutura de bytes utilizada (formato de cada registro e campo) e
os meios auxiliares de acesso (ndices, hashing, etc).
O nvel externo procura mostrar a percepo que cada aplicao ou grupo de usurios
possui do banco de dados. Essa percepo nada mais do que uma viso particular (e
geralmente parcial) do contedo do banco de dados, na qual os detalhes sobre a forma
real de armazenamento so irrelevantes. Como co-existem diversos aplicativos fazendo
uso do banco de dados, e para cada aplicativo podem existir diferentes classes de
usurios, cada uma com necessidades de informao especficas, o nvel externo
Nvel Externo
(ou de Viso)
Nvel Conceitual
Nvel Interno
(ou Fsico)
Armazenamento
Esquema Interno
Viso N
Esquema Conceitual
Viso 2 Viso 1 ...


composto por diversos esquemas de alto nvel, um para cada aplicativo ou classe de
usurio identificada.
O esquema conceitual, algumas vezes chamado de esquema lgico comunitrio, procura
representar, em um nvel intermedirio de abstrao, a estrutura geral do banco de dados,
fazendo o mapeamento entre as diversas vises de usurio com o esquema fsico
subjacente.
1.2.2 Princpios para um SGBD
Ao utilizar-se um SGBD esto implcitos certos objetivos fundamentais, como a
integrao das atividades gerenciais e operacionais da empresa, a obteno de maior
segurana em termos do armazenamento dos dados, a facilitao da tarefa de
desenvolvimento de sistemas, a melhor adequao da base de dados realidade do dia-a-
dia, a melhoria das condies de administrao do conjunto de dados, etc. Para que tudo
isso seja possvel necessrio que o SGBD obedea a alguns princpios bsicos que so
resumimos a seguir:
a) Independncia de dados: o principal objetivo de um SGBD e consiste na
capacidade de tornar as caractersticas do esquema de um nvel do banco de dados
transparentes para o esquema de nvel imediatamente superior. Com isso,
modificaes no arranjo fsico dos dados (como sua localizao, estrutura,
tamanho, etc) devem ser to transparentes quanto possvel para o nvel conceitual,
indicando com isso, o grau de independncia de dados fsica daquele banco de
dados. O esquema conceitual, por sua vez, deve garantir independncia de dados
lgica, por permitir que modificaes em suas caractersticas tenham mnimo
impacto sobre as correspondentes vises de usurio, viabilizando assim que os
programas aplicativos venham dispor apenas de uma viso de alto nvel da base
de dados, que no influenciada (ou pouco influenciada) por eventuais
modificaes na forma de armazenamento dos dados.
b) Compartilhamento de dados: deve ser possvel que, num determinado momento,
mais de um usurio possa acessar os dados armazenados pelo SGBD.
c) Garantia de integridade de dados: apesar de permitir que os dados sejam
compartilhados, o SGBD deve oferecer servios que evitem que atualizaes
concorrentes tornem a base de dados inconsistente.
d) Garantia de segurana de dados: o SGBD deve oferecer meios que resguardem a
base de dados nos casos de falha de programa, equipamento ou sinistros. Tambm
deve ser possvel que alteraes indevidas feitas pelos usurios durante a
operao dos aplicativos sejam desfeitas sem prejuzo da coerncia dos dados.
Considera-se igualmente como um item de segurana a ser proporcionado pelo
software gerenciador o controle dos nveis de acesso dos usurios aos dados do
sistema.
e) Relacionamento entre os dados: a implementao dos diversos relacionamentos
previstos na base de dados deve ser controlada automaticamente pelo SGBD,
externamente aplicao.


f) Controle da redundncia de dados: devem ser proporcionados meios para que seja
possvel o controle da repetio de dados pelos diversos arquivos administrados
pelo SGBD. Isso conseguido por meio da centralizao da definio dos dados
num Dicionrio de Dados ou Catlogo, que serve como base para a operao do
SGBD.
Evidentemente, tais princpios existem interligados entre si, sendo que o descuido com
relao a um deles geralmente apresenta reflexos sobre todos (ou quase todos) os demais.
1.2.3 Modelos de SGBDs
Os produtos SGBDs podem ser classificados em 5 categorias principais: os de estrutura
hierrquica; os de estrutura de rede; os relacionais; os orientados a objeto e os objeto-
relacionais. Cada um desses modelos corresponde a um estgio na evoluo do hardware
disponvel para as aplicaes comerciais e no estado da arte na rea da teoria de Banco de
Dados e da Engenharia de Software e diferem entre si por 5 aspectos principais: a ordem
cronolgica em que surgiram; os tipos de elos (ligaes) utilizados para implementar
internamente os relacionamentos entre os dados; as modalidades de relacionamento
suportados; a variedade de contedo que pode ser colocado dentro do banco de dados e,
finalmente, o tipo de linguagem utilizada para implementar as aplicaes que interagem
com a base de dados. Os modelos hierrquicos e de rede j so considerados
ultrapassados; e a abordagem orientada a objetos ainda uma tecnologia em maturao,
embora promissora e em rpida evoluo. Os SGBDs mais utilizados hoje em dia foram
concebidos com base em um modelo matemtico derivado da Teoria dos Conjuntos e que
teve um grande desenvolvimento a partir da dcada de 70. Esse modelo chamado
Modelo Relacional e os SGBD que operam aplicando tais conceitos so chamados de
Sistemas Gerenciadores de Bancos de Dados Relacionais (SGBDR). So exemplos de
SGBDR os seguintes produtos, entre outros: MS-Access, MS-SQL Server, Oracle,
Sybase, Informix, CA-Ingres, IBM-DB2, Borland-Interbase, MySQL, etc. Os SGBDs
objeto-relacionais, por sua vez, implementam conceitos orientados a objeto sobre
mecanismos relacionais, e ganharam alguma importncia nos ltimos anos.
1.2.4 Classes de usurios dos SGBDs
Existem 3 tipos bsicos de usurios dos sistemas gerenciadores de bancos de dados: os
administradores de bancos de dados, os desenvolvedores de aplicativos e os usurios
finais. Cada um possui seu prprio perfil de utilizao e necessidades que devem ser
atendidas pelo sistema.
a) Administradores de banco de dados: tambm chamados de DBA, que a sigla
para a denominao em ingls database administrator, so os responsveis por
criar e tornar operacional o banco de dados, ficando a seu encargo uma srie de
tarefas essenciais para o bom funcionamento do sistema e boa parte do suporte
tcnico requerido pelos outros tipos de usurio. Possui um perfil bastante tcnico,
pois precisa conhecer a fundo os conceitos de bancos de dados e a forma como
so implementados no particular produto SGBD por ele utilizado. Um maior
detalhamento das atribuies de um administrador de banco de dados
encontrado no captulo 999.


b) Desenvolvedores de aplicaes: so os analistas, programadores e engenheiros de
software responsveis pela especificao da estrutura do banco de dados e pelo
projeto e construo dos programas de computador que automatizaro o acesso
aos dados. Possuem tambm um perfil bastante tcnico e devem dominar os
recursos da linguagem de manipulao de dados, principalmente, mas no
precisam conhecer to a fundo os detalhes internos do SGBD, embora isso possa
ser desejvel na criao e manuteno de alguns tipos de sistemas.
c) Usurios finais: so as pessoas para as quais os aplicativos so construdos e a
razo de ser de toda essa tecnologia. Existem algumas variedades importantes de
usurios finais: o usurio comum, regular, que trabalha em seu dia a dia com um
software criado pelos desenvolvedores e que em sua operao faz acessos
programados ao SGBD, embora nem sempre ele tenha conscincia disso; o
usurio final que precisa fazer consultas aleatrias e interativas ao banco de
dados, atravs de ferramentas de consulta mais poderosas, tipicamente para
aplicaes de suporte deciso e os usurios mais sofisticados, que precisam
conhecer mais a fundo alguns recursos de banco de dados para poderem trabalhar
ou que utilizam aplicaes mais especficas, como sistemas especialistas ou
multimdia, por exemplo.
1.3 Um curso de bancos de dados
Para um profissional que desenvolve ou d suporte tcnico a sistemas de informao, ou
para um futuro candidato a esse tipo de funo, o estudo da matria Banco de Dados
pode ser encarado, aps a rpida explanao feita anteriormente neste captulo, como
procurar compreender as principais questes e possibilidades que gravitam em torno da
utilizao de um sistema gerenciador de bancos de dados em um ambiente de produo e
desenvolvimento. E so vrias as questes que merecem boas respostas para esse
profissional:
a) Como definir o que deve ser armazenado no banco de dados?
b) Como organizar esse contedo no interior do banco de dados?
c) De que forma o contedo de um banco de dados pode ser manipulado pelo
SGBD?
d) Quais so as tarefas executadas por um SGBD? Em linhas gerais, como elas so
executadas?
e) Internamente como est estruturado um SGBD, em termos de sua arquitetura?
f) De que forma uma aplicao final pode interagir com o SGBD?
g) O que faz um administrador de banco de dados?
h) Como um SGBD pode administrar a utilizao dos mesmos dados por mais de um
usurio ao mesmo tempo?


i) O que pode ser feito para minimizar os problemas decorrentes de falhas e
interrupes indesejadas na operao do sistema?
j) Quais so as novas aplicaes e tecnologias de bancos de dados que tm surgido
nos ltimos tempos?
k) Para onde vai a tecnologia de bancos de dados?
Todas essas questes sero tratadas neste livro, algumas com maior profundidade, outras
com maior abrangncia. Compreender como funcionam os bancos de dados e seus
sistemas gerenciadores e qual o papel que desempenham nos planos tecnolgico e de
negcios crucial para os atuais e futuros profissionais de informtica.