Escolar Documentos
Profissional Documentos
Cultura Documentos
1. Introduo
A importncia da informao para a tomada de decises nas organizaes tem impulsionado o
desenvolvimento dos sistemas de informaes, os quais muitas vezes so considerados uma forma de
mudana organizacional planejada.
Todos ns sabemos existirem gigantescas bases de dados gerenciando nossas vidas. De fato sabemos
que nossa conta bancria faz parte de uma coleo imensa de contas bancrias de nosso banco. Nosso
Ttulo Eleitoral ou nosso Cadastro de Pessoa Fsica, certamente esto armazenados em Bancos de Dados
colossais. Sabemos tambm que quando sacamos dinheiro no Caixa Eletrnico de nosso banco, nosso
saldo e as movimentaes existentes em nossa conta bancria j esto nossa disposio.
Nestas situaes sabemos que existe uma necessidade em se realizar o armazenamento de uma srie de
informaes que no se encontram efetivamente isoladas umas das outras, ou seja, existe uma ampla
gama de dados que se referem a relacionamentos existentes entre as informaes a serem
manipuladas.
Estes Bancos de Dados, alm de manterem todo este volume de dados organizado, tambm devem
permitir atualizaes, incluses e excluses do volume de dados, sem nunca perder a consistncia.
Um Banco de Dados antes de mais nada uma coleo logicamente coerente de dados com
determinada significao intrnseca. Em outras palavras um arquivo contendo uma srie de dados de um
cliente, um arquivo com dados aleatoriamente gerados e dois arquivos padro xls (excel) no podem ser
considerados um Banco de dados. Um Banco de Dados contm os dados dispostos numa ordem prdeterminada em funo de um projeto de sistema, sempre para um propsito muito bem definido.
Um Banco de Dados representar sempre aspectos do Mundo Real. Assim sendo uma Base de Dados (ou
Banco de Dados, ou ainda BD) uma fonte de onde poderemos extrair uma vasta gama de informaes
derivadas, que possui um nvel de interao com eventos como o Mundo Real que representa.
Existe uma tendncia de mercado em se dizer que qualquer problema ser resolvido, caso a empresa
adquira um Banco de Dados. Naturalmente, em um ambiente com acesso constante ao Banco de Dados
(acesso concorrente, obviamente), onde a segurana seja de vital importncia e que o desempenho da
aplicao escrita estiver comprometendo a empresa, considerando-se logicamente uma aplicao bem
escrita, sem dvida a aquisio de um Banco de Dados poder ser o primeiro passo na soluo do
problema.
conveniente, sob pena de se realizar um grande investimento e no se colher fruto algum, que a
empresa antes de adquirir um Banco de Dados, passe por um processo de entendimento dos processos
de negcio e dos dados envolvidos. A compreenso do modelo de negcio da empresa fundamental
para o sucesso de um Banco de dados. A busca pela compreenso do negcio passa pela identificao
das informaes que so relevantes para a gesto. A essncia da modelagem de dados reside em
transformar esse universo infinito de informaes em um universo finito e relacionado de dados. Um
modelo de dados uma tcnica utilizada para mapear o mundo real em um modelo grfico que ir
representar o relacionamento existente entre os dados.
O principal objetivo dessa disciplina apresentar essa tcnica que, a partir da compreenso do negcio
e das informaes que suportam o mesmo, permite identificar os dados necessrios e o relacionamento
entre eles.
No se faz modelo de dados sem se conhecer profundamente o negcio, suas definies e conceitos
mais fundamentais. E quem conhece o negcio so os gestores e no os profissionais de TI.
Paralelamente, no se modela corretamente um negcio sem a tcnica de modelagem de dados.
Pgina 2 de 8
2. Conceitos
2.1 Banco de Dados
uma coleo de dados inter-relacionados, representando informaes sobre um domnio
especfico.
Exemplos: lista telefnica, controle de acervo de uma biblioteca.
3. Caractersticas
3.1 Controle de Redundncia
No processamento tradicional de arquivos, cada grupo de usurios deve manter seu prprio
conjunto de arquivos e dados. Desta forma, acaba ocorrendo redundncias que prejudicam o
sistema com problemas como:
Toda vez que for necessrio atualizar um arquivo de um grupo, ento todos os grupos
devem ser atualizados para manter a integridade dos dados no ambiente como um
todo;
A redundncia desnecessria de dados levam ao armazenamento excessivo de
informaes, ocupando espao que poderia estar sendo utilizado com outras
informaes.
Pgina 3 de 8
3.4 Indexao
Chamaremos de Chave Primria ao Atributo que definir um registro, dentre uma coleo de
registros. Chave Secundria (Terciria, etc), sero chaves que possibilitaro pesquisas ou
ordenaes alternativas, ou seja, diferentes da ordem criada a partir da chave primria ou da
ordenao natural (fsica) da tabela.
Vamos supor o arquivo abaixo ordenado fisicamente pela chave primria (#). Para acessarmos o
registro da cor preto diretamente, sem precisar ler todos os registros anteriores, criam-se as
chaves secundrias (tercirias ...), conhecidas como ponteiros (*).
ARQUIVO
#1- Amarelo
#2- Branco
#3- Verde
#4- Preto
#5- Azul
#6- Vermelho
PONTEIROS
#1 *1
#2 *3
#3 *5
#4 *4
#5 *2
#6 *6
Supondo desejarmos incluir a cor Laranja, se o arquivo estive ordenado em ordem alfabtica,
seramos obrigado a re-escrever todo o arquivo. Ao incluir um novo registro (ex.Laranja) ele
ser gravado fisicamente como o ltimo registro na tabela e somente sero atualizados os
ponteiros:
ARQUIVO
PONTEIROS
#1- Amarelo
#1 *1
#2- Branco
#2 *3
#3- Verde
#3 *6 ATUALIZADO
#4- Preto
#4 *5 ATUALIZADO
#5- Azul
#5 *2
#6- Vermelho
#6 *7 ATUALIZADO
#7- Laranja
#7 *4 NOVO
Pgina 4 de 8
Em caso de falha, o estado do sistema de banco de dados pode no ser mais consistente, isto ,
ele pode no mais refletir o estado do mundo que se supe representado no banco de dados.
Para preservar a consistncia, exigimos que cada transao seja atmica. responsabilidade do
esquema de recuperao assegurar a propriedade de atomicidade.
3.5.1 Atomicidade
A restaurao do BD obedece a propriedade da atomicidade, na qual ou todas as
operaes da transao so refletidas corretamente no banco de dados ou nenhuma o
ser
Uma transao uma unidade de execuo de programa que acessa e, possivelmente,
atualiza vrios itens de dados. Uma transao, geralmente, o resultado da execuo
de um programa de usurio, e delimitada por declaraes (ou chamadas de funo)
da forma begin transaction e end transaction. A transao consiste em todas as
operaes ali executadas, entre o comeo e o fim da transao.
A ideia bsica por trs da garantia da atomicidade a seguinte. O sistema de banco de
dados mantm um registro (em disco) dos antigos valores de quaisquer dados sobre os
quais a transao executa uma gravao e, se a transao no se completar, os valores
antigos sos restabelecidos para fazer com que parea que ela nunca foi executada.
Assegurar a atomicidade responsabilidade do prprio sistema de banco de dados,
mais especificamente ela tratada por um componente chamado de componente de
gerenciamento de transaes.
H basicamente dois diferentes esquemas para garantir a atomicidade.
Desta forma exige-se que o banco de dados tenha ao menos uma instruo que
permita a gravao de uma srie modificaes simultneas e uma instruo capaz de
cancelar um srie modificaes. Por exemplo, imaginemos que estejamos cadastrando
um pedido para um cliente, que este deseje reservar 5 itens de nosso estoque, que
esto disponveis e portanto so reservados, porm existe um bloqueio financeiro
(duplicatas em atraso) que impede a venda. A transao dever ser desfeita com
apenas uma instruo ao Banco de Dados, sem qualquer modificaes suplementares
nos dados. Caso voc se obrigue a corrigir as reservas, atravs de acessos
complementares, voc no est lidando com um SGBD.
3.5.2 Backups
So arquivos de "pr-imagem" ou de outros recursos automticos, os quais so
utilizados para recuperar falhas de hardware e software exigindo minimamente a
interveno de pessoal tcnico.
Pgina 5 de 8
3.6.2 Bloqueio
O protocolo de bloqueio um conjunto de regras que estabelecem quando uma
transao pode bloquear e desbloquear cada um dos itens de dados do banco de
dados. O protocolo do bloqueio em duas fases permite que uma transao bloqueie
um novo item de dado somente at desbloquear o primeiro deles. O protocolo garante
a serializao, mas no est livre de deadlocks. Na ausncia de informaes a respeito
do tipo de acesso que ser feito no item de dados, o protocolo de bloqueio em duas
fases tanto necessrio quanto suficiente para garantia da serializao.
O esquema da ordenao por timestamp garante a serializao pela seleo da ordem
de execuo entre pares de transaes. Um nico timestamp associado a cada
transao no sistema. Os timestamps das transaes determinam a ordem de
serializao. Assim, se o timestamp da transao T1 menor que o da transao T2, o
esquema garante que a escala de execuo produzida seja equivalente a uma escala
serializada na qual a transao T1 aparece antes da transao T2. Isso feito
revertendo a transao sempre que a ordem for violada.
Pgina 6 de 8
3.7 Segurana
O principal objetivo garantir que no ocorram acessos no autorizados visando destruio,
alterao ou introduo de inconsistncias dos dados.
3.7.2 Vises
Um SGBD deve permitir que cada usurio visualize os dados de forma diferente
daquela existente previamente no Banco de Dados. Uma viso consiste de um
subconjunto de dados do Banco de Dados, necessariamente derivados dos existentes
no Banco de Dados, mas que so filtrados de acordo com nveis de autorizao de cada
usurio, normalmente associados a sua hierarquia no organograma da empresa.
Pgina 7 de 8
3.7.3 Criptografia
Atravs do uso de um algoritmo (sequencia de passos para o embaralhamento), dos
dados a serem protegidos e de uma chave (conjunto de bits), transforma-se textos ou
dados abertos em cdigos ilegveis. A chave existe para embaralhar o texto e, atravs
do conhecimento dela, conseguir recuperar o texto original. Isso Criptografia no
mundo computacional, e isso era Criptografia h mil anos.
Existe a possibilidade de encontramos Bancos de Dados que no satisfaam
completamente todas as caractersticas acima, o que no a invlida como Banco de
Dados. Na prtica podemos encontrar situaes onde a primeira caracterstica no seja
importante, pois podemos ter o Banco de Dados baseado totalmente em um nico
servidor, e as redundncias podem ser aceitas em algumas situaes sob controle da
aplicao (algo no muito recomendado, mas passvel de aceitao, em situaes onde
a existncia do nome do cliente em um arquivo contendo duplicatas emitidas,
possibilita o acesso a apenas uma tabela sem relacionamentos, e sabe-se de antemo
que uma duplicata depois de emitida, no pode ter seu cliente alterado).
O Controle de Integridade, outra caracterstica sempre presente nos Bancos de
Dados, mas existem diferenas quando da implementao desta caracterstica. Assim,
comum encontrarmos Bancos de Dados que suportam determinado acesso,
enquanto outros no dispem de recurso equivalente.
O Backup em tempo de execuo outra caracterstica sempre disponvel, porm
temos aplicaes que invariavelmente so comprometidas por falhas de hardware, e
outras, que o mesmo tipo de falha no causa perda alguma de dados ou de
integridade. Novamente, cada Banco de Dados tem esta caracterstica melhor ou pior
implementada, cabendo ao Administrador de Banco de Dados escolherem aquele que
lhe oferecer mais segurana.
A escolha e implementao do Banco de Dados da empresa, portanto uma deciso
muito delicada, na medida em que est ir acarretar troca de aplicativos e troca de
hardware. Os investimentos diretamente aplicados no Banco de Dados, costumam ser
infinitamente menores do que aqueles a serem aplicados na empresa, visando sua
perfeita adequao ao novo SGBD.
Pgina 8 de 8