Sistemas de Informação - Componentes PDF

Document Details

ProperRainbowObsidian

Uploaded by ProperRainbowObsidian

UNIP

Profa. Ana Travassos Ichihara

Tags

banco de dados sistemas de informação tecnologia da informação computação

Summary

Este documento apresenta os componentes de um sistema de informação, incluindo hardware, software, banco de dados, telecomunicações e procedimentos. Também discute as pessoas envolvidas e vantagens do uso de sistemas de gerenciamento de banco de dados (SGBD).

Full Transcript

Profa. Ana Travassos Ichihara Infraestrutura de tecnologia da informação  Hardware – equipamentos para realizar atividades de entrada, processamento e saída. Mídias: discos, fitas,....  Software – programas que comandam a operação dos dispositivos. Software de...

Profa. Ana Travassos Ichihara Infraestrutura de tecnologia da informação  Hardware – equipamentos para realizar atividades de entrada, processamento e saída. Mídias: discos, fitas,....  Software – programas que comandam a operação dos dispositivos. Software de sistemas. Software de aplicação.  Tecnologia de Armazenagem - Banco de dados – armazenam dados e os gerenciam.  Telecomunicações – tecnologia de rede e telecomunicações proporciona conectividade de dados, voz e vídeo a funcionários, clientes e fornecedores. Inclui tecnologia para operar redes internas da empresa, serviços prestados por companhias telefônicas ou de telecomunicações, tecnologia para operar sites, e conectar-se com sistemas computacionais por meio da Internet.  Procedimentos – inclui estratégias, políticas, métodos, regras associadas aos SIs. Ex: procedimentos de entrada de dados, procedimentos de correção de erros, procedimentos de distribuição de backups.  Pessoas – recursos humanos incluem os usuários finais e especialistas em SI - administram, programam, controlam, utilizam... Especialistas: analistas de sistemas, programadores, operadores de computador. Usuários Finais – todos os demais que utilizam sistemas de informação Fonte: O’Brien (2004). Profa. Ana Travassos Ichihara Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. SGBD Sistemas de Gerenciamento de Banco de Dados Profa. Ana Travassos Ichihara Antes...  Dados - gravação em disco usando estruturas proprietárias, definidas nos programas. Programa SO Profa. Ana Travassos Ichihara  SGBD - Sistemas de Gerenciamento de Banco de Dados - um sistema entre o programa e os dados que conheça e controle as estruturas de dados.  Primeiro SGBD comercial surgiu em 1960. Profa. Ana Travassos Ichihara Sistema Gerenciador de Banco de Dados - SGBD Um SGBD é uma coleção de programas que permite a criação (definição de estruturas de armazenamento e restrições), e manipulação (inserir, alterar... dados) das Bases de Dados. Ex: MySQL, Mycrosoft SQL Server, Oracle Database,... Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Vantagens do uso de SGBD Independência entre dados e programas: os programas não precisam incorporar estruturas de dados e não precisam controlar o acesso a esses dados. Independência entre operações e programas - permite que funcionalidades sejam implementadas nos SGBDs (usam as estruturas de banco de dados) e possam ser acessadas pela aplicação. Abstração dos dados – é necessário um modelo de dados que é apresentado aos usuários, via uma representação conceitual. Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Vantagens do uso de SGBD Controle de redundância – os mesmos dados, mapeados no mesmo local, estarão disponíveis para várias aplicações. O que garante consistência na informação. Controle de acesso – apenas pessoas autorizadas acessam os dados. Eficiência no processamento de consultas – o SGBD tem capacidade de executar as requisições sobre os dados de forma eficiente. Oferecimento de sistemas de backup e recuperação. Garantia de restrições de integridade. Redução do tempo de desenvolvimento. Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Banco de Dados Um Banco de Dados é uma coleção de dados. Um dado pode ser armazenado, ou seja, persistido. Um Banco de Dados é criado com um propósito específico. Diz respeito e é modelado a partir do mundo real. Ou seja, há uma estrutura lógica relacionada a um contexto do mundo real. Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Tipos de BD BD com Modelo Hierárquico 1960, IBM criou o IMS (Information Management System) estrutura em árvore registro pai pode possuir vários filhos registros filhos só podem possuir um registro pai BD com Modelo de Rede relacionamento em que cada registro filho pode ter vários pais diferentes Profa. Ana Travassos Ichihara BD com Modelo Relacionais Criado por Edgar Frank Codd, esse modelo é o sucessor dos modelos hierárquico e em rede. Criado com base na teoria matemática de conjuntos. Representação dos dados em tabelas que, por sua vez, são compostas de colunas (campos) e linhas (registros). Sistemas Gerenciadores de Banco de Dados Relacionais MySQL ( Open Source), Oracle, IBM DB2, SQL Server, Teradata... Profa. Ana Travassos Ichihara Banco de dados orientado a objeto agrupar os dados separados em objetos com tipos estruturados. Banco de dados baseado em grafos agrupar os dados usando grafos. Profa. Ana Travassos Ichihara Sistemas Gerenciadores de Banco de Dados Relacionais Um sistema de gerência de banco de dados (SGBDR) é um conjunto de programas que permite a criar e manter um banco de dados. MySQL ( Open Source), Oracle, IBM DB2, Sybase ESA, Teradata... Profa. Ana Travassos Ichihara Funcionalidades de um SGBDR: Serviços de Armazenamento, Recuperação e Atualização dos Dados. Catálogo acessível ao usuário. Suporte às Transações. Serviços de Controle de Concorrrência. Serviços de Recuperação. Serviços de Autorização. Suporte a Comunicação de Dados. Serviços de Integridade. Serviços para promover a independência dados Utilidades. Profa. Ana Travassos Ichihara Visão geral da estrutura do Sistema de Gerenciamento de Banco de Dados Programadores Usuários Administrador das Bases de Dados Programas Aplicativos Pre-processador de Linguagem Consultas Esquema de BD de Manipulação de dados Sistema Gerenciador de Compilador de Banco de Dados Linguagem de Definição Processador de Consulta de Dados Gerente do Dicionário Código Objeto do Programa Gerenciador de Banco de Dados Gerencia Arquivos Métodos de Acesso Gerenciador deArquivos Banco de Dados e Catálogo do Sistema Sistema de Buffer Profa. Ana Travassos Ichihara Código Objeto do Programa Processador de Consulta Gerenciador do Catálogo Controla Autorização Gerenciador de Banco de Dados Otimizador de consutla Controle de Integridade Processador de Comandos Escalonador Gerenciador de Dados Gerenciador de Buffer Gerenciador de Recuperação Métododos de Acesso Gerenciador de Arquivos Sistema de Buffer Banco de Dados e Catálogo do Sistema Profa. Ana Travassos Ichihara Pessoas e SGBD Administrador de Banco de Dados - administra e mantém as bases de dados, garantindo seu desempenho. Usa Linguagem de Definição de Dados – DDL Analistas de sistemas e programadores de aplicação- são responsáveis pela modelagem e implementação das bases de dados. Desenvolvem programas escritos em linguagem PHP, C++, C#, C, Java, entre outras, (chamadas de linguagem hospedeira), que interagem o SGBDR através de comandos em Linguagem de Manipulação de Dados –DML embutidos. Usuários finais – pessoas que usam aplicações desenvolvidas. Não precisam conhecer sobre SGBD. AD – Administrador de dados - O Administrador de Dados (AD) tem o objetivo de gerenciar o Modelo de Dados Corporativo, contribuindo para assegurar a qualidade das informações, a integração dos sistemas, a retenção e a disseminação do conhecimento dos negócios. Projetista dos SGBDs. Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Profa. Ana Travassos Ichihara Exercício – quais os papéis dos personagens de cada situação? Um sistema de informação de compras será implantado em produção, sendo necessário que João (?) faça a criação do banco de dados de compras e das estruturas de dados. _____________ O departamento de estatística de uma empresa necessita de relatórios sofisticados, assim solicita ao _________ autorização para uso da base de dados de compra. Este procede a liberação da base de dados após o treinamento e aprovação de alguns usuários específicos do departamento de estatística, no caso apenas Marta e Ricardo (?). __________ José (?) desenvolveu o Sistema de Compras usando a linguagem Java como linguagem hospedeira dos comandos SQL. ___________________ José desenvolveu o modelo de dados conceitual para o Sistema de Compras e encaminhou para aprovação de Maria, que verificou conceitos e nomenclatura dos termos utilizados por José. R_jose é programador e Maria é (?)_______ Profa. Ana Travassos Ichihara Linguagem de definição de dados - DDL e Esquema – linguagem para definição de dados. O resultado da compilação do esquema pelo compilador DDL é armazenado em um conjunto de tabelas que constituem um arquivo especial chamado de dicionário de dados. Linguagem de Manipulação de Dados – inclui recuperação, inserção, exclusão e alteração dos dados. A parte da DML responsável pela recuperação de informações é chamada de linguagem de consulta – DQL (Data Query Language). Ex: SELECT saldo from CONTA, que obtém os saldos de todas as contas. Profa. Ana Travassos Ichihara Exercício. O que é DML e o que é DDL? SELECT ra, nome CREATE TABLE Aluno FROM aluno ( ra int primary key, INSERT INTO aluno nome varchar (100) VALUES (1000, ‘Marco Vieira’) ) Profa. Ana Travassos Ichihara Compilador DML – traduz comando DML, em instruções de baixo nível, inteligíveis ao componente de execução das consultas. Pré-processador DML- converte comandos DML, inseridos em programas de aplicação, em chamadas de procedimentos normais da linguagem hospedeira. Interage com o compilador DML para gerar código apropriado. Compilador/Interpretador DDL – compila/interpreta comandos DDL e registra no dicionário de dados. Profa. Ana Travassos Ichihara Processamento de Consulta – Atividade de traduzir as consultas expressas em linguagem de alto nível em expressões que podem ser implementadas em nível físico do sistema de arquivos. Passos: I - O analisador sintático confere a sintaxe da consulta, e se nomes e relações estão compatíveis com o banco de dados. Então gera uma forma interna de representação da consulta, compreensível para o sistema de banco de dados. Por exemplo, no caso de tecnologia relacional, uma consulta pode ser expressa em expressões algébricas relacionais. Profa. Ana Travassos Ichihara A Álgebra Relacional é uma linguagem de consulta formal, porém procedimental, ou seja, o usuário dá as instruções ao sistema para que o mesmo realize uma sequência de operações na base de dados para calcular o resultado desejado. Profa. Ana Travassos Ichihara II - Otimizador de Consulta – é a atividade de selecionar o melhor plano de execução de uma consulta. É definir uma estratégia de processamento da consulta visando o menor custo. Vale a pena o sistema gastar uma quantia significativa de tempo na seleção de um bom plano de execução da consulta. Por exemplo: para a consulta: Select saldo from conta where saldo < 2500 É possível traduzir essa consulta em duas expressões algébricas: - Primeiro seleciona o saldo de todas as contas, e deste resultado, seleciona o saldo < 2500. - Seleciona as contas com saldo menor que 2500, e deste resultado seleciona o saldo. O otimizador de consulta, selecionará a que tiver menor custo de execução. Profa. Ana Travassos Ichihara Exercício Qual o papel do otimizador de consulta? Cite uma operações da álgebra relacional que pode compor Profa. Ana Travassos Ichihara Operação de Seleção: Seleciona subconjunto de tuplas que satisfazem uma condição. relação condição Aluno Mat Nome Bairro Selecionar os alunos do bairro VM 10 Ana VM 20 Marcos CC (Aluno) Bairro=‘VM’ 30 Amélia CC 40 Ricardo VM Mat Nome Bairro Select Mat, Nome, Bairro from 10 Ana VM Aluno Where Bairro = ‘VM’ 40 Ricardo VM Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Exercício Selecionar os alunos com matrícula maior que 20. Aluno Mat Nome Bairro Alusel (Aluno) 10 Ana VM Select Mat,Nome,Bairro 20 Marcos CC From AlunoBairro = `VM` 30 Amélia CC 40 Ricardo VM Resultado Where idade > 20 (Alusel) nome select (Aluno) Resultado Idade > 20 Alusel Nome Mat Nome Bairro Ana 10 Ana VM Ricardo 40 Ricardo VM Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Operação Projeção: Seleciona atributos de uma relação Aluno Selecionar a matrícula dos alunos Mat Nome Bairro 10 Ana VM (Aluno) 20 Marcos CC Mat 30 Amélia CC 40 Ricardo VM Mat 10 20 Select Mat from Aluno 30 40 Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Exercício Selecionar o nome dos alunos. Resultado Select Nome from Aluno (Aluno) Aluno Nome Mat Nome Bairro (Aluno) Resultado 10 Ana VM Nome Nome 20 Marcos CC Ana 30 Amélia CC Marcos 40 Ricardo VM Amélia Ricardo Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Exercício Selecionar o nome dos alunos do bairro VM. Aluno Mat Nome Bairro Select nome from aluno Alusel (Aluno) 10 Ana VM Where bairro=`vm 20 Marcos CC Bairro = `VM` 30 Amélia CC A Resultado (Alusel) (Aluno) 40 Ricardo VM Bairro=‘VM’ nome Resultado Nome (A)Alusel Nome Mat Nome Bairro Ana 10 Ana VM Ricardo 40 Ricardo VM Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Exercício Selecionar a matrícula dos alunos que seja menor que 40 (de duas maneiras). Aluno select Aluselmat from aluno (Aluno) where mat < 40 Mat Nome Bairro Mat < 40 10 Ana VM A = π Mat (Aluno); ) 20 Marcos CC Resultado (Alusel) 30 Amélia CC σ Mat < 40 (A); Mat 40 Ricardo VM select A = σ* from aluno where mat < 40 (Aluno) Mat < 40 ; Resultado Mat π Aluproj (A) (Aluno) 10 Mat ; Mat 20 Resultado (Aluproj) 30 Mat < 40 Profa. Ana Travassos Ichihara Guia de aula. Profa Ana T.I. Gerenciamento de transações – Atividade de gerenciar a execução apropriada das transações. Deve administrar a execução simultânea de transações de modo a evitar ocorrência de inconsistências. Transação – conjunto de várias operações no banco de dados, mas visto como uma unidade lógica de trabalho, única, pelo usuário. Ou a transação é executada por completo ou nenhuma parte dela é executada. Ex: transação de transferência de fundos. Seria inaceitável o débito em uma conta, sem o crédito na poupança. Ex inconsistência por execução simultânea. Seja duas transações: Transação A de transferência de fundo Transação B que calcula o total de dinheiro do cliente Conta Corrente do cliente = 100. Total dinheiro = 100 Débito Conta Corrente Cliente= 10 Conta Corrente Cliente = 100- 10 =90 Transfere para poupança Conta Poupança Cliente = 50 + 10 = 60 Conta Poupança = 60. Total dinheiro = 100 + 60 = 160 Profa. Ana Travassos Ichihara Propriedades ACID  Atomicidade: execução total.  Consistência: A transação cria um novo estado válido dos dados. Se houver falha o SGBD garante o retorno à situação anterior.  Isolamento: não há interferência por outra transação concorrente.  Durabilidade: dados validados são registados pelo sistema de tal forma que mesmo no caso de uma falha e/ou reinício do sistema, Profa. Ana Travassos Ichihara Gerenciamento de Recuperação – Atividade de garantir o esquema de recuperação, que é responsável pela restauração do banco de dados para um estado consistente, no caso de falhas. Garante a transação: ou tudo, ou nada. Há grande variedade de falhas: falha de energia, queda do sistema, falha no disco,... Exemplo: Se durante a transação de transferência de fundo, tenha ocorrido queda de energia após o débito, porém antes do crédito, o Gerenciamento de Recuperação, deve garantir que a conta do cliente esteja em estado anterior à ocorrência da transação, ou seja, o débito não pode estar efetivado. Gerenciamento de Concorrência – Atividade de controlar a interação entre transações concorrentes por meio de mecanismos de controle de concorrência, como por exemplo, protocolos de bloqueios. O controle da concorrência pode garantir formas de ordenação do processamento das transações. Quando muitas transações atualizam o banco de dados concorrentemente, a consistência do banco pode ser violada. É responsabilidade do gerenciador de concorrência controlar a interação entre transações concorrentes garantindo a consistência do banco de dados. Gerenciamento de Autorização e Integridade – Atividade que testa o cumprimento das integridades e a permissão ao usuário no acesso aos dados. Profa. Ana Travassos Ichihara Exercício Otimizador de Consulta Qualidade _________________ Gerenciamento de Autorização e Integridade Qualidade _________________ Gerenciamento de Concorrência Qualidade _________________ Profa. Ana Travassos Ichihara Quando não Utilizar um SGBD Aplicações simples e bem definidas onde não se espera mudanças. Principal Motivo: Investimento inicial alto Custos adicionais para implementação da solução: profissionais especializados, custo para definição e tratamento dos dados, custo adicional para prover as tarefas administrativas (manutenção de segurança, controle de concorrência, recuperação de falhas, etc.) Profa. Ana Travassos Ichihara Sob a estrutura do Banco de Dados está o modelo de dados, um conjunto de ferramentas conceituais para descrição e representação de dados e seus respectivos relacionamentos, semânticas e restrições. Profa. Ana Travassos Ichihara MODELO REPRESENTAÇÃO ABSTRATA E SIMPLIFICADA DE UM SISTEMA REAL COM A QUAL SE PODE EXPLICAR OU TESTAR O SEU COMPORTAMENTO, EM SEU TODO OU EM PARTES. Profa. Ana Travassos Ichihara Exercício Um mapa é um modelo? Sim Uma maquete é um modelo? Sim sim Profa. Ana Travassos Ichihara MODELAGEM A modelagem é um processo estruturado de criação de modelos. Profa. Ana Travassos Ichihara PROCESSO DE MODELAGEM DE DADOS 1. Observar os objetos 2. Entendimento dos conceitos 3. A representação dos objetos 4. A validação dos modelos Ciclo repetido tantas vezes quantas forem as extensões agregadas ao modelo, seja em sua fase de construção ou em sua manutenção evolutiva, adaptativa ou corretiva. Profa. Ana Travassos Ichihara Modelagem de Dados O que é Modelagem de Dados “Consiste em mapear o mundo real do sistema em um modelo gráfico que irá representar os objetos e o relacionamento existente entre os dados” Através da modelagem de dados, pretende-se capturar a semântica (significado) de uma realidade. Profa. Ana Travassos Ichihara NÍVEIS DE MODELAGEM imutável, mapeia o ambiente, muda com o negócio Objetos de Modelo Conceitual de Dados (MCD) interesse depende do tipo da tecnologia. relacional? hierárquica? Modelo Lógico de Dados (MLD) depende do tipo de implementação. descreve estruturas físicas: tamanho e tipo de campo, índices, Modelo Físico de Dados (MFD) tipo de acesso … Profa. Ana Travassos Ichihara Profa. Ana Travassos Ichihara Modelo Conceitual MER (Entidade – Relacionamento) Diagrama ER - DER entidade entidade relacionamento Cliente 1 N faz Pedido Profa. Ana Travassos Ichihara MODELO LÓGICO RELACIONAL – MLR (tecnologia relacional) Dados são representados em forma de tabelas (relações), Ou seja, através de linhas e colunas. Pessoa Nome Cidade RG José Curitiba 2589764532 Maria Curitiba 4090650431 José São Paulo 900983451 linha coluna Profa. Ana Travassos Ichihara Mapeamento do MER para o MLR M-ER MLR Profa. Ana Travassos Ichihara Modelo Físico de Dados Implementação dos modelo lógico relacional usando um SGBDR específico. DDL - especificação das estruturas Profa. Ana Travassos Ichihara FIM Profa. Ana Travassos Ichihara

Use Quizgecko on...
Browser
Browser