• Nenhum resultado encontrado

SISTEMA DE BANCO DE DADOS. Banco e Modelagem de dados

N/A
N/A
Protected

Academic year: 2021

Share "SISTEMA DE BANCO DE DADOS. Banco e Modelagem de dados"

Copied!
13
0
0

Texto

(1)

Banco e Modelagem de dados

SISTEMA

DE BANCO

DE DADOS

(2)

Sumário

Conceitos/Autores chave...

1. Introdução...

2. Arquiteturas de um Sistema Gerenciador...

3. Componentes de um Sistema...

4. Vantagens da Abordagem...

5. Conclusões...

Materiais complementares...

Bibliografi a...

3

4

5

8

10

12

13

13

(3)

É o valor do campo quando é armazenado no Banco de Dados. Ex. O valor do campo “nome do cliente” para quem está fazendo a entrada de dados.

Glossário

Dado:

Uma coleção organizada de dados relacionados.

Banco de Dados:

É o valor do campo armazenado no Banco de Dados. Ex. O valor do campo “nome do cliente” sem estar, momentaneamente, sendo utilizado.

Conteúdo do campo:

Um Sistema Gerenciador de Banco de Dados (SGBD) é um conjunto de programas de propósito geral que facilita o processo de construção e manipulação de bancos de dados para servir a diversas aplicações. Um Banco de Dados (BD) é uma coleção de dados inter-relacionados projetado para atender às necessidades de um grupo específico de aplicações e usuários. O conjunto desses dois elementos, SGBD e BD conformam um Sistema de Banco de Dados (SBD). A figura ao lado, ilustra estas diferenças.

Pontos críticos

Conceitos/Autores-chave

É um Dicionário de Dados que armazena informações sobre os dados criados pelo usuário, como por exemplo uma tabela, registro, restrições. Em um SBD, este dicionário ou diretório é consultado antes que o dado real seja modificado.

Metadados:

Diferenças entre SGBD,

SBD e BD.

SBD

SGBD

BD

Representação de um SBD, SGDB e um BD

(4)

Um SBD é composto por um Sistema Gerenciador de Banco de Dados (SGBD), o qual tem como função gerenciar os dados de forma conveniente e eficiente, e o BD, o qual contém arquivos de dados e o esquema lógico do BD. As definições das estruturas são expressas em uma linguagem especial chamada Linguagem de Definição dos Dados (LDD), e o resultado da compilação de declarações LDD são armazenados em um arquivo especial chamado Dicionário de Dados (DD).

1. Introdução

O dicionário de dados é um arquivo que contém metadados, dados sobre os dados, do qual fazem parte as especifi cações das estruturas de dados, regras e métodos de acesso e outros detalhes necessários à implementação. Por outro lado, faz-se uso de uma linguagem de manipulação de dados (LMD), cuja fi nalidade é permitir que os usuários possam acessar ou manipular os dados organizados de acordo com um modelo de dados.

As linguagens utilizadas para o gerenciamento da informação

nos SBD’s são chamadas de linguagens de consulta. O

processador de consultas, componente do SGBD, traduz as

consultas em instruções de baixo nível, otimizando-as de forma

(5)

2. Arquiteturas de um Sistema

Gerenciador de Banco de dados

As primeiras arquiteturas usavam mainframes para executar o processamento principal e de todas as funções do sistema, incluindo os programas aplicativos, programas de interface com o usuário, bem como a funcionalidade dos SGBDs. Esta é a razão pela qual a maioria dos usuários fazia acesso aos sistemas via terminais que não possuíam poder de processamento, apenas a capacidade de visualização.

Todos os processamentos eram feitos remotamente, apenas as informações a serem visualizadas e os controles eram enviados do mainframe para os terminais de visualização, conectados a ele por redes de comunicação. Como os preços de hardware foram decrescendo, muitos usuários trocaram seus terminais por computadores pessoais (PC) e estações de trabalho. No começo os SGBDs usavam esses computadores da mesma maneira que usavam os terminais, ou seja, o SGBD era centralizado e toda sua funcionalidade, execução de programas aplicativos e processamento da interface do usuário eram executados em apenas uma máquina. Gradualmente, os SGBDs começaram a explorar a disponibilidade do poder de processamento no lado do usuário, o que levou à arquitetura cliente-servidor (Gordon, 2006).

A arquitetura cliente-servidor foi desenvolvida para dividir ambientes de computação onde um grande número de PCs, estações de trabalho, servidores de arquivos, impressoras, servidores de banco de dados e outros equipamentos são conectados juntos, por uma rede. A idéia é definir servidores especializados, tais como servidor de arquivos, que mantém os arquivos de máquinas-cliente, ou servidores de impressão que podem estar conectados a várias impressoras; assim, quando se desejar imprimir algo, todas as requisições de impressão são enviadas a este servidor.

