Anda di halaman 1dari 9

Banco de Dados

Integrantes do grupo:
- Luciano Gonzaga Leme

- Paulo Henrique Martins Gouveia

- Wagner Sussumu Ueta

EAD-457 – Administração de Informática

2º semestre 1999 – 12/11/1999


Banco de Dados

Introdução, objetivo e justificativa para o trabalho


Devemos encarar as informações como um bem patrimonial de uma empresa, como são cadeiras,
mesas, prédios, máquinas etc.

A informação deve ser utilizada de uma maneira estratégica, para que possa atender e atingir
muito rapidamente os objetivos, metas e desafios traçados pela alta gerência de um negócio. Esta
velocidade faz com que qualquer negócio possa aproveitar uma oportunidade de competição de
mercado, sabendo que as informações estratégicas, táticas e operacionais estão disponíveis a
qualquer momento para tomada de decisões.

Fica evidente que a utilização deste enfoque passa necessariamente por uma nova realidade
tecnológica em termos de hardware e software. Felizmente, essa nova realidade já está
disponível, com equipamentos mais compactos e mais velozes e com sistemas gerenciais de
bancos de dados mais poderosos (ex.: ORACLE, SYBASE, SQL Server, dentre outros) que
podem incorporar essa forma de enfocar o desenvolvimento de sistemas de informação.

Cada vez mais, encontramos um aumento da complexidade e mutabilidade dos sistemas e desse
modo, um ambiente de desenvolvimento utilizando ferramentas que auxiliam a gerenciar toda
gama de informações que é passada pelos usuários e que ainda forneça uma ligação com o banco
de dados deve ser utilizado pela empresa e muito provavelmente as improvisações e incertezas
vão se tornar coisas do passado e os sistemas vão se tornar mais eficientes e abrangentes.

Desse modo quando analisamos um banco de dados devemos direcionar nossos trabalhos de
análise para o objetivo maior da organização que é a qualidade da informação. É de extrema
necessidade que obtenhamos o conhecimento sobre o que são e como são as informações, os
dados do negócio, pois eles refletem o próprio negócio da organização.

Neste trabalho o nosso objetivo será fornecer algumas informações que auxiliem a compreender o
que venha a ser um banco de dados, como ele pode auxiliar uma empresa no seu objetivo de obter
informações rapidamente e com qualidade. Obviamente, um trabalho que analise o tema não pode
ser suficientemente completo, porém é justificável que ele exista para esclarecer alguns pontos e
oferecer alguns passos para que os profissionais de administração possam compreender esse
vasto assunto: banco de dados.

Descrição e definição dos principais conceitos, problemas ou aspectos


relacionados ao tema
Alguns conceitos, problemas ou aspectos relevantes a boa compreensão de um banco de dados
são:

Banco de dados: pode ser entendido como um arquivo composto de registros, com cada um
contendo campos juntamente com um conjunto de operações para pesquisa, classificação,
recombinação e outras funções.
Administrador de banco de dados: é a pessoa que gerencia um banco de dados. O administrador
determina o conteúdo, a estrutura interna e a estratégia de acesso de um banco de dados, define
métodos de segurança e integridade e monitora o desempenho do sistema. Acrônimo: DBA
(database administrator) – também chamado de database manager (gerenciador de banco de
dados).

Sistema de gerenciamento de banco de dados (SGBD): uma interface de software entre o banco
de dados e o usuário. Um sistema de gerenciamento de banco de dados que trata de solicitações
do usuário para ações de bancos de dados e permite o controle centralizado da segurança e da
integridade dos dados.

Cliente: em uma rede local ou na Internet, um computador que acessa recursos de rede
compartilhados fornecidos pelo outro computador (chamado de servidor).

Servidor: em uma rede local (LAN), um computador onde são processados softwares
administrativos que controlam o acesso à rede e seus recursos (como unidades de disco e
impressoras). O computador que funciona como servidor coloca seus recursos à disposição dos
computadores que funcionam como estações de trabalho da rede. Na Internet ou em outras redes,
um computador ou programa que responde a comandos provenientes de um cliente. Por exemplo,
um servidor de arquivos pode conter um arquivo de dados ou de programas; quando um cliente
solicita um arquivo, o servidor transfere uma cópia do arquivo para o cliente.

