Banco de Dados I Prof.ª Rita de Cassia Gaieski [email protected] Aula 01 Conceito de Banco de Dados e SGBD Dado: conjunto de símbolos “arranjados” a fim de representar a informação fora da mente humana. Elemento de Dado: subconjunto de símbolos que compõem um dado com significado específico, mas não representa a informação completa. Banco de Dados: é uma coleção de dados inter-relacionados, representando informações sobre um domínio específico Exemplos de BD: Lista telefônica, controle do acervo de uma biblioteca, sistema de controle dos recursos humanos de uma empresa. Sistema de Gerenciamento de Bancos de Dados (SGBD): é um software com recursos específicos para facilitar a manipulação das informações dos bancos de dados e o desenvolvimento de programas aplicativos. Exemplos de SGBD: Oracle, SQLServer, Firebird. Usuário que controla SGBD: Administrador de Banco de Dados: em inglês (Database Administrator - DBA) Usuários de Banco de Dados: Analistas de Sistemas, Programadores de aplicações, Usuários sofisticados, Usuários especialistas, Usuários navegantes (usuário final). Sistema de Bancos de Dados É um sistema de manutenção de registros por computador, envolvendo quatro componentes principais: Banco de Dados I Prof.ª Rita de Cassia Gaieski [email protected] Dados; Hardware; Software; Usuários. Objetivos de um Sistema de Bancos de Dados Isolar os usuários dos detalhes mais internos do banco de dados (abstração de dados). Prover independência de dados às aplicações (estrutura física de armazenamento e à estratégia de acesso). Vantagens: 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. Banco de dados dentro do contexto de um ambiente computacional BD SGBD Aplicação1 Aplicação2 Usuários Usuários AplicaçãoN Banco de Dados I Prof.ª Rita de Cassia Gaieski [email protected] O objetivo principal de um SGBD é gerenciar o acesso e a correta manutenção dos dados armazenados em um BD. Arquitetura Um Sistema de Banco de Dados é dividido em módulos que executam cada um suas tarefas contribuindo para o funcionamento do sistema geral. Na maioria dos casos, o sistema de banco de dados é construído sobre a base fornecida pelo sistema operacional do computador. O projeto do sistema de banco de dados precisa, então, incluir considerações sobre a interface entre o sistema de banco de dados e o sistema operacional. Modelos Lógicos de Dados Conjunto de ferramentas conceituais para a descrição dos dados, dos relacionamentos entre os mesmos e das restrições de consistência e integridade. Dividem-se em: Baseados em objetos; Baseados em registros; Modelos lógicos baseados em objetos Descrição dos dados nos níveis conceitual e de visões de usuários. Exemplos: Entidade-relacionamento, Orientado a objetos. No modelo orientado a objetos, código executável é parte integrante do modelo de dados. Modelos lógicos baseados em registros Descrição dos dados nos níveis conceitual e de visões de usuários; Banco de Dados I Prof.ª Rita de Cassia Gaieski [email protected] O banco de dados é estruturado em registros de formatos fixos, de diversos tipos; Cada tipo de registro tem sua coleção de atributos; Há linguagens para expressar consultas e atualizações no banco de dados. Exemplos: Relacional; Rede; Hierárquico. No modelo relacional, dados e relacionamentos entre dados são representados por tabelas, cada uma com suas colunas específicas. Modelagem de Dados A modelagem de dados consiste em uma série de análises conceituais e lógicas para encontrar a melhor disposição possível de armazenamento e manutenção das informações no banco de dados. A modelagem envolve um profundo estudo de caso, seguido da análise de projeto, que pode ser dividida em duas etapas: Análise de Entidades: na análise de entidades o objetivo é identificar os elementos com algum significado próprio, tais como Clientes, Produtos, Pedidos, Locação, etc. A entidade pode ser algo concreto como Clientes e Produtos ou algo abstrato como Locação e Venda. Análise de Relacionamentos: Na análise de relacionamentos o objetivo é definir como e quando as entidades se relacionam, isto é particularmente importante a fim de dar maior entendimento do problema Banco de Dados I Prof.ª Rita de Cassia Gaieski [email protected] Modelo Conceitual O modelo conceitual concentra-se no mais alto nível de abstração e não leva em conta o banco de dados em si, mas a forma como as estruturas serão criadas para armazenar os dados. Domínio do problema, e não domínio da solução e não deve ser confundido com a arquitetura do software. Entidade-Relacionamento Modelo conceitual de alto nível empregado em projetos de aplicações de BD, criada em 1976 por Peter Chen; Modelo baseado na percepção do mundo real, que consiste em um conjunto de objetos básicos chamados entidades e nos relacionamentos entre esses objetos; Serve para facilitar o projeto de banco de dados, possibilitando a especificação da estrutura lógica geral do banco de dados e possui notação em forma de diagramas Diagrama Entidade-Relacionamento A estrutura lógica geral de um banco de dados pode ser expressa graficamente por um Diagrama Entidade-Relacionamento.