(6)

As máquinas-cliente disponibilizam para o usuário as interfaces apropriadas para utilizar esses servidores, bem como poder de processamento para executar aplicações locais. Esta arquitetura se tornou muito popular por algumas razões.

Primeiro

A facilidade de

implementação dada à clara

separação das funcionalidade

e dos servidores.

Segundo

Um servidor é

inteligentemente utilizado

porque as tarefas mais

simples são delegadas às

máquinas-clientes mais

baratas.

Terceiro

O usuário pode executar

uma interface gráfica que

lhe é familiar, ao invés

de usar a interface do

servidor. Desta maneira, a

arquitetura cliente-servidor

foi incorporada aos SGBDs

comerciais.

Diferentes técnicas foram propostas para se implementar essa arquitetura, sendo que a mais adotada pelos Sistemas Gerenciadores de Banco de Dados Relacionais (SGBDRs) comerciais é a inclusão da funcionalidade de um SGBD centralizado no lado do servidor. As consultas e a funcionalidade transacional permanecem no servidor, sendo que este é chamado de servidor de consulta ou servidor de transação. É assim que um servidor SQL é fornecido aos clientes. Cada cliente tem que formular suas consultas SQL, prover a interface do usuário e as funções de interface usando uma linguagem de programação.

O cliente pode também

se referir a um dicionário

de dados o qual inclui

informações sobre a

distribuição dos dados em

vários servidores SQL, bem

como os módulos para

a decomposição de uma

consulta global em um

número de consultas locais

que podem ser executadas

em vários sítios

.

Comumente o servidor SQL também é chamado de back-end machine e o cliente de front-end machine. Como SQL provê uma linguagem padrão para

o SGBDRs, esta criou o ponto de divisão lógica entre o cliente e

o servidor. Atualmente, existem várias tendências para

arquitetura de Banco de Dados, nas mais

(7)

Plataformas centralizadas

2.1

Alguns tipos de arquiteturas de SGBDs

Na arquitetura centralizada, existe um computador com grande capacidade de processamento, o qual é o hospedeiro do SGBD e emuladores para os vários aplicativos. Esta arquitetura tem como principal vantagem, a de permitir que muitos usuários manipulem grande volume de dados. Sua principal desvantagem está no seu alto custo, pois exige ambiente especial para mainframes e soluções centralizadas.

Sistemas de computador pessoal - PC

2.2

Os computadores pessoais trabalham em sistema stand-alone, ou seja, fazem seus processamentos sozinhos. No começo esse processamento era bastante limitado, porém, com a evolução do hardware, tem-se hoje PCs com grande capacidade de processamento. Eles utilizam o padrão Xbase e quando se trata de SGBDs, funcionam como hospedeiros e terminais. Desta maneira, possuem um único aplicativo a ser executado na máquina. A principal vantagem desta arquitetura é a simplicidade.

Banco de dados distribuídos

2.4

Nesta arquitetura, a informação está distribuída em diversos servidores. Como exemplo, observe a figura. Cada servidor atua como no sistema cliente-servidor, porém as consultas oriundas dos aplicativos são feitas para qualquer servidor indistintamente. Caso a informação solicitada seja mantida por outro servidor ou servidores, o sistema encarrega-se de obter a informação necessária, de maneira transparente para o aplicativo, que passa a atuar consultando a rede, independente de conhecer seus servidores. Exemplos típicos são as bases de dados corporativas, em que o volume de informação é muito grande e, por isso, deve ser distribuído em diversos servidores. Porém, não é dependente de aspectos lógicos de carga de acesso aos dados, ou base de dados fracamente acopladas, em que uma informação solicitada vai sendo coletada numa propagação da consulta numa cadeia de servidores. A característica básica é a existência de diversos programas aplicativos consultando a rede para acessar os dados necessários, porém, sem o conhecimento explícito de quais servidores dispõem desses dados.

Banco de dados cliente-servidor

2.3

Na arquitetura Cliente-Servidor, o cliente (front_end) executa as tarefas do aplicativo, ou seja, fornece a interface do usuário (tela, e processamento de entrada e saída). O servidor (back_end) executa as consultas no DBMS e retorna os resultados ao cliente. Apesar de ser uma arquitetura bastante popular, são necessárias soluções sofisticadas de software que

