FATEC
–
Sistemas de Informação
Infraestrutura de tecnologia da informação
Hardware – equipamentos para realizar atividades de entrada, processamento e saída.
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 – transmissão eletrônica de sinais de comunicação para realização de tarefas por meio de redes de computadores. Internet – maior rede de computadores do mundo, trocando informações livremente. World wide web – rede de links na internet que contém textos, filmes ...
FATEC
–
Sistemas de Informação
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.
FATEC
–
Sistemas de Informação
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
FATEC
–
Sistemas de Informação
Vantagens da utilização de um SGBDR:
•
Controle de redundância dos dados.
•
Controle de acesso (segurança).
•
Armazenamento dos dados.
•
Existência de múltiplas interfaces para os usuários.
•
Representação de relacionamentos complexos entre os
dados.
•
Manutenção de restrições de integridade.
FATEC
–
Sistemas de Informação
Visão geral da estrutura do Sistema de Gerenciamento de Banco de Dados
Programadores Usuários Administrador das Bases de Dados
Programas Aplicativos
Consultas Esquema de BD
Compilador de
Linguagem de Definição de Dados
Gerente do Dicionário
Gerencia Arquivos Sistema Gerenciador de
Banco de Dados
Código Objeto do Programa
Pre-processador de Linguagem de Manipulação de dados
Processador de Consulta
Gerenciador de Banco de Dados
Gerenciador deArquivos
Sistema de Buffer Métodos de Acesso
FATEC
–
Sistemas de Informação
Código Objeto do Programa Processador de Consulta Gerenciador do Catálogo
Otimizador de consutla
Escalonador
Gerenciador de Recuperação Gerenciador de Buffer
Gerenciador de Dados
Controle de Integridade Processador de Comandos
Controla Autorização Gerenciador de Banco de Dados
FATEC
–
Sistemas de Informação
DBA – Administrador de banco de dados – Pessoa com as tarefas de: definir
esquema de banco de dados, especificar regras de integridade, fornecer
autorização de acesso e especificações das estruturas de dados. O DBA cria um conjunto de definições usando Linguagem de Definição de Dados – DDL, que são traduzidas pelo compilador DDL, que armazena essas definições em
estruturas especiais do sistema de banco de dados, como por exemplo, o dicionário de dados.
Usuário de banco de Dados
A – executam queries – usuários sofisticados interagem com o SGDB usando linguagem de consulta apropriada, a Linguagem de Manipulação de Dados
(DML) . Cada uma das solicitações é submetida ao Processador de Consultas cuja função é quebrar a as instruções DML em instruções que o sistema
FATEC
–
Sistemas de Informação
Usuário de Banco de Dados
B - Programadores de Aplicação – Interagem com o sistema através de
comandos em Linguagem de Manipulação de Dados – DML, embutidas em programas escritos em linguagem Cobol, C, Pascal, entre outras (chamadas de linguagem hospedeira).
FATEC
–
Sistemas de Informação
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 connunto de tabelas que constituem um arquivo especial chamado de dicionário de dados.
Dicionário de dados – é um arquivo de metadados: contém dados a respeito de dados.
´
Linguagem de Manipulação de Dados – inclui recuperação, inserção,
FATEC
–
Sistemas de Informação
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.
FATEC
–
Sistemas de Informação
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.
Os passos básicos envolvidos no processamento de uma consulta:
1 - Análise sintática e tradução – deve haver uma tradução da consulta expressa em linguagem adequada para o ser humano, mas não adequada para uso interno do sistema de banco de dados. 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
FATEC
–
Sistemas de Informação
2) 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.
FATEC
–
Sistemas de Informação
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
FATEC
–
Sistemas de Informação
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ênca 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 înteração entre transações concorrentes garantindo a consistência do banco de dados.
FATEC
–
Sistemas de Informação
Quando não Utilizar um SGBD
•
Aplicações simples e bem definidas onde não se espera
mudanças.
•
Aplicações de tempo-real.
•
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,
FATEC
–
Sistemas de Informação
FATEC
–
Sistemas de Informação
FATEC
–
Sistemas de Informação
MODELO
REPRESENTAÇÃO ABSTRATA E SIMPLIFICADA DE UM SISTEMA
FATEC
–
Sistemas de Informação
FATEC
–
Sistemas de Informação
MODELAGEM
A modelagem é um
processo estruturado
FATEC
–
Sistemas de Informação
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
FATEC
–
Sistemas de Informação
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”
FATEC
–
Sistemas de Informação
NÍVEIS DE MODELAGEM
Modelo Conceitual de Dados (MCD)
Modelo Lógico de Dados (MLD)
Modelo Físico de Dados (MFD)
Objetos de
interesse
imutável, mapeia o ambiente, muda com o negócio
depende do tipo da tecnologia . relacional? hierárquica?
FATEC
–
Sistemas de Informação
FATEC
–
Sistemas de Informação
FATEC
–
Sistemas de Informação
Modelo Conceitual MER - Modelo Entidade e
Relacionamento
“O modelo de dados entidade
-relacionamento baseia-se na
percepção de um universo constituído por um grupo básico
de objetos chamados entidades e por relacionamentos
entre estes objetos.
Ele foi desenvolvido a fim de facilitar o projeto de banco de
dados permitindo a especificação de um esquema de
empreendimento.
FATEC
–
Sistemas de Informação
1
N
gera
Modelo Conceitual ME-R (entidade
–
relacionamento)
relacionamento
entidade
FATEC
–
Sistemas de Informação
MODELO LÓGICO RELACIONAL - MR
Dados são representados em forma de tabelas (relações),
Ou seja, através de linhas (tuplas) e colunas (domínios).
Operações sobre as tabelas são feitas por linguagem
suportadas pela a álgebra relacional.
Pessoa
Nome
Cidade
RG
José
Curitiba
2589764532
Maria
Curitiba
4090650431
FATEC
–
Sistemas de Informação
Pessoa
RG # Nome Cidade
8976452393 Rita Paraná
8976452391 José São Paulo
8976452392 Maria Belém
Cheque devolvido
Número # Data Valor RG *
74832 01/02/2003 34,50 8976452391
89393 01/02/2003 117,60 8976452392
FATEC
–
Sistemas de Informação
M-ER
MR
FATEC
–
Sistemas de Informação
Exercício: Uma clínica pretende implementar um SI para atendimento de seus clientes. Guarda seus registros em livros conforme esquema abaixo:
1) Quais os 3 tipos de modelos criados no processo de modelagem dos dados?
FATEC
–
Sistemas de Informação
Modelos Dimensionais
Dimensões
–
armazenadas em tabelas de dimensões.
Medidas
–
representadas através de fatos.
Fatos
–
valores de uma medida. Armazenados em tabelas de
fatos.
FATEC
–
Sistemas de Informação
Modelo Estrela: Vendas
FATEC
–
Sistemas de Informação
Modelo Corporativo
•
Visão corporativa dos dados.• Diminui o tempo de desenvolvimento de um DW.
• Disponibiliza estruturas flexíveis.
• Fornece estruturas para endereçar questões para gerenciamento dos negócios.
• FS-LDM – Financial Services Industry Logical Data Model Teradata.
FATEC
–
Sistemas de Informação
Sistemas Operacionais
Composto por um conjunto de programas e rotinas
Controla a execução de qualquer software utilizado em um computador
Gerencia os recursos do computador (hardware e software) de modo a:
Possibilitar sua utilização Aumentar sua eficiência
FATEC
–
Sistemas de Informação
Tornar ao usuário a utilização do computador mais conveniente
Esconde detalhes internos
Reduz o tempo necessário a construção de programas
Utilizar o hardware do computador de forma eficiente
Significa mais trabalho obtido pelo mesmo hardware Obtida por uma melhor distribuição/ uso dos recursos
FATEC
–
Sistemas de Informação
Compartilhamento dos recursos de uma forma eficiente, organizada e segura.
FATEC
–
Sistemas de Informação
Principais finalidades
FATEC
–
Sistemas de Informação
Serviços oferecidos
Execução de programas
Controle e acesso de arquivos
Acesso aos dispositivos de entrada e saída
FATEC
–
Sistemas de Informação
Serviços oferecidos
Contabilidade
Estatísticas
Monitoração de desempenho
FATEC
–
Sistemas de Informação
Serviços oferecidos
Detecção de erros
Erros de hardware Erros de memória
Falha em dispositivos de E/ S
Erros de programação
Overflow em operações aritméticas
Acesso não-autorizado a posições de memória
FATEC
–
Sistemas de Informação
Gestão de Processos
Gestão da Memória
Gestçao do Processador
Gestão de Entrada e Saída
Gestao de arquivos
FATEC
–
Sistemas de Informação
Afinal o que é um Sistema Operacional?
Uma máquina virtual
Esconde aspectos de Hardware de modo a facilitar a vida do programador, apresentando uma interface simplificada
A interface do usuário não corresponde ao hardware existente. Permite executar o mesmo programa em vários ambientes diferentes.
Um Gerente/Alocador de Recursos
Decide que pedidos devem ser atendidos de modo que o sistema possa trabalhar de forma eficiente
FATEC
–
Sistemas de Informação
Diferentes visões- Sistema computacional
FATEC
–
Sistemas de Informação
Composição Básica
Um sistema operacional consiste, basicamente, de um núcleo
(
Kernel
) e programas de sistema.
FATEC
–
Sistemas de Informação
Chamada de sistema
Muitos dos serviços do SO são disponibilizados aos
programadores através das
system calls, ou chamadas de
FATEC
–
Sistemas de Informação
Chamada de sistema
• Método empregado para um processo usuário solicitar serviços ao SO.
• Aciona rotinas que:
Identificam o serviço
Verificam a validade dos parâmetros Executam o serviço
Retorna ao processo usuário
FATEC
–
Sistemas de Informação
Programas de sistema
Implementam tarefas básicas.
Ex: Interpretador de comandos - ativado quando o SO inicia
uma sessão de trabalho. Ex: interface gráfica de usuário.
Ex: utilitários do SO: programas de desfragmentação de
arquivos (
Speed Disk, Compress, Defrag
); utilitários antivírus
(
Norton, McAfee
); compactadores de arquivos ou discos
FATEC
–
Sistemas de Informação
FATEC
–
Sistemas de Informação
Arqutitetura SO – Monolítica
O sistema operacional é escrito como um conjunto de procedimentos, sendo que cada um pode chamar um dos demais sempre que é
necessário.
• Construção
– Compila-se todos os procedimentos com o objetivo de criar os módulos-objeto.
– Juntam-se todos os módulos-objeto usando o linker,
criando-se um único programa executável chamado kernel.
• Prós Contras
– Desempenho - Manutenção
FATEC
–
Sistemas de Informação
FATEC
–
Sistemas de Informação
Arqutitetura Cliente Servidor
Prós
– Maior proteção do núcleo: todos os processos são executados em modo usuário;
– Alta disponibilidade: se um servidor falhar, o sistema não ficará altamente comprometido;
– Maior eficiência: a comunicação entre serviços poderá ser realizada entre vários processadores ou até mesmo várias máquinas distribuídas;
– Melhor confiabilidade e escalabilidade;
Contras
– Grande complexidade para sua implementação
FATEC
–
Sistemas de Informação
Arquitetura Cliente Servidor
É fruto do resultado da tendência de um núcleo de S.O. se tornar o menor possível;
• Os serviços são disponibilizados em processos;
• Cada processo é responsável em gerenciar um conjunto específico de
funções como gerência de memória, gerência de arquivos, gerência de processos etc.;
• Dois tipos: processo cliente e processo servidor;
• A principal função do núcleo é gerenciar a comunicação entre esses
FATEC
–
Sistemas de Informação
Classificação dos SO, de acordo com:
Gerenciamento da execução de processos:
Lote / Batch;
Tempo-Compartilhado / Time-Sharing;
Tempo-Real / Real-Time.
Número de usuários por estação:
Monousuário;
FATEC
–
Sistemas de Informação
Lote / Batch
Os sistemas batch foram os primeiros tipos de sistemas operacionais multiprogramáveis a serem implementados na década de 1960. Os
programas, também chamados de jobs, eram submetidos para execução através de cartões perfurados e armazenados em disco ou fita, onde aguardavam para ser processados.
Os jobs não possuem interação com o usuário (Ex.: primórdios – compiladores, linkedições, backups).
Início: passagem entre jobs – manual
Evolução: Sequenciamento automático de jobs, transferindo o controle de
FATEC
–
Sistemas de Informação
1401 7094 1401
Leitora de cartões Unidade de Fita Entrada da Fita Sistema de Fitas Saída de Fita Impressora
Um sistema “batch” antigo. ( a ) Programadores levam cartões ao 1401.
( b ) 1401 lê batch de jobs em fita. ( c ) A operadora acopla fita de
FATEC
–
Sistemas de Informação
Tempo-Compartilhado /
Time-Sharing
Noção da fatia de tempo (quantum / time-slice);
Sistemas conhecidos como on-line: baixo tempo de resposta;
Processamento baseado em cooperação / preempção;
Tempo de resposta depende da carga do sistema;
Usuário - Ilusão de possuir a máquina dedicada a execução
de seu programa;
FATEC
–
Sistemas de Informação
Tempo-Real /
Real-Time
.
Sistemas customizados para aplicações específicas;
Processamento baseado em prioridades;
Tempo de resposta independe da carga do sistema;
Quanto a construção, são bem semelhantes aos sistemas de tempo compartilhado. Porém, os objetivos e exigências são diferentes;
Em geram, atendem (monitoram) processos externos que requerem tempos de resposta dentro de limites rígidos. Ex.: experimentos científicos, tratamento de imagens médicas, controle de processos, etc;
FATEC
–
Sistemas de Informação
Sistemas Monotarefa / Monoprogram
á
vel
Único processo aloca todos os recursos disponíveis
Execução serial das aplicações
Sub-utilização de recursos (ex: processador);
FATEC
–
Sistemas de Informação
•
Multi-programação
FATEC
–
Sistemas de Informação
Sistema Multitarefa / Multiprogram
á
veis
Vários processos compartilhando os recursos existentes;
Execução CONCORRENTE dos processos;
Preocupação com problemas de segurança e
sincronismo na execução dos processos;
Sistemas mais complexos:
FATEC
–
Sistemas de Informação
Software básico:
Programa Compilador objeto Ligador executável
biblotecas
objeto objeto
Carregador