Arquitetura cliente-servidor: uma forma de estruturação das redes locais que utiliza o princípio da
“distribuição da inteligência”, tratando tanto o servidor quanto as estações de trabalho como
equipamentos inteligentes e programáveis, permitindo a exploração plena de toda a capacidade
instalada da rede. Isso é feito através da divisão do processamento de uma aplicação entre dois
componentes distintos: um cliente, no front-end (primeiro plano), e um servidor, no back-end
(retaguarda). O cliente, que é por si só um microcomputador completo e independente (em
contraste com os terminais burros utilizados nas arquiteturas mais antigas, como os terminais de
computadores de grande porte), oferece ao usuário toda uma gama de recursos para o
processamento de aplicações. O servidor, que pode ser outro microcomputador ou um mainframe,
amplia a capacidade do cliente agregando a ela as características normalmente encontradas nos
minicomputadores e mainframes que operam em tempo compartilhado: gerenciamento de dados,
compartilhamento de informações entre clientes e recursos sofisticados de administração e
segurança da rede. A vantagem da arquitetura cliente-servidor sobre as arquiteturas antigas está
em que o cliente e o servidor cooperam no processamento das aplicações. Além de aumentar a
capacidade de processamento disponível, essa técnica faz com que essa capacidade seja utilizada
de modo mais eficiente. O cliente costuma ser otimizado para a integração com o usuário,
enquanto o servidor cuida das funções naturalmente centralizadas e compartilhadas.

Alguns tópicos também precisam ser esclarecidos para melhor compreensão de alguns aspectos
inerentes a bancos de dados: informação e dado.

A informação acrescenta algo ao conhecimento da realidade a ser analisada. Por exemplo, a


dosagem que um paciente precisa receber de um determinado medicamento, é uma informação. E
esse conhecimento pode ou não estar registrado.
O dado é uma representação, um registro de uma informação. Esse dado pode ser registrado
fisicamente através de um papel (receita médica), um disco de computador ou um impulso
elétrico etc. Esse registro pode ser o originador de uma série de processos que influenciam na
realidade observada (salvar a vida de um paciente, tocar um alarme etc.).

O tratamento das informações dá origem a vários tipos de dados, porém o dado deve registrar
apenas os aspectos realmente relevantes da informação, ou seja, o endereço do fabricante do
remédio não tem nenhum interesse para um sistema de controle que mantém a vida dos pacientes
de uma UTI. Podemos concluir então, que em um sistema de informações estão contidas todas as
informações necessárias ao objetivo do sistema (manter a vida do paciente). Os dados originados
dessas informações serão processados pelo sistema criado. Por definição um computador não
processa informações, mas sim, dados.

Para que possamos chegar a automação de uma realidade, é necessário que possamos entender
esta mesma realidade. Fica evidente a impossibilidade de um analista ou um programador
conhecer todas as possíveis realidades que, ao longo de sua vida profissional aparecem para
serem modeladas e automatizadas. Na verdade, o desenvolvimento do conhecimento humano,
além de exigir uma contínua especialização, acaba por provocar também uma crescente
necessidade de gente capacitada de relacionar as partes com o todo: “projetista de sistemas”, o
qual deve ter a capacidade de sintetizar complexidades. E esse é, sem dúvida, um dos maiores
desafios de um banco de dados bem estruturado.

Qualquer pessoa pelo menos um pouco séria quanto à criação de um aplicativo de banco de dados
poderá dizer: “se não houver o projeto de banco de dados certo, é melhor nem começar.” Mesmo
para aplicativos de banco de dados para um único usuário, perder algum tempo com o projeto de
banco de dados economizará muito tempo depois. Como é de se imaginar, criar um projeto de
banco de dados correto é ainda mais importante para um aplicativo cliente-servidor do que para
um aplicativo de computador para um único usuário.

Problemas com dados não normalizados:

Quando uma pessoa começa a criar um aplicativo de banco de dados para automatizar
determinada função comercial, provavelmente começa examinando o modo pelo qual a empresa
executa a tarefa. Ele pode começar examinando os dados requeridos para montar a solicitação de
um cliente e fornecer a conta para que ele pague. Se você tiver que criar uma solução de arquivo
não relacional para armazenar os dados requeridos para estas tarefas ele aparecerá como uma
tabela com dados semelhantes aos dispostos em uma planilha. Um banco de dados de arquivo não
relacional simplesmente armazena todas as informações em uma grande tabela, usando colunas
individuais para guardar partes de dados separados.

Para que um negócio pequeno que está apenas começando lance mão de computadores pessoais,
é uma grande tentação colocar essa estrutura de dados em um programa de planilha para calcular
e imprimir as solicitações do cliente. Entretanto, se você converter essa estrutura de arquivo não
relacional para uma tabela de banco de dados simples ou planilha, acarretará vários problemas,
incluindo:

- As informações do cliente devem ser repetidas para cada solicitação. Se você quiser
acompanhar o negócio por cliente, descobrirá que as informações para qualquer um dos
clientes varia de solicitação para solicitação – talvez devido aos erros de entrada de dados
ou simplesmente porque foram usadas abreviações diferentes em registros diferentes (3ª
Avenida, Terceira Av.). Se o negócio é repetitivo, haverá a necessidade de espaço de
armazenamento adicional para essas informações.
- Como as informações de endereço do cliente cabem em um campo, é impossível
classificar os campos por rua, cidade, ou CEP sem executar cálculos monótonos e que
levam muito tempo em cada registro.

E diversos outros problemas dessa natureza. E o modo de resolvê-los em um modelo de


gerenciamento de banco de dados relacional é aplicar um processo chamado normalização de
dados. À medida que você aplica as regras de normalização, leva o seu projeto de tabela de dados
a níveis crescentes de clareza. A normalização simplifica muito o gerenciamento de consultas e
atualizações, inclusive no que diz respeito à segurança e integridade. Contudo, pelo fato de a
normalização exigir o uso de uma técnica chamada projeção, que resulta na divisão de uma
relação (tabela) em duas ou mais relações, a simplificação tem seu preço no fato de que o
programador é obrigado a criar um número maior de tabelas.

Anormalização é o processo de violar deliberadamente as regras da normalização e a única razão


válida para anormalizar um projeto de banco de dados relacional é melhorar o desempenho do
aplicativo final.

Um administrador consciente ou envolvido com um projeto de banco de dados deve ter em mente
os conceitos acima especificados – embora seja do escopo de especialistas no assunto, o
conhecimento desses tópicos auxiliará o envolvimento de todos os participantes do projeto.

Aplicação nas empresas: possibilidades, vantagens, desvantagens, dificuldades


e exemplos
Como vimos anteriormente, existem inúmeros problemas que podemos deparar num projeto de
banco de dados e as empresas obtêm muitas vantagens com pessoas qualificadas no assunto. As
desvantagens de não termos um banco de dados projetado eficientemente serão muitas vezes
cruciais até mesmo à sobrevivência da organização.