possibilitem: o tratamento de transações, as confirmações de transações (commits), desfazer transações (rollbacks), linguagens de consultas (stored procedures) e gatilhos(triggers). A principal vantagem desta arquitetura é a divisão do processamento entre dois sistemas, o que reduz o tráfego de dados na rede.

(8)

3. Componentes de um sistema

gerenciador de banco de dados

Tem a finalidade de traduzir os comandos utilizados para manipulação de dados (DML), tais como inserção de dados, exclusão de dados, atualização de dados e seleção de dados em instruções de baixo nível, que são interpretados pelo componente de execução de consultas. Também tem a função de transformar a solicitação feita pelo usuário, por meio da linguagem SQL, em uma forma mais eficiente, de modo a encontrar uma melhor estratégia para a execução da consulta. A finalidade desta estratégia é minimizar o acesso ao disco onde se encontram os dados da aplicação ou negócio.

Compilador DML

Os componentes de processamento de

consulta incluem:

Um sistema de Banco de Dados está dividido em módulos específicos, de modo a atender a todas as funções do sistema. Os componentes funcionais do Sistema de Banco de Dados podem ser divididos pelos componentes de processamento de consultas e pelos componentes de administração de memória.

Pré-compilador para Comandos DML: Tem a finalidade de converter os

comandos utilizados em programas de aplicação em chamadas de procedimentos normais da linguagem hospedeira. Este módulo interage com o módulo anterior.

Pré-compilador:

Tem a finalidade de interpretar comandos utilizados para criar uma tabela, eliminar uma tabela, criar índices, etc., definidos como linguagem de definição de dados (DDL) e armazená-los em um conjunto de tabelas que fazem parte dos meta-dados.

(9)

Gerenciamento de autorizações e integridade: Tem a finalidade de garantir

o cumprimento das regras de integridade e a permissão ao usuário no acesso ao dado.

Gerenciamento

Os componentes de administração de

armazenamento de dados incluem:

Administração de arquivos: Tem

a finalidade de gerenciar a alocação de espaço no armazenamento em disco e as estruturas de dados usadas para representar estas informações armazenadas em disco.

Administração

Utilizado para armazenar o próprio BD.

Arquivo de dados

Existem estruturas que são exigidas

e que fazem parte da implementação

física do Sistema de BD:

Proporcionam acesso rápido aos itens de dados.

Índices

Tem a finalidade de armazenar informações sobre a estrutura utilizada para armazenar o banco de dados.

Dicionário de dados

Na figura são consolidados os componentes do Banco de Dados:

Alguns dos principais componentes pertencentes s um SBD

Arq. de dados

Índices

Dic. de dados

Compilador DML

Pré compilador

Interpretador DDL

Ger. de autorizações

e integridade

Administração

de arquivos

U

S

U

Á

R

I

O

(10)

4. Vantagens do uso de um banco de dados

Redução ou Eliminação de Redundâncias

Possibilita a eliminação de dados privativos de cada sistema. Os dados, que eventualmente são comuns a mais de um sistema, são compartilhados por eles, permitindo o acesso a uma única informação sendo consultada por vários sistemas.

Eliminação de Inconsistências

Através do armazenamento da informação em um único local com acesso descentralizado e, sendo compartilhada em vários sistemas, os usuários estarão utilizando uma informação confiável. A inconsistência ocorre quando um mesmo campo tem valores diferentes em sistemas diferentes. Exemplo, o estado civil de uma pessoa é solteiro em um sistema e casado em outro. Isto ocorre porque esta pessoa atualizou o campo em um sistema e não o atualizou em outro. Quando o dado é armazenado em um único local e compartilhado pelos sistemas, este problema não ocorre.

Compartilhamento dos Dados

Permite a utilização simultânea e segura de um dado, por mais de uma aplicação ou usuário, independente da operação que esteja sendo realizada. Deve ser observado apenas o processo de atualização concorrente, para não gerar erros de processamento (atualizar simultaneamente o mesmo campo do mesmo registro). Os aplicativos são por natureza multiusuário.

Restrições de Segurança

Define para cada usuário o nível de acesso a ele concedido (leitura; leitura e gravação ou sem acesso) ao arquivo e/ou campo. Este recurso impede que pessoas não autorizadas utilizem ou atualizem um determinado arquivo ou campo.

Padronização dos Dados

Permite que os campos armazenados na base de dados sejam padronizados segundo um determinado formato de armazenamento (padronização de tabela, conteúdo de compôs, etc.) e ao nome de variáveis seguindo critérios padrões preestabelecido pela empresa.

Exemplo: Para o campo “Sexo” somente será

permitido armazenamento dos conteúdos

(11)

Independência dos Dados

