Conceituando Banco de Dados e SGBD


Bom Pessoal vou neste post falar sobre o Conceito de Banco de dados e SGBD (Sistema de Gerenciamento de Banco de dados), tratando a diferença entre esses dois conceitos de forma clara e explicativa. Sobre Banco de dados vamos expor sobre sua evolução, definição e utilização. Sobre SGDB vamos falar de sua definição, Arquitetura, Modelo de Dados, Independência de dados, Linguagem de Manipulação de Dados (ou DML, de Data Manipulation Language), Linguagem de definição de dados (LDD ou DDL, do Inglês Data Definition Language).

Com a Importância da informação para tomada de decisão nas empresas e organizações, isso impulsionou o desenvolvimento de sistemas para processamento de informações.

As principais ferramentas utilizadas são:

– Processadores de Texto (editoração eletrônica de informações)

– Planilhas (Cálculos com tabelas de valores)

– Sistemas de Gerenciamento de Banco de dados (Armazenamento de grande volume de dados, estruturados em registros e tabelas, com recursos para acesso e processamento de informações).

Banco de dados é uma coleção de dados inter-relacionados, representando informações sobre um domínio específico.

Exemplos: Lista telefônica, controle do acervo de uma biblioteca, sistema de controle dos recursos humanos de uma empresa.

SGBD(Sistema de Gerenciamento de Banco de dados) é um software com recursos específicos para facilitar a manipulação das informações dos dados e o desenvolvimento de programas aplicativos.

Um sistema de gerência de banco de dados (SGBD) é uma coleção de programas que permite que usuários criem e mantenham bancos de dados.

Exemplos : MS SQL Server , Oracle Database, IBM DB2, MySQL , PostgreSQL.

Sistema de Banco de dados é um sistema de manutenção de registros por computador envolvendo quatro componentes principais , sendo eles dados, hardware, software e usuários. O sistema de banco de dados pode ser considerado como uma sala de arquivos eletrônica. Existe uma série de métodos , técnicas e ferramentas que visam sistematizar o desenvolvimento de banco de dados.

clip_image002

Os Objetivos de um sistema de banco de dados é isolar os usuários dos detalhes mais internos do banco de dados (abstração de dados) e também prover independência de dados ás aplicações (estrutura física de armazenamento e à estratégia de acesso).

As vantagens de utilizar um sistema de banco de dados é a rapidez na manipulação e no acesso á informação, redução do esforço humano (desenvolvimento e utilização), disponibilização da informação no tempo necessário, controle integrado de informações distribuídas fisicamente, redução de redundância e de inconsistência de informações, compartilhamento de dados, aplicação automática de restrições de segurança, redução de problemas de integridade.

Tratando os papéis humanos em um Sistema de Banco de dados no caso nossos queridos usuários. Num sistemas de Banco de dados possuímos a seguinte hierarquia “Programadores de Aplicações”, “Usuários Sofisticados”, “Usuários especializados”, “Usuários ingênuos”. Num Sistema de banco de dados também possuímos administradores, aquela pessoa que é responsável pelo controle do sistema de banco de dados sendo o “Administrador de dados (AD)” e o “Administrador do SGBD (DBA)”. Na Administração de Sistemas de banco de dados o papel do o “Administrador de dados (AD)” é efetuar a definição e atualização do esquema do Banco de dados e o papel do “Administrador do SGBD (DBA)” é a definição da estrutura de armazenamento e a estratégia de acesso, concessão de autorização para acesso a dados, definição de controles de integridade, definição de estratégias para copia de segurança (backup) e recuperação (recover), monitoramento do desempenho, execução de rotinas de desempenho, modificação da organização física.

Características Gerais de um SGBD

· Controle de Redundâncias

· Compartilhamento dos Dados

· Controle de Acesso

· Interfaceamento

· Esquematização

· Controle de Integridade

· Backups

Iremos detalhar cada característica de um SGBD para que possa compreender com clareza.

Controle de Redundâncias:

A redundância consiste no armazenamento de uma mesma informação em locais diferentes, provocando inconsistências. Em um Banco de dados as informações só se encontram armazenadas em um único local, não existindo duplicação descontrolada dos dados. Quando existem replicações dos dados, estas são decorrentes do processo de armazenagem típica do ambiente Cliente-Servidor, totalmente sob controle do Banco de dados.

Compartilhamento dos Dados:

O SGBD de incluir software de controle de concorrência ao acesso dos dados, garantindo em qualquer tipo de situação a escrita/leitura de dados sem erros.

Controle de Acesso:

O SGBD de dispor de recursos que possibilitem selecionar a autoridade de cada usuário. Assim um usuário poderá realizar qualquer tipo de acesso, outros poderão ler alguns dados e atualizar outros e outros ainda poderão somente acessar um conjunto restrito de dados para escrita e leitura.

Interfaceamento:

Um Banco de dados deverá disponibilizar formas de acesso gráfico, em linguagem natural, em SQL ou ainda via menus de acesso, não sendo uma “caixa-preta” somente sendo passível de ser acessada por aplicações.

Esquematização:

Um Banco de dados deverá fornecer mecanismos que possibilitem a compreensão do relacionamento existente entre as tabelas e de sua eventual manutenção.

Controle de Integridade:

Um Banco de dados deverá impedir que aplicações ou acessos pelas interfaces pudessem comprometer a integridade dos dados.

Backups:

O SGBD deverá apresentar facilidade para recuperar falhas de hardware e software, através da existência de arquivos de “pré-imagem” ou de outros recursos automáticos, exigindo minimamente a intervenção de pessoal técnico.

Arquitetura de Três Esquemas e a Independência dos dados

O Sistema de Banco de dados deve prover uma visão abstrata dos dados para os usuários. Essa Abstração se dá em três níveis, o primeiro nível é o externo, o segundo nível é o conceitual e o terceiro nível é o interno.

clip_image002[9]

Nível Interno (Físico):

Nível mais baixo de abstração. Descreve como os dados estão realmente armazenados, englobando estruturas complexas de baixo nível e descreve os detalhes completos do armazenamento de dados e caminho de acesso ao banco de dados.

Nível Conceitual:

Descreve quais dados estão armazenados e seus relacionamentos. Neste nível, o Banco de dados é descrito através de estruturas relativamente simples, que podem envolver estruturas complexas no nível físico. Concentra-se na descrição de entidades, tipos de dados, conexões, operações de usuários e restrições.

Nível Externo (visões do usuário):

Descreve partes do banco de dados, de acordo com as necessidades de cada usuário, individualmente ocultando o restante do banco de dados.

Linguagens de SGBD

O SGBD deve oferecer linguagens e interfaces apropriadas para cada categoria de usuários.

Linguagem de Definição de dados (DDL)

Está Linguagem é utilizada para permitir especificar o esquema do banco de dados, através de um conjunto de definições de dados.

A Compilação dos comandos em DDL é armazenada no dicionário de dados (metadados).

Linguagem de Manipulação de dados (DML)

Está Linguagem permite ao usuário acessar ou manipular os dados, vendo-os da forma como são definidos no nível de abstração mais alto do modelo de dados utilizado.

Uma Consulta (“query”) é um comando que requisita uma recuperação de informação. A parte de uma DML que envolve recuperação de informação é chamada linguagem de consulta.

Manipulação de dados:

· Recuperação da informação armazenada

· Inserção de novas informações

· Exclusão de informações

· Modificação de dados armazenados

Módulos componentes do SGBD

· Módulo de programa que fornece a interface entre os dados de baixo nível de armazenados num banco de dados e os programas aplicativos ou as solicitações submetidas ao sistema.

· Software que manipula todos os acessos ao banco de dados, proporcionando a interface de usuário ao sistema de banco de dados.

Ilustrando o papel do sistema de gerência de banco de dados, de forma conceitual:

clip_image004

O usuário emite uma solicitação de acesso.

O SGBD intercepta a solicitação e a analisa.

O SGBD inspeciona os esquemas externos (ou subesquemas) relacionados aquele usuário, os mapeamentos entre os três níveis , e a definição da estrutura de armazenamento.

O SGBD realiza as operações solicitadas no banco de dados armazenado.

Abaixo , segue imagens com arquiteturas utilizadas em SGBD´s:

clip_image006

clip_image008

clip_image010

Bom pessoal, caso alguém queira tirar alguma duvida dos exemplos citados e os conceitos explicados neste post, favor comentar para que possa ajudar da melhor maneira possível. Que a Graça e Paz estejam com Vocês.

Fonte: http://emersongaudencio.blogspot.com.br/2012/08/banco-de-dados-conceituando-banco-de_5437.html