Existem outras dificuldades que devemos considerar: qual o banco de dados que devemos
escolher?, qual sistema operacional ele exigirá? (por exemplo, o SQL Server da Microsoft só
roda no ambiente do Windows NT – para uma empresa que tem toda uma rede baseada em
Novell, UNIX, Linux etc. a decisão pelo SQL Server da Microsoft pode implicar em gastos
extras consideráveis com a implantação da rede Windows NT da Microsoft. No livro Microsoft –
Desvendando o SQL Server 6.5, o autor Ron Soukup, um especialista avançado da Microsoft
Corp., procura explicar o por que do fato de a Microsoft ter optado pela exclusividade do SQL
Server ao Windows NT: “Queríamos construir o melhor servidor de banco de dados para o
Windows NT que pudéssemos. Como o Windows NT seria a única plataforma do SQL Server,
não precisávamos criar uma camada de abstração que tornasse todos os sistemas operacionais
parecidos. Precisávamos nos preocupar apenas em fazer o melhor trabalho possível com o
Windows NT. O Windows NT foi projetado para ser um sistema operacional portável e ele
estaria disponível para muitas arquiteturas de máquina diferentes. Nossa ‘camada de
portabilidade’seria o próprio Windows NT.”
Outros bancos de dados muito utilizados, tais como o Access da Microsoft, ORACLE, SYBASE
não apresentam essa limitação do SQL Server da Microsoft – porém, também apresentarão
algumas especificidades, tais como: deveremos verificar se possuem versões específicas para
rodarem em Solaris, UNIX etc. Embora o Access da Microsoft rode em Novell, não se trata de
um aplicativo portável a qualquer plataforma, enfim, existem limitações e qualquer que seja a
decisão caberá, a quem decide ou a especialistas que podem auxiliar, verificar qual o melhor
banco de dados a ser escolhido em termos de performance (ORACLE é tido como um dos
melhores – revista Info Exame – edição 161), em segurança (novamente o ORACLE é
considerado um dos melhores - revista Info Exame – edição 161), em custo (dos que apresentam
arquitetura cliente-servidor o SQL Server da Microsoft, se não formos considerar o custo do
Windows NT é um dos com melhores preços no mercado). Enfim, deve-se efetuar uma análise de
custo/benefício e concluirmos dentro das características e intenções inerentes a organização qual
a base de dados que atenderá melhor aos anseios da instituição sempre lembrando-se da
importância da qualidade da informação como já abordamos anteriormente.

Para este trabalho iremos fazer um estudo sucinto e comparativo entre os dois banco de dados
mais utilizados ou que estão sendo mais proliferados ultimamente entre as empresas de pequeno
ou médio porte: Access e SQL Server, embora ambos sejam da Microsoft e pareça que estamos
limitando demais nossa abordagem a realidade é que a enorme penetração que o ambiente
Windows apresenta no mundo inteiro tem feito com que muitos outros aplicativos escolhidos
sejam da própria Microsoft pois espera-se menores dificuldades de adaptação e suporte. E
exatamente por isso, achamos adequado escolhermos esses dois para compararmos, e inclusive
porque propiciam uma boa analogia entre quaisquer bancos de dados próprios a pequeno porte
(Access) ou a médio ou grande porte (SQL Server).

Algumas vantagens do Access:

- Você utiliza um único produto integrado para criar o aplicativo.


- A grande popularidade do Access torna a obtenção do conhecimento do Access num
produto relativamente simples.
- Aplicativos simples requerem pouca ou nenhuma codificação.
- O código requerido para criar aplicativos mais complexos usa o Visual Basic for
Applications, que é compartilhado por vários produtos Microsoft – e é mais fácil
encontrar um programador em VBA do que em outras linguagens menos populares.
- É relativamente simples criar aplicativos moderadamente complexos para suportar até
vinte usuários.

Algumas desvantagens do Access:

- A tecnologia do servidor de arquivo é mais propensa à perda de dados no caso de uma


falha no sistema.
- As regras comerciais devem todas ser reforçadas no cliente. Um usuário sofisticado pode
obter acesso fora do aplicativo do cliente e ignorar o reforço da regra.
- Mesmo quando cuidadosamente projetado, o acesso ao servidor de arquivo gera mais
tráfego de rede do que a utilização de um verdadeiro servidor de banco de dados.
- Uma atenção mais cuidadosa deve ser dada ao projeto do banco de dados e de consulta
para eliminar varreduras completas de dados na rede.
- A arquitetura de servidor de arquivos no Access não é adequada para gerenciar grandes
volumes (cerca um gigabyte) de dados no servidor.
- Essa arquitetura não suportará centenas de usuários simultâneos.

Algumas vantagens do SQL Server:

- O SQL Server executado no Microsoft Windows NT é mais inacessível às ininterrupções


do sistema.
- Um servidor de banco de dados pode manipular volumes muito maiores de dados do que
um servidor de arquivos.
- Os dados podem ser mantidos de modo mais eficaz em um servidor de banco de dados.
- A integridade dos dados e muitas regras comerciais podem ser reforçadas no servidor e
não podem ser ignoradas por nenhum cliente.
- O servidor pode ser programado com procedimentos de atualização e edição eficientes
que podem ser adicionados a partir do cliente.
- Se cuidadosamente planejado, um servidor de banco de dados pode lidar com centenas de
usuários simultâneos.

Algumas desvantagens do SQL Server:

- Um servidor de banco de dados projetado de modo deficiente pode ser executado mais
lentamente do que um aplicativo de servidor de arquivos bem projetado.
- Os aplicativos do servidor de banco de dados tendem a ser mais complexos.
- As implementações do servidor de banco de dados forçam o projetista a planejar a
segurança e a integridade do servidor.
- Pode ser melhor criar um aplicativo servidor de banco de dados a partir do início do que
tentar atualizar um aplicativo servidor de arquivos.

Quando devemos migrar do Access para o SQL Server:

Quando uma das seguintes opções for verdadeira:

- Você tiver que suportar mais de vinte usuários simultâneos.


- O banco de dados tiver ultrapassado 500 megabytes.
- Ainda que infreqüente, as paralisações no servidor de arquivos estiverem causando tempo
inativo do aplicativo.
- Os usuários estiverem expressando mais a respeito dos tempos de resposta lentos.
- O aplicativo tiver se expandido para incluir processamento de transação on-line de alto
volume ou de muitas pesquisas de consulta complexas.
- Os requisitos de segurança ou de integridade de dados tiverem aumentado além do que
pode ser suportado com um servidor de arquivos.

Naturalmente, deve-se considerar uma implementação do servidor de banco de dados a partir do


início para um aplicativo inteiramente novo se um dos pontos acima forem verdadeiros. E
obviamente que, outros bancos de dados tais como ORACLE, SYBASE, dentre outros com
tecnologia de arquitetura cliente-servidor podem atender as especificações acima detalhadas
abordando o SQL Server da Microsoft.
Conclusões e perspectivas
Limitamos neste estudo a um ambiente mais tradicional, porém hoje em dia, com o avanço
acelerado da Internet existem inúmeras perspectivas de bancos de dados que estarão rodando no
ambiente do protocolo TCP/IP com tecnologia Active Server Pages (ASP) e linguagens próprias
de servidores do ambiente Internet que são de uma vastidão muito grande. A Amazon
www.amazon.com, famoso site de vendas nos Estados Unidos utiliza tecnologias de comércio
eletrônico em que a base de dados trabalha dentro de uma realidade totalmente diferente. O
internauta, quando solicita informações de um determinado livro estará enviando uma solicitação
em HTML, o servidor Web irá processar essa solicitação e enviará como resposta uma página em
HTML com os resultados da consulta – é um ambiente, uma realidade que difere em muito do
que atualmente vemos na maioria dos bancos de dados das empresas. E muitas empresas querem
que todo seu ambiente fique próximo a esse da Internet, deseja que seus servidores também
utilizem a tecnologia ASP, vêem facilidade de atualização, pois o ambiente centralizado de
processamento permite menores investimentos em estações de trabalho, facilidade de
atualizações de versões, um ambiente mais seguro, as estações só precisarão ter um sistema
operacional adequado ao ambiente de rede e um navegador (Internet Explorer da Microsoft ou o
Netscape da SUN, por exemplo) – toda uma gama de dificuldades atualmente encontradas em
muitas redes se dissiparão, hoje em dia ao atualizarmos uma versão de um sistema desenvolvido,
por exemplo em Visual Basic para uma base de dados SQL Server ao mudar da versão 5.0 para a
6.0 poderá necessitar de um novo SETUP a ser executado em cada estação de trabalho que
execute o software com novas OCX ou DLL (OCX ou DLL são bibliotecas de programas que
hoje em dia muitos programas utilizam quando estão sendo executados). Com um ambiente
centralizado, as bibliotecas só precisarão ser atualizadas no servidor ou servidores que compõem
o ambiente da rede – seja uma Intranet, Extranet ou a própria Internet – trata-se de uma certa
volta ao estilo centralizado do mainframe com terminais burros.

Segundo as previsões do futurólogo Jean-Paul Jacob “em três ou quatro anos, a Internet será um
utilitário igual a televisão. O acesso será automático e cada um pagará pelo uso, igual à
eletricidade.” Não são poucos os desafios referentes a esse tema. As evoluções da informática
são tão acentuadamente rápidas que em pouco tempo esse trabalho poderá estar desatualizado. A
própria Microsoft indica ter projetos de ficar exclusivamente com o produto SQL Server, mais
amigável e capaz de rodar em ambientes monousuários no Windows 2000 (que deve substituir as
famílias Windows 9X e Windows NT). Dentro de alguns anos, quem ler esse artigo talvez ache
estranho comparar entre o Access e o SQL Server – afinal de contas eles não tem mais nenhuma
distinção, poderá dizer o leitor do ano de 2002. O importante em informática é ter noção dos
principais tópicos referentes a necessárias tomadas de decisão, acompanhar algumas evoluções e
ter em mente que o que é bom hoje pode ser obsoleto amanhã, porém isso não tira a validade da
decisão pois as empresas precisam faturar hoje e sempre e a decisão não poderá estar sendo
sempre adiada. E esperamos ter dado algumas noções que facilitarão a compreensão e a
abordagem adequada do assunto. A bibliografia abaixo mencionada e alguma complementar, que
o leitor encontrar, facilitarão o melhor entendimento e propiciarão maior aprofundamento nesse
tema.
Referências bibliográficas:
- www.microsoft.com/brasil/vbasic

- www.vocesa.com.br
Revista VOCÊ S.A. – ano 1 n°13 – julho/99

- www.oracle.com.br / www.sybase.com.br / www.sqlserver.com /


http://www.adjoin.cefet-rj.br/bd.htm

- Dicionário de Informática – Microsoft Press – editora CAMPUS

- Ron Soukup – Desvendando o Microsoft SQL Server 6.5 – Microsoft Press – editora
CAMPUS

- John L. Viescas, Mike Gunderloy e Mary Chipman – Access e SQL Server Manual do
Programador – editora Ciência Moderna

- Microsoft Access Guia do Usuário

Anda mungkin juga menyukai