Representa a forma física de armazenamento dos dados no Banco de Dados e a recuperação das informações pelos programas de aplicação. Esta recuperação deverá ser totalmente independente da maneira com que os dados estão fisicamente armazenados.

Manutenção da Integridade

Permite que os campos armazenados na base de dados sejam padronizados segundo um determinado formato de armazenamento (padronização de tabela, conteúdo de compôs, etc) e ao nome de variáveis seguindo critérios padrões preestabelecido pela empresa.

Quando um programa retira ou inclui dados o SGBD

compacta-os para que haja um menor consumo de

espaço no disco. Este conhecimento do formato de

armazenamento do campo é totalmente transparente

para o usuário. A independência dos dados

permite os seguintes recursos:

Os programas de aplicação definem apenas os

campos que serão utilizados independente da

estrutura interna dos arquivos.

Quando há inclusão de novos campos no arquivo,

será feita manutenção apenas nos programas

que utilizam esses campos, não sendo necessário

mexer nos demais programas. Obs.: Nos sistemas

tradicionais este tipo de operação requer a

alteração no layout de todos os programas do

sistema que utilizam o arquivo.

Exemplo: Um código de uma determinada

disciplina na tabela “Histórico Escolar” sem a

(12)

Neste módulo foram apresentados os conceitos básicos de Banco de Dados, Sistema Gerenciador de Banco de Dados e Sistema de Banco de Dados.

Importante

O essencial é que o projeto de banco de dados deve representar exatamente a realidade do domínio do problema,

independente da tecnologia ou ferramenta a ser utilizada. De modo contrário, não será possível obter os resultados esperados pela organização, ou muito pior, os resultados obtidos não vão refl etir a verdadeira situação do negócio, e

como conseqüência, serão tomadas decisões sobre dados incorretos ou inconsistentes.

(13)

Materiais complementares

ELMASRI, R.; NAVATHE, S.B. Sistemas de Banco de Dados: Fundamentos e Aplicações. 3. ed. Rio de Janeiro: LTC, 2002. 837p.

HEUSER, C. A., Projeto de Banco de Dados, Série Livros Didáticos, n.4. 5ª edição, Ed. Sagra Luzzatto, Porto Alegre, 2004. 236p.

WATSON, R. Data Management: Banco de Dados e Organizações, 3ª edição. Ed. LTC, Rio de Janeiro, 2004. 370p.

DATE, C. J. Introdução a Sistemas de Banco de Dados. 8.ed., Editora Elsevier - Campus, São Paulo, pp. 865. 2004.

ELMASRI, R.; NAVATHE, S.B. Sistemas de Banco de Dados: Fundamentos e Aplicações. 3ª.ed. Rio de Janeiro: LTC, 2002. 837p.

GORDON, J. R.; Gordon, Steven R. Sistemas de Informação: Uma abordagem Gerencial. LTC, 2006.

KORTH, H. F.; SILBERSCHATZ, A., SUDARSHAN, S. Fundamentos de bases de dados. Madrid, 3.ed. Makron Books, pp.778. 1999.

PAVON, J.; Representação de Estruturas de Conhecimento em Sistemas de Bancos de Dados,

dissertação de mestrado, Escola Politécnica da Universidade de São Paulo, São Paulo. 119p. 1996.

Referências

Documentos relacionados

seria usada para o parafuso M6, foram utilizadas as equações 14 e 15, referentes aos parafusos de 8 mm de diâmetro e folga entre parafuso e furo de 0,5 mm, que definem,

No entanto, os resultados apresentados pelo --linalol não foram semelhantes, em parte, aos do linalol racêmico, uma vez que este apresenta um efeito vasorelaxante em anéis de

Resumo: O presente trabalho corresponde a um estudo empírico descritivo e exploratório que aborda comportamentos e falas de atores políticos que participaram do processo legislativo

Estes resultados apontam para melhor capacidade de estabelecimento inicial do siratro, apresentando maior velocidade de emergência e percentual de cobertura do solo até os 60

Entendendo, então, como posto acima, propõe-se, com este trabalho, primeiramente estudar a Lei de Busca e Apreensão para dá-la a conhecer da melhor forma, fazendo o mesmo com o

A variação do pH da fase móvel, utilizando uma coluna C8 e o fluxo de 1,2 mL/min, permitiu o ajuste do tempo de retenção do lupeol em aproximadamente 6,2 minutos contribuindo para

A não uniformização quanto ao método de referência pode promover diferenças entre as curvas de calibração geradas por laboratórios de dosimetria citogenética, que podem

Este presente artigo é o resultado de um estudo de caso que buscou apresentar o surgimento da atividade turística dentro da favela de Paraisópolis, uma