Módulo 16 – CONCEITOS DE BANCO DE DADOS Quando nos referimos a um computador como máquina, observamos as suas características em armazenar e gerenciar informações, além dessas características, existem outras como velocidade de processamento e interação com o usuário. Segundo (DATE, 1990), podemos conceituar um banco de dados como sendo um sistema de armazenamento de dados baseado em computador, cujo principal objetivo é registrar e manter informações consideradas significantes a qualquer organização ou um único usuário. Utilização inicial dos computadores: Dados numéricos Quantidade limitada de informações Processamento serial Poucos recursos para programação Ênfase no algoritmo Dados cativos dos programas Dados em segundo plano Evolução Dados em maior volume Maior variedade de informações Meios de maior capacidade Consultas complexas É importante que nos atenhamos a alguns aspectos importantes sobre banco de dados: Um banco de dados é baseado em um relacionamento existente entre os seus elementos de dados, com o intuito de prevenir a redundância dos dados. (SALEMI, 1983); Coleção de dados relacionados [Elmasri & Navathe]; Coleção de dados logicamente coerente e com algum significado inerente; É projetado, construído e “populado” com dados para um objetivo específico; Representa algum aspecto do mundo real, algumas vezes chamado de minimundo [Golendziner]; Conjunto de dados que contém informações sobre um empreendimento particular [Korth & Silberschatz]; Se unirmos os conceitos que citamos acima, podemos chegar à conclusão que um banco de dados é um sistema de armazenamento composto por um arquivo físico de dados, relacionados entre si para a consulta e atualização pelos usuários. 16.1 Conceitos de dados e informação É importante definir algumas diferenças existentes entre dados e informação, pois a principio eles parecem ter o mesmo significado, mas se observarmos, levando em conta os sistemas de banco de dados podemos chegar à conclusão que existem diferenças significativas entre ambos. Segundo o dicionário Aurélio, os dados são: “Elemento de informação, ou representação de fatos ou de instruções, em forma apropriada para armazenamento, processamento ou transmissão por meios automáticos”. Segundo o dicionário Aurélio, as informações são: “Coleção de fatos ou de outros dados fornecidos à máquina, a fim de se objetivar um processamento.” Generalizando os dois conceitos citados acima, podemos levar em conta o conceito do professor Eduardo Moresi que fala que “os dados são sinais que não foram processados, correlacionados, integrados, avaliados ou interpretados de qualquer forma e correspondem a matéria-prima a ser utilizada na produção de informações.” 16.2 Evolução no armazenamento dos dados A maneira de armazenar os dados sofreu uma evolução ao longo dos tempos. Antigamente era feito um arquivamento de registro em grandes arquivos existentes nas empresas, depois surgiu o processamento de arquivos em sistemas de arquivos, só que essa maneira era falha por não prevenir a redundância de informações, e por final surgiu os sistemas de processamento de banco de dados que permitiam armazenar todos os arquivos em um único local. 16.2.1 Sistemas de arquivos O armazenamento de informações nos sistemas de arquivos possui uma série de limitações: Dados de diferentes aplicações não estão integrados Projetados para atender a uma aplicação específica Dados separados, isolados e duplicados Os arquivos podem ser incompatíveis entre si Como implementar novas regras (restrições) quando as restrições atingem vários itens em diferentes arquivos? Como assegurar após uma falha que os dados sejam salvos em seu último estado consistente? 16.2.2 Sistema de banco de dados No sistema de banco de dados, os dados são armazenados em um único local, em uma base única chamada de banco de dados. 16.2.2.1 Vantagens em se utilizar o sistema de banco de dados Eliminação de redundância: Eliminação de dados primitivos do sistema, permitindo que os dados que eventualmente são comuns a mais de um sistema são compartilhados entre eles, resumindo, permite o de vários sistema a uma única informação. Eliminação de inconsistências: Através do armazenamento de informações em um único local, os usuários poderão utilizar uma informação confiável. Compartilhamento de dados: permite a utilização simultânea de um dado por mais de uma aplicação, independente da operação que esteja sendo executada. Restrições de segurança: Podemos definir para cada usuário um nível de acesso desejado, impedindo que usuários não autorizados utilizem ou atualizem determinados campos ou arquivos. Padronização dos dados: Permite a padronização dos campos de armazenamento, seguindo um formato e padrões pré-estabelecidos pela empresa. Manutenção da integridade: Impede que determinado código ou chave em uma tabela não tenha correspondência em outra tabela. 16.2.3 Sistema gerenciador de banco de dados (SGBD) O SGBD é composto por uma coleção de programas permitindo que o usuário defina, construa e manipule bases de dados para diversas funcionalidades. O software SGBD pode ser dividido em modelo relacional e modelo orientado a objeto, onde esses modelos representam a forma de armazenamento dos dados. Características Gerais de um SGBD: Interação com o gerenciador de arquivos Garantia de Integridade Garantia de Segurança Recuperação e Backup Controle de Concorrência Interface de Manipulação