Sumário. BD Distribuído (BDD)
|
|
|
- Paula Stachinski Gil
- 7 Há anos
- Visualizações:
Transcrição
1 Sumário Introdução ao Processamento de Consultas Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos de BDs Distribuídos 8 SQL Embutida BD Distribuído (BDD) Definição coleção de múltiplos BDs logicamente interrelacionados e dispersos sobre uma rede de computadores Motivação organizações sofisticadas estrutura geograficamente distribuída e necessidade de compartilhar dados avanço da computação distribuída e das redes maior eficiência de acesso e processamento paralelo integração de dados acesso unificado a dados heterogêneos
2 BDC x BDD BD Centralizado BD único acessado por uma ou mais aplicações locais e/ou remotas através de transações centralizadas nodo nodo rede BD nodo 3... nodo n BD Distribuído vários BDs autônomos (homogêneos ou não); aplicações o acessam através de transações distribuídas (executam em um ou mais BDs) BD nodo nodo rede BD BD 3 nodo 3... nodo n BD n BDD - Vantagens Transparência omite detalhes sobre a distribuição dos dados transparência de localização e nomeação uma instrução DML não se preocupa onde está o dado uma vez informado um dado, ele é buscado em locais onde esteja definido, mesmo tendo nomes diferentes transparência da forma de acesso define-se uma consulta sem se preocupar com futuras transformações sobre ela para alcançar os dados desejados» transparência de dialeto DML - consulta não se preocupa com a DML de cada BD» transparência de fragmentação/replicação - decomposição da consulta - busca-se o nodo mais próximo onde está o dado um catálogo robusto é requerido (DDD)
3 BDD - Vantagens Confiabilidade e Disponibilidade se um nodo falha, outros nodos podem processar transações dados são encontrados em diversos nodos Desempenho não é Prejudicado mantém-se dados mais próximos do local onde são mais necessários BDs locais são independentes e menores que um grande BDC menor overhead para transações menos transações executando do que em um BDC consultas podem ser desmembradas e executadas em paralelo em diferentes nodos Facilidade de Expansão arquitetura de um BDD permite a inclusão de novos BDs Funções de um SGBDD Controle da Transparência de Armazenamento uso de um DDD para controle da estrutura, RIs, replicação e fragmentação de dados nos nodos Processamento de Consultas Distribuídas capacidade de transmissão de consultas a nodos remotos (com possível tradução) planejamento de estratégias de acesso quais dados de quais nodos serão acessados? qual a ordem e a sincronização para execução da consulta nestes nodos?... Gerenciamento de Transações Distribuídas técnicas adaptadas de controle de concorrência e recovery consideração de falhas em nodos e falhas de comunicação, garantia de ACID distribuído,... 3
4 Projeto de BDC Projeto de BDD definir e estruturar dados persistentes relevantes para um domínio de aplicação levantamento de requisitos, modelagem conceitual, modelagem lógica e modelagem física Projeto de BDD (do zero ) modelagem lógica definir adicionalmente a alocação do esquema lógico nos BDs dos nodos decisão sobre quais dados serão armazenados em quais nodos leva em conta fragmentação e replicação de dados Fragmentação de Dados Separação dos dados de uma relação para fins de armazenamento em mais de um nodo definição de um esquema de fragmentação Tipos de fragmentação horizontal, vertical e mista 4
5 Fragmentação Horizontal (FH) Separação de uma relação R em nível de tupla Cada fragmento horizontal fh i de R (fh i (R)) é definido através de uma seleção fh i (R) = σ c (R) R é obtida através da união de todos os seus fragmentos R = fh (R) fh (R)... fh n (R) FH com fragmentação derivada tuplas de uma relação secundária S (com referência à R) são também fragmentadas Filiais número cidade FH - Exemplo Funcionários endereço código nome endereço DN cargo salário filial Fpolis Blumenau Blumenau Fpolis Fpolis rua X, 0 rua H, 55 rua E, 8 rua K, 87 rua Q, João Maria Paulo Carlos Ana rua X, 0 rua H, 55 rua E, 8 rua K, 87 rua Q, 5 //70 /04/7 3/08/7 4/0/73 5/05/74 vendedor caixa vendedor caixa vendedor 500,00 00,00 300,00 000,00 300,00... fh σ cidade = Blumenau (Filiais) fh (derivada para Funcionários) σ cidade = Fpolis (Filiais) número 3 cidade Blumenau Blumenau endereço rua H, 55 rua E, 8 número 4 5 cidade Fpolis Fpolis Fpolis endereço rua X, 0 rua K, 87 rua Q, 5 código 3 nome João Maria Paulo endereço rua X, 0 rua H, 55 rua E, 8... filial... 5
6 Fragmentação Vertical (FV) Separação de R em nível de atributo Cada fragmento vertical fv i de R (fv i (R)) é definido através de uma projeção fv i (R) = π a,..., aj (R) R é obtida através da junção natural de todos os seus fragmentos R = fv (R) fv (R)... fv n (R) requer a mesma chave candidata em todos os fragmentos FV - Exemplo código nome endereço DN cargo salário filial João rua X, 0 //70 vendedor 500,00 3 Maria Paulo rua H, 55 rua E, 8 /04/7 3/08/7 caixa vendedor 00,00 300,00 Funcionários 4 Carlos rua K, 87 4/0/73 caixa 000,00 5 Ana rua Q, 5 5/05/74 vendedor 300,00... fv (dados pessoais) π código, nome, endereço, DN (Funcionários) fv (dados profissionais) π código, cargo, salário, filial (Funcionários) código nome endereço DN código cargo salário filial João rua X, 0 //70 vendedor 500,00 Maria rua H, 55 /04/7 caixa 00,00 3 Paulo rua E, 8 3/08/7 3 vendedor 300,00 4 Carlos rua K, 87 4/0/73 4 caixa 000,00 5 Ana rua Q, 5 5/05/74 5 vendedor 300,
7 Fragmentação Mista (FM) Separação de R em nível de tupla e atributo R é obtida através da execução de operações de reconstrução de fragmentos horizontais e verticais exemplo. Funcionários são separados por filial. para cada filial, separar dados pessoais e profissionais de funcionários ordem de reconstrução. junção natural dos FVs de funcionários em cada filial. união de dados de funcionários por filial Esquema de Alocação Definição dos nodos onde serão armazenados os fragmentos (ou relações completas) definição de associações fragmento nodo Se associação é Fragmento [,N] Nodo não há replicação Se associação é Fragmento N M Nodo há replicação Possibilidades de replicação total, nula ou parcial 7
8 Possibilidades de Replicação Total desempenho bom para consultas não há necessidade de acesso remoto muita redundância de dados e desempenho ruim para atualizações manutenção de cópias consistentes (uso de triggers, por exemplo) scheduler e recovery mais complexos bloqueios em todos os nodos UNDO e REDO em todos os nodos Nula inverte-se as vantagens e desvantagens Parcial meio termo entre as opções anteriores Projeto do Esquema de Alocação Considera basicamente metas de desempenho no acesso ao BDD ex.: rapidez nas atualizações (baixa distribuição) X confiabilidade (alta distribuição),... freqüência de transações em cada nodo pode ser o gargalo do BDD, se distribuição foi mal definida (ex.: muitos dados concentrados em um nodo) 8
9 Projeto do Esquema de Alocação Considerações sobre replicação deseja-se alta disponibilidade; transações desejam dados que podem estar em qq nodo; grande parte das transações é de leitura replicação total transações que acessam determinados dados partem geralmente dos mesmos nodos replicação parcial destes dados nestes nodos atualizações ocorrem em dados cadastrados localmente replicação nula (apenas fragmentação dos dados de interesse local) Estudo de Caso de Projeto BDD: Clínica Uma clínica de uma cidade possui um posto matriz no centro e outros postos em bairros. No posto matriz fica o departamento pessoal. Cada posto tem um código, rua, número, bairro, CEP e fone. A clínica emprega médicos e funcionários e presta serviço a pacientes através de consultas com médicos (consultas marcadas devem ser mantidas no BD). Um funcionário trabalha em um posto e possui um código, nome, CPF, salário, função, data de admissão e turno de trabalho. Médicos dão atendimento em um certo subconjunto de postos (com uma escala semanal de horários predefinida em cada posto, atendendo em uma sala do posto). Um médico tem especialidade, código, CRM, nome, salário, endereço, fone residencial e celular para contato e data de admissão. Os postos oferecem atendimento para todas as especialidades que a clínica suporta. Apenas pacientes que residem na cidade tem direito a consultar nos postos, devendo se dirigir ao posto do seu bairro. Para todo paciente cadastra-se um código, nome, rua, número, bairro, RG, data de nascimento e eventual(is) problema(s). 9
10 Estudo de Caso - Esquema ER Estudo de Caso - Esquema BDDR Postos (nroposto, CEP, fone, endereço, bairro) Funcionários (codf, nome, CPF, salário, função, admissão, turno, nroposto) Pacientes (codp, nome, rua, número, bairro, RG, DN) Problemas (codp, descrição) Médicos (codm, CRM, nome, especialidade, admissão, salário, endereço, foneres, celular) Atendimentos (codm, nroposto, sala) Escalas (codm, nroposto, dia, hora-início, hora-término) Consultas (codm, nroposto, codp, data, hora) 0
11 Estudo de Caso - Esquema Alocação. Dados de postos, médicos e seus atendimentos e escalas, funcionários, consultas, pacientes e seus problemas: fragmentados por posto (supõe-se um nodo por posto). Apenas alguns dados de Médicos são necessários em cada posto: nome, codm, especialidade, endereço, celular, foneres (idem para Funcionários: codf, nome, função, turno) 3. Dados de médicos replicados nos postos em que trabalham 4. Posto matriz mantém dados completos de médicos, funcionários e postos Para cada Posto X : FragPostoX σ bairro = X (Postos) FragPacX σ bairro = X (Pacientes) FragProbPacX Problemas π codp (FragPacX) FragFuncX π codf,..., turno, nroposto (Funcionários) π nroposto (FragPostoX) FragAtendX Atendimentos π nroposto (FragPostoX) FragEscalasX Escalas π nroposto (FragPostoX) FragConsultasX Consultas π nroposto (FragPostoX) FragMedX π nome, codm,..., foneres (Médicos) π codm (FragAtendX) Transações em BDD Duas categorias de transações locais manipulam apenas dados locais não replicados globais (ou distribuídas) manipulam dados de outros nodos Cada BD local possui um gerente de recovery e de scheduler capaz de coordenar a recuperação e o escalonamento de requisições de dados de transações locais pode ser capaz de realizar a mesma coordenação para transações distribuídas
12 Problemas Adicionais com Gerência de Transações Distribuídas Replicação e Fragmentação de dados scheduler deve manter cópias consistentes em caso de atualização uma transação distribuída só encerra com sucesso se a consistência global for garantida recovery deve manter atomicidade e durabilidade de valores de cópias e de fragmentos em caso de falha Novos tipos de falhas falha em um nodo (ou no BD do nodo) falha de comunicação (na rede ou em mensagens) Scheduler de um BDD Controles adicionais divide uma transação distribuída em sub-transações para execução em outros nodos coordena o commit ou o abort distribuído Técnicas de bloqueio são geralmente adotadas bloqueios devem ocorrer em todas as cópias e fragmentos de dados desejados por transações deve haver nodos responsáveis pela coordenação do escalonamento algumas técnicas coordenador de bloqueio central coordenador de bloqueio central com auxiliares coordenação de bloqueio distribuída
13 Coordenador Central BD lock-s(tz,d ); unlock(tx, D ) nodo nodo BD lock-s (Tw,D 3 ) rede BD 3 nodo 3 lock-x(ty,d )... nodo n BD n Vantagens controle de concorrência é simples (gerência em um único local, como em BDC) nodos que não são coordenadores: menor overhead de gerenciamento de transações Desvantagens sobrecarga de gerência de concorrência em um único nodo se o coordenador falha... (!) (coordenador de bloqueio) Coordenador Central c/ Auxiliar(es) BD lock-s(tz,d ); unlock(tx, D ) nodo nodo rede (auxiliar) BD info. bloq. BD 3 nodo 3 lock-x(ty,d )... nodo n BD n (coordenador de bloqueio) Vantagens controle de concorrência ainda é simples se o coordenador falha, o(algum) auxiliar é eleito coordenador Desvantagem overhead para sincronização das informações de bloqueio entre o coordenador e o(s) auxiliar(es) 3
14 Coordenação Distribuída BD lock-s(tz,d ); unlock(tx, D ) nodo nodo BD lock-s (Tw,D 3 ) rede BD 3 nodo 3... nodo n BD n lock-x(ty,d ) Cada nodo coordena os bloqueios dos seus dados Vantagens nenhum nodo fica sobrecarregado com gerência de bloqueios se um nodo falha, não compromete todas as transações ativas Desvantagem difícil prever deadlock distribuído um nodo não tem conhecimento de todos os bloqueios no BDD a menos que se use uma técnica que evite ou detecte deadlock (ex.: PL Conservador, grafo de espera global,...) Scheduler de um BDD Técnicas que usam coordenador central N c se não há auxiliares e N c falha, transações distribuídas ativas são abortadas e um novo nodo assume o papel de coordenador há a possibilidade de ocorrer eleição (caso de falha de nodo ou de comunicação com N c ) um nodo N i tenta comunicação várias vezes com N c e seus auxiliares se a comunicação foi sem sucesso, N i assume que houve falha e tenta se eleger coordenador N i envia mensagens aos demais nodos, solicitando a sua eleição como novo coordenador» se receber uma maioria de votos e nenhuma mensagem que outro nodo tornou-se coordenador, N i é eleito 4
15 Recovery em um BDD Controles adicionais para transações distribuídas detecção de falhas no ambiente distribuído nodo ou de comunicação (falhas distribuídas) tratamento de falhas em transações fica a cargo do nodo que gerou a transação o nodo que gera uma transação T x é o coordenador de recovery de T x Recovery em um BDD Atomicidade e Durabilidade Distribuída técnica PC (-Phase Commit) considera-se uma transação distribuída T x coordenada por um nodo C i protocolo PC inicia quando C i recebe mensagens de todos os nodos ( finish T x ), sinalizando que já executaram todas as ações de T x pressupõe que C i já executou com sucesso as atualizações de T x e está pronto para o commit» caso contrário, C i teria notificado abort T x a priori pressupõe que nenhum nodo participante tenha abortado T x anteriormente ou tenha falhado sem enviar finish T x» neste caso, C i teria notificado abort T x a priori 5
16 Técnica PC Fase Confirmação de Commit C i envia prepare T x para os nodos que executaram T x C i grava antes <prepare Tx> no seu Log cada nodo N k informa se pode efetivar ou não T x, enviando ready T x ou abort T x se N k enviou ready Tx e ela foi recebida com sucesso em C i, N k grava <ready Tx> no seu Log Fase Decisão Técnica PC C i recebe (ou não) respostas e decide o que faz se C i recebe ready T x de todos, ele realiza o commit grava <commit Tx> no Log envia commit T x para os nodos e todos registram no Log se C i recebe confirmação do commit Tx de todos os nodos ( acknowledge T x ) C i grava <complete Tx> no Log» garantia de que Tx está realmente encerrada no BDD» evita REDO(Tx) em caso de falha posterior caso contrário 6
17 Falha em um Nodo do BDD Pode ocorrer enquanto uma transação distribuída T x está ativa ou aguardando o commit distribuído pode afetar um nodo N k ou o coordenador C i Se N k falha antes de enviar ready T x C i aborta T x depois de enviar ready T x C i efetiva T x C i assume que quando N k voltar à ativa, irá se recuperar Falha em um Nodo do BDD Quando N k volta à ativa, passa por um processo de recovery de cada uma das suas transações distribuídas T x (além das locais!) se encontra <commit Tx> REDO(T x ) se encontra <abort Tx> ou nenhum registro sobre o encerramento de T x UNDO(T x ) se encontra <ready Tx> consulta C i para saber o destino de T x ( status T x ), realizando REDO(T x ) ou UNDO(T x ), conforme o caso 7
18 Falha no Coordenador C i de uma T x Outro nodo participante na execução de T x assume a coordenação (C novo ) exemplo: processo de eleição ou ordenação pré-definida de nodos C novo questiona o status de T x em si próprio e nos demais nodos participantes (alguns casos a considerar). se alguém retorna <commit T x > ou todos retornam <ready T x > efetiva-se T x C novo retoma o protocolo PC a partir da fase. se alguém retorna <abort T x > aborta-se T x C novo retoma o protocolo PC a partir da fase 3. se ninguém retorna <commit T x > ou <abort T x >, e alguém retorna <ready T x > T x está em processo de efetivação C novo retoma o protocolo PC a partir da fase (re-envia prepare Tx para quem não retornou <ready T x >) 4. se ninguém retorna <commit T x > ou <abort T x > ou <ready T x > T x está em andamento deve-se esperar que C i se recupere, pois C i pode decidir por abortar Tx OU decidir-se por abortar Tx, caso se ultrapasse um timeout de espera Exercício Suponha um BDD com 4 nodos (N, N, N3 e um nodo coordenador de transações Ci) e os seguintes Logs: N N N3 Ci <start T> <write T,x,,> <ready T> <write T,q,5,7> <write T3,g,0,> <write T3,h,4,> <write T,r,5,7> <write T,w,,8> <write T3,b,,5> <ready T3> a) suponha que N falha. Que ações Ci irá tomar com relação a T e T3? b) suponha que N voltou a ativa após uma falha. Que ações ele irá tomar? c) suponha que o BDD se recupera por completo de uma falha de sistema. Que ações Ci irá tomar? d) suponha que Ci falha e N3 assume a coordenação de T e T3. Que ações N3 irá tomar? e) suponha que Ci falha e N assume a coordenação de T e T. Que ações N irá tomar? <start T> <write T,y,8,0> <write T,z,,4> <write T3,a,5,3> <write T,f,6,9> <prepare T> <prepare T> <commit T> <prepare T3> 8
19 Exercício - Respostas Suponha um BDD com 4 nodos (N, N, N3 e um nodo coordenador de transações Ci) e os seguintes Logs: N N N3 Ci <start T> <write T,x,,> <ready T> <write T,q,5,7> <write T3,g,0,> <write T3,h,4,> <write T,r,5,7> <write T,w,,8> <write T3,b,,5> <ready T3> a) suponha que N falha. Que ações Ci irá tomar com relação a T e T3? COMMIT(T), pois todos os nodos enviaram ; ABORT(T3), pois N não enviou <ready T3> <start T> <write T,y,8,0> <write T,z,,4> <write T3,a,5,3> <write T,f,6,9> <prepare T> <prepare T> <commit T> <prepare T3> Exercício - Respostas Suponha um BDD com 4 nodos (N, N, N3 e um nodo coordenador de transações Ci) e os seguintes Logs: N N N3 Ci <start T> <write T,x,,> <ready T> <write T,q,5,7> <write T3,g,0,> <write T3,h,4,> <write T,r,5,7> <write T,w,,8> <write T3,b,,5> <ready T3> b) suponha que N voltou a ativa após uma falha. Que ações ele irá tomar? REDO(T) gravando <commit T> no seu Log pois Ci gravou <commit T>; Aguarda o commit de T, pois existe um <prepare T> no Log de Ci e ele já enviou com sucesso um <start T> <write T,y,8,0> <write T,z,,4> <write T3,a,5,3> <write T,f,6,9> <prepare T> <prepare T> <commit T> <prepare T3> 9
20 Exercício - Respostas Suponha um BDD com 4 nodos (N, N, N3 e um nodo coordenador de transações Ci) e os seguintes Logs: N N N3 Ci <start T> <write T,x,,> <ready T> <write T,q,5,7> <write T3,g,0,> <write T3,h,4,> <write T,r,5,7> <write T,w,,8> <write T3,b,,5> <ready T3> c) suponha que o BDD se recupera por completo de uma falha de sistema. Que ações Ci irá tomar? REDO(T), pois existe <commit T> no seu Log; Questiona o status de T e T3 nos nodos que estão processando estas transações T poderá ser efetivada com sucesso no caso de T3, Ci enviará novo prepare T3 p/ N <start T> <write T,y,8,0> <write T,z,,4> <write T3,a,5,3> <write T,f,6,9> <prepare T> <prepare T> <commit T> <prepare T3> Exercício - Respostas Suponha um BDD com 4 nodos (N, N, N3 e um nodo coordenador de transações Ci) e os seguintes Logs: N N N3 Ci <start T> <write T,x,,> <ready T> <write T,q,5,7> <write T3,g,0,> <write T3,h,4,> <write T,r,5,7> <write T,w,,8> <write T3,b,,5> <ready T3> d) suponha que Ci falha e N3 assume a coordenação de T e T3. Que ações N3 irá tomar?. Questiona o status de T em N, N e N3, e questiona o status de T3 em N e N3: a) Aplica o protocolo PC (passo ) para T, pois todos os nodos têm nos seus Logs; b) Aplica o protocolo PC (passo ) para T3, pois N não tem <ready T3> no seu Log <start T> <write T,y,8,0> <write T,z,,4> <write T3,a,5,3> <write T,f,6,9> <prepare T> <prepare T> <commit T> <prepare T3> 0
21 Exercício - Respostas Suponha um BDD com 4 nodos (N, N, N3 e um nodo coordenador de transações Ci) e os seguintes Logs: N N N3 Ci <start T> <write T,x,,> <ready T> <write T,q,5,7> <write T3,g,0,> <write T3,h,4,> <write T,r,5,7> <write T,w,,8> <write T3,b,,5> <ready T3> e) suponha que Ci falha e N assume a coordenação de T e T. Que ações N irá tomar? Conclui T, pois somente ele está executando esta transação; Questiona o status de T em N, N e N3 e: aplica o protocolo PC (passo ) para T, pois todos têm nos seus Logs <start T> <write T,y,8,0> <write T,z,,4> <write T3,a,5,3> <write T,f,6,9> <prepare T> <prepare T> <commit T> <prepare T3> Processamento de Consultas em BDD BDC estimativas de custo baseiam-se mais no número de acessos locais a disco BDD consultas podem requisitar dados em vários nodos, logo há outros fatores a estimar custo do volume de dados transmitido na rede deve ser o menor possível! processamento paralelo de partes da consulta em diferentes nodos DDD mantém a localização e as filtragens H e V que indicam em quais nodos estão os fragmentos de dados
22 Processamento de Consultas em BDD Dada uma consulta que envolva uma relação R, investiga-se como R está armazenada no BDD R está replicada em nodos remotos escolhe-se o nodo com menor custo de transmissão Obs.: esta premissa vale para qualquer acesso remoto, mesmo s/ replicação R está fragmentada em vários nodos deve-se realizar transformações na consulta transformação é feita com base nas informações do DDD R está replicada e fragmentada ambas as ações devem ser consideradas Exemplos de Dados no DDD Nodo filialfpolis.empresa.br fragmento FFp relação global: Filiais predicado FH: cidade = Fpolis atributos FV: * fragmento FuncFp relação global: Funcionários predicado FH: filial IN (select código from FFp) atributos FV: código, nome, endereço, cargo, DN Nodo filialblumenau.empresa.br fragmento FBlu...
23 Transformação de Consultas Exemplo BDD de uma empresa distribuído por filiais 3 nodos de filiais: Fpolis, Blumenau e Joinville 3 FHs da relação Filiais: FFp, FBlu e FJv Consulta C: σ cidade = Fpolis (Filiais) transforma C em: σ cidade = Fpolis (FFp) σ cidade = Fpolis (FBlu) σ cidade = Fpolis (FJv) predicado de C está contido predicado de C + predicado do FH retorna φ ou é igual ao predicado do FH (esses fragmentos são desconsiderados!) (resultado final da transformação de C) se há fragmentação vertical, verificar se algum atributo desejado por C (em π ou σ) encontra-se no fragmento (FFp) se nenhum atributo é encontrado, C não executa no fragmento Tratamento de Junções Se junções ocorrem entre dados armazenados em nodos diferentes encontrar uma alternativa que implique menor volume de dados transmitidos entre nodos Situação Exemplo Nodo: Func (codf, nome, sobrenome, DN, salário,..., nrofil) estimativas: n Func = tuplas; t Func = 00 bytes; t Func (codf) = 9 bytes; t Func (nrofil) = 4 bytes; t Func (nome) = 5 bytes; t Func (sobrenome) = 5 bytes Nodo: Filiais (nrofil, nomefil, cidade,...) estimativas: n Filiais = 00 tuplas; t Filiais = 35 bytes; t Filiais (nrofil) = 4 bytes; t Filiais (nomefil) = 0 bytes 3
24 Tratamento de Junções - Exemplo Consulta formulada em um Nodo3: π nome, sobrenome, nomefil (Func Filiais) Temos: tam Func : * 00 = bytes tam Filiais : 00 * 35 = bytes t resultado = = 40 bytes tam resultado = * 40 = bytes Estimando custo de transmissão alternativa : transferir as relações para nodo3 e processar a consulta custo transmissão = tam Func + tam Filiais = bytes Tratamento de Junções - Exemplo Estimando custo de transmissão alternativa : transferir a relação Func para o nodo, processar a consulta no nodo e enviar o resultado para o nodo3 custo transmissão = tam Func + tam resultado = bytes alternativa 3: transferir a relação Filiais para o nodo, processar a consulta no nodo e enviar o resultado para o nodo3 custo transmissão = tam Filiais + tam resultado = bytes (Melhor!) 4
25 Boa Estratégia para Junções em BDDs Consulta formulada no nodo π nome, sobrenome, nomefil (Func σ cidade = Fpolis (Filiais)) alternativa passo: filtra Filiais pela cidade de Fpolis e envia para o nodo supondo C Filiais (cidade) = 0 custo transmissão = C Filiais (cidade) * t Filiais = 0*35 = 700 bytes passo: realiza a junção em temp, projeta os atributos necessários (π nome, sobrenome, nrofil (temp)) e envia para o nodo se n Func = e n Filiais = 00, em média 00 funcionários trabalham em uma filial: C Func (nrofil) = 0.000/00 = 00 se temos 0 filiais em Fpolis, temos.000 funcionários selecionados: n temp = 0 * C Func (nrofil) =.000 custo transmissão = (t nome (temp) + t sobrenome (temp) + t nrofil (temp)) * n temp = 34 *.000 = bytes custo total transmissão = = bytes Boa Estratégia para Junções em BDDs Consulta formulada no nodo π nome, sobrenome, nomefil (Func σ cidade = Fpolis (Filiais)) alternativa passo: filtra Filiais pela cidade de Fpolis em temp, projeta nrofilial em temp e envia temp para nodo custo transmissão = C Filiais (cidade) * t Filiais (nrofil) = 0*4 = 80 bytes passo: idem ao passo da alternativa custo transmissão = bytes custo total transmissão = = bytes Melhor alternativa, pois somente a chave para junção foi transmitida! 5
26 Processamento Paralelo de Consultas Se uma consulta envolve dados de mais de um nodo, o plano de execução pode considerar processamento paralelo Exemplos σ cidade = Fpolis zona = sul salário > 000 (Filiais Func) processa no nodo processa no nodo supondo filiais fragmentadas por cidade: (FCri) (FFp) (FBlu) (FJv) processa no nodo de Fpolis processa no nodo de Blumenau Exercício A relação Func está no nodo e Filiais está fragmentada por cidade, estando as filiais de Fpolis no nodo (FFp) (n FFp = 0) e as filiais de Blumenau no nodo3 (FBlu) (n FBlu = 0) Dada a seguinte consulta no nodo: π nome,codf,func.nrofil (σ Func.nroFil = Filiais.nroFil (Func X Filiais)) (Filiais.cidade = Fpolis Filiais.cidade = Blumenau ) pode-se considerar algumas alternativas, como: A) filtrar os funcionários desejados (de Fpolis e de Blumenau) no nodo e enviar o resultado para o nodo A) trazer os atributos desejados de funcionários e os códigos das filiais de Blumenau para o nodo e processar a consulta no nodo a) Qual alternativa tem o menor custo de transmissão? b) O que pode ser processado em paralelo em A e A? 6
27 Exercício Resposta A A relação Func está no nodo e Filiais está fragmentada por cidade, estando as filiais de Fpolis no nodo (FFp) (n FFp = 0) e as filiais de Blumenau no nodo3 (FBlu) (n FBlu = 0) A) filtrar os funcionários desejados no nodo (de Fpolis e de Blumenau) e enviar o resultado para o nodo : a) envia dados de Blumenau para nodo: t FBlu (nrofil)*0 = 4*0 = 40 bytes b) envia dados de Fpolis para nodo: t FFp (nrofil)*0 = 4*0 = 80 bytes c) processa no nodo e envia π nome,codf,func.nrofil para nodo: sendo C Func (nrofil) = 00 e 30 filiais ao total, temos: funcionários. Logo: (t Func (nome) + t Func (codf) + t Func (nrofil))*3.000 = (5+9+4)*3.000 = bytes Custo Transmissão: = 84.0 bytes (a) e (b) podem ser executados em paralelo Exercício Resposta A A relação Func está no nodo e Filiais está fragmentada por cidade, estando as filiais de Fpolis no nodo (FFp) (n FFp = 0) e as filiais de Blumenau no nodo3 (FBlu) (n FBlu = 0) A) trazer os atributos desejados de funcionários e os códigos das filiais de Blumenau para o nodo e processar a consulta no nodo: a) envia atributos de Func para nodo: (t Func (nome) + t Func (codf) + t Func (nrofil))*0.000 = 8*0.000 = bytes b) envia códigos de filiais de Blumenau para nodo: t FBlu (nrofil)*0 = 4*0 = 40 bytes Custo Transmissão: = bytes (a) e (b) podem ser executados em paralelo A é a melhor alternativa! 7
Bancos de Dados Distribuídos. Gabriel Resende Gonçalves 4 de fevereiro de 2014
Bancos de Dados Distribuídos Gabriel Resende Gonçalves 4 de fevereiro de 2014 Sumário Introdução; Vantagens e Desvantagens; Regras Básicas; Tipos de BDDs; Processamento de Transações; Recuperação de Falhas;
Formação de DBAs SQL Server 2008
Formação de DBAs SQL Server 2008 Parte 8: Banco de Dados Distribuído Computação Distribuída Um grupo de elementos autônomos de processamento (não necessariamente homogêneos) que estão interconectados por
Bancos de Dados Distribuídos. Bancos de Dados Distribuídos. Conteúdo. Motivação. Motivação. Introdução aos BDs Distribuídos.
Bancos de Dados Distribuídos Prof. Frank Siqueira Departamento de Informática e Estatística Universidade Federal de Santa Catarina Conteúdo Introdução aos BDs Distribuídos Processamento de Consultas Distribuídas
Sistemas de Bancos de Dados Distribuídos
Top. Esp em Banco de Dados Profa. Marta Mattoso [email protected] http://www.cos.ufrj.br/~marta COPPE- Sistemas / UFRJ Introdução a Bancos de Dados Distribuídos Roteiro Introdução Caracterização de BDD
Sistemas de Bancos de Dados Distribuídos
Sistema de Arquivos Top. Esp em Banco de Dados Profa. Marta Mattoso [email protected] http://www.cos.ufrj.br/~marta COPPE- Sistemas / UFRJ Introdução a Bancos de Dados Distribuídos 4 Roteiro Sistema de
Técnica UNDO/REDO. Checkpoint
Técnica UNDO/REDO Quando se percorre o Log forward para fazer REDO, é possível que um dado X tenha sido atualizado por mais de uma transação committed Variante da técnica UNDO/REDO detectar que X é atualizado
Exercícios do Curso COS833 Distribuição e Paralelismo em Bancos de Dados Prof ª Marta Mattoso / Prof. Alexandre Assis
Exercícios do Curso COS833 Distribuição e Paralelismo em Bancos de Dados Prof ª Marta Mattoso / Prof. Alexandre Assis 1 a. Questão Quais são as principais etapas de um projeto de distribuição de dados?
Processamento de Transações
Processamento de Transações Processamento de Transações Transações Atômicas: Unidades lógicas de processamento sobre um banco de dados. Controle de Concorrência: Garantia de que múltiplas transações ativadas
Bases de Dados Distribuídas
Bases de Dados Distribuídas Pablo Vieira Florentino 27/10/2006 Agenda Contexto Arquitetura de SGBDs Distribuído Projeto de Bases de dados Distribuídas Processamento Distribuído de consultas Questões atuais
Principais Desafios dos SGBDDs. Processamento Distribuído de Consultas. Processamento de Consultas. Componentes do Processamento de Consultas
Principais Desafios dos SGBDDs Processamento Distribuído de Consultas Fernanda Baião [email protected] Processamento Distribuído de Consultas conversão de transações do usuário em instruções de manipulação
Scheduler Baseado em Timestamp
Scheduler Baseado em Timestamp Técnica na qual toda transação Tx possui uma marca timestamp (TS(Tx)) Princípio de funcionamento (TS-Básico) no acesso a um item de dado D por operações conflitantes, a ordem
SGBD. Definição. Funções básicas
Definição Sistema cujo objetivo principal é gerenciar o acesso e a correta manutenção dos dados armazenados em um banco dados. Funções básicas Métodos acesso Integrida Semântica Segurança Concorrência
Banco de Dados Distribuído
Bancos de Dados III Bancos de Dados Distribuídos Introdução Rogério Costa [email protected] 1 Banco de Dados Distribuído Vários bancos de dados fisicamente separados, mas logicamente relacionados
Projeto de Bancos de Dados Distribuídos
Problema de Projeto Projeto de Bancos de Dados Distribuídos Fernanda Baião [email protected] Definição geral Tomar decisões sobre localização de dados e programas nos nós de uma rede de computadores, assim
Banco de Dados. Controle de Concorrência e Recuperação de Transação. Prof. João Eduardo Ferreira Prof. Osvaldo Kotaro Takai
Banco de Dados Controle de Concorrência e Recuperação de Transação Última atualização: 20 de janeiro de 2006 Prof. João Eduardo Ferreira Prof. Osvaldo Kotaro Takai Tópicos Modelo Transacional Clássico
INE 5423 Banco de Dados I
UFSC-CTC-INE Curso de Ciências da Computação INE 5423 Banco de Dados I 2011/1 http://www.inf.ufsc.br/~ronaldo/ine5423 Programa da Disciplina Objetivo Conteúdo Avaliação Bibliografia Cronograma (Previsto)
Banco de Dados I 6 Transações e Controle de Concorrência
Banco de Dados I 6 Transações e Controle de Concorrência Grinaldo Lopes de Oliveira (grinaldo( [email protected]) Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas * Material com créditos
Subconsulta na Cláusula FROM
Subconsulta na Cláusula FROM Gera uma tabela derivada a partir de uma ou mais tabelas, para uso na consulta externa otimização: filtra linhas e colunas de uma tabela que são desejadas pela consulta externa
INE 5423 Banco de Dados I
UFSC-CTC-INE Curso de Ciencias da Computação INE 5423 Banco de Dados I 2010/2 http://www.inf.ufsc.br/~ronaldo/ine5423 Programa da Disciplina Objetivo Conteúdo Avaliação Bibliografia Cronograma (Previsto)
O Modelo e a Álgebra Relacional
O Modelo e a Álgebra Relacional O Modelo Relacional Modelo de dados, que se baseia no princípio em que todos os dados estão guardados em tabelas Baseado em lógica de predicados e na teoria de conjuntos.
Modelo Relacional - Manipulação
Modelo Relacional - Manipulação Duas categorias de linguagens formais álgebra relacional e cálculo relacional comerciais (baseadas nas linguagens formais) SQL Linguagens formais - Características orientadas
Sistema Gestor de Bancos de Dados (SGBD)
Sistema Gestor de Bancos de Dados (SGBD) Conceitos Gerais Prof. Guilherme Tomaschewski Netto [email protected] Roteiro! Contextualização! Apresentação, um pouco de história Legendas! Nesta apresentação
Sistemas Distribuídos
Sistemas Distribuídos Transações atômicas Conteúdo O modelo transacional Armazenamento estável Primitivas transacionais Propriedades das transações Transações aninhadas Implementação Área de trabalho privada
Processamento de Transações. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
Processamento de Transações Banco de Dados Introdução Ambiente multiusuário vários usuários utilizam o mesmo sistema ao mesmo tempo múltiplos programas (transações) compartilham a mesma CPU Forma de execução
Subconsulta na Cláusula FROM
Subconsulta na Cláusula FROM Gera uma tabela derivada a partir de uma ou mais tabelas, para uso na consulta externa otimização: filtra linhas e colunas de uma tabela que são desejadas pela consulta externa
Bancos de dados distribuídos Prof. Tiago Eugenio de Melo [email protected]. http://www.tiagodemelo.info
Bancos de dados distribuídos Prof. Tiago Eugenio de Melo [email protected] Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds
Sistemas Distribuídos Capítulo 8 - Aula 14
Sistemas Distribuídos Capítulo 8 - Aula 14 Aula Passada Tolerância a Falhas Conceitos básicos Modelos de falha Redundância Resiliência de Processo Aula de hoje Comunicação Confiável Cliente-Servidor Comunicação
Curso: Banco de Dados I. Conceitos Iniciais
Curso: Conceitos Iniciais Discussão inicial O que são Bancos de Dados? Quais os programas de Bancos de Dados mais conhecidos no mercado? Quais as vantagens do uso de Bancos de Dados nas empresas? Como
Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos
Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Email: Site: [email protected] www.marcelohsantos.com.br TECNOLOGIA EM JOGOS
Controle de Concorrência
Controle de Concorrência Protocolos de Bloqueio Protocolo com base em Timestamps Protocolos Multi-versão Inserção e Remoção de Dados Controle de Concorrência Controle de concorrência é usado para garantir
Dados em programas são estruturados, enquanto que mensagens carregam informação seqüencial: Linearização x Restauração de dados Requisição
6LVWHPDV'LVWULEXtGV 0GHO&OLHQWH6HUYLGU &PXQLFDom 6XPiUL Introdução Elementos Básicos de Comunicação Comunicação Cliente-Servidor Comunicação em Grupo Chamada emota de Procedimento (PC) Prof a. Cristina
Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s
Introdução Contribuição do Capítulo 2: discutir modelos de dados definir conceitos de esquemas e instâncias descrever os tipos de interfaces e linguagens oferecidas por um SGBD mostrar o ambiente de programas
Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Consistência e Replicação Capítulo 7 Agenda Distribuição de Conteúdo Estado versus operações Protocolos de recuperação de atualizações versus protocolos
BDII SQL TRANSAÇÃO Revisão 2
exatasfepi.com.br BDII SQL TRANSAÇÃO Revisão 2 André Luís Duarte Honra a teu pai e a tua mãe (que é o primeiro mandamento com promessa), para que te vá bem, e sejas de longa vida sobre a terra.(ef 6:2,3)
Sistemas de Banco de Dados
Sistemas de Banco de Dados Fundamentos em Bancos de Dados Relacionais Wladmir Cardoso Brandão www.wladmirbrandao.com Departamento de Ciência da Computação (DCC) Instituto de Ciências Exatas e Informática
Barramento. Prof. Leonardo Barreto Campos 1
Barramento Prof. Leonardo Barreto Campos 1 Sumário Introdução; Componentes do Computador; Funções dos Computadores; Estrutura de Interconexão; Interconexão de Barramentos Elementos de projeto de barramento;
Arquitetura Genérica do SGBDD
Bancos de Dados III Bancos de Dados Distribuídos Arquiteturas, Modelos e Requisitos Rogério Costa [email protected] 1 Arquitetura Genérica do Existem diversas propostas de arquiteturas para BDD (multi-database,
Caracterização de Sistemas Distribuídos
Caracterização de Sistemas Distribuídos Roteiro Conceitos de Hardware Conceitos de Software Classificação de Flynn Classificação baseada no acesso a memória 2 Conceitos de HW Múltiplas CPUs Diferentes
SSC643 -Avaliação de Desempenho de Sistemas Computacionais -
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC643 -Avaliação de Desempenho de Sistemas Computacionais - Aula 2 Sarita Mazzini Bruschi
Banco de Dados. Perspectiva Histórica dos Bancos de Dados. Prof. Walteno Martins Parreira Jr
Banco de Dados Perspectiva Histórica dos Bancos de Dados Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br [email protected] 2015 Histórico Antes dos computadores, as informações eram
Sistema de arquivos Distribuidos
Sistema de arquivos Distribuidos Luiz Carlos, Rafael Tavares, Aline Universidade Estacio de Sá 4 de novembro de 2013 (Universidade Estacio de Sá) Arquitetura de Sistemas 4 de novembro de 2013 1 / 16 Introdução
Sistemas de Arquivos Convencionais
SGBDs Sistemas de Arquivos Convencionais Características: Vários arquivos, diferentes programas para recuperar informações Desvantagens: Redundância e inconsistência de dados Dificuldade de acessar informação
O que é um sistema distribuído?
Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores
Programação de Sistemas Distribuídos e Concorrência
Programação de Sistemas Distribuídos e Concorrência Aula 4 15/08/09 Prof Carlos Eduardo 1 Descentralizadas Arquiteturas centralizadas são distribuições verticais (componentes logicamente diferentes em
Sistemas Distribuídos Capítulo 8 - Aula 13
Sistemas Distribuídos Capítulo 8 - Aula 13 Aula de hoje Aula Passada Exclusão Mútua Algoritmos de Eleição Tolerância a Falhas Conceitos básicos Modelos de falha Redundância Resiliência de Processo 1 Tolerância
Processamento de Transações
Arquitetura de Banco de Dados Processamento de Transações Carolina Nogueira Marcelo Eduardo Cardoso Rodrigo Dlugokenski Vítor De Araújo Bancos de dados Single-users versus Multiusers classificação baseada
TRANSAÇÕES E CONTROLE DE CONCORRÊNCIA Em resumo: Transações: clientes podem necessitar que um servidor execute uma sequência de requisições de forma a
Transações Transações Uma transação é um conjunto de operações que deve ser executado de forma atômica Atômica : se um erro ocorre no meio da transação, devemos voltar ao estado consistente anterior. Atômica
Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Consistência Causal(3) Neste exemplo temos uma sequência de eventos permitida quando o depósito é consistente por causalidade, mas proibida quando
MODELAGEM DE DADOS UNIDADE 1 Visão Geral. Luiz Leão
UNIDADE 1 Visão Geral Luiz Leão [email protected] http://www.luizleao.com Conteúdo Programático 1.1 Visão geral: Banco de dados 1.2 Dados versus informação 1.3 Classificando os bancos de dados 1.4 Sistemas
Sistemas Distribuídos. 13 Transações Distribuídas. Transações Distribuídas. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR
Sistemas Distribuídos 13 Transações Distribuídas n Transações Distribuídas Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Introdução Uma transação define uma sequência de operações. Objetivo: permitir
Resolução dos exercícios da lista BD01
Resolução dos exercícios da lista BD01 Pedro Losco Takecian Monitor João Eduardo Ferreira Professor 4 de abril de 2006 1. Quando faz sentido utilizar um SGBD ao invés de simplesmente utilizar o sistema
BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING
BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING http://www.uniriotec.br/~tanaka/tin0036 [email protected] Bancos de Dados Distribuídos Conceitos e Arquitetura Vantagens das Arquiteturas C/S (em relação
Sistemas de Gerência de Bancos de Dados. Módulo 1 - Armazenamento
Sistemas de Gerência de Bancos de Dados Módulo 1 - Armazenamento Tópicos Introdução Gerência do Buffer Pool Armazenamento em SGBDs Convencionais Armazenamento em SGBDs Orientados a Objeto Introdução Etapas
Gerenciamento de Transações em Banco de Dados
Gerenciamento de Transações em Banco de Dados Daniela Barreiro Claro MAT A60 Aula 13 Introdução à Transação 2 Transação É uma coleção de operações que formam uma única unidade lógica As transações acessam
Controle de Transação
Curso: Ciência da Computação Disciplina: Banco de Dados Campus Lages Controle de Transação Prof. Edjandir C. Costa [email protected] Agenda Conceitos de transação e sistema Propriedades desejáveis
Banco de Dados Relacional
Centro Federal de Educação Tecnológica de Pernambuco Curso de Tecnologia em Sistemas de Informação Banco de Dados Relacional Renata Lúcia Mendonça Ernesto do Rêgo [email protected] 1 Plano de Ensino Objetivo
Análise de Ponto de Função APF. Aula 03
Análise de Ponto de Função APF Aula 03 Parte 01 Introdução a Métricas de Software Parte 02 A Técnica de APF Identificação das Funções de Dados Diretrizes Gerais Tipos de Entidades Arquivos Lógicos Tipo
Programação Concorrente. 2º Semestre 2010
Programação Concorrente 2º Semestre 2 Tópicos de Hoje Assunto: Deadlocks Livro Texto Capítulo 4; Conceitos Iniciais; Tipos de Recursos; Condições necessárias para ocorrência de deadlock; Um sistemas livre
Data Warehouse ETL. Rodrigo Leite Durães.
Data Warehouse ETL Rodrigo Leite Durães [email protected] Introdução Um dos desafios da implantação de um DW é a integração dos dados de fontes heterogêneas e complexas, padronizando informações,
Organização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Entrada e Saída Slide 1 Entrada e Saída Dispositivos Externos E/S Programada Organização e Arquitetura de Computadores I Sumário E/S Dirigida por Interrupção
Sistemas Distribuídos
Sistemas Distribuídos Deadlocks Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 11.5 pág. 340-344 2 Conteúdo Detecção de deadlock distribuído Detecção centralizada
Modelo de Programação Paralela
Modelo de Programação Paralela As arquiteturas paralelas e distribuídas possuem muitos detalhes Como especificar uma solução paralela pensando em todos esses detalhes? O que queremos? Eecutar a solução
GBC053 Gerenciamento de Banco de Dados. Plano de Curso e Introdução. Ilmério Reis da Silva UFU/FACOM/BCC
GBC053 Gerenciamento de Banco de Dados Plano de Curso e Introdução Ilmério Reis da Silva [email protected] www.facom.ufu.br/~ilmerio/gbd UFU/FACOM/BCC Plano de Curso Ementa Arquitetura de um Sistema de Gerenciamento
BD II (SI 587) Técnicas de Recuperação. Josenildo Silva.
BD II (SI 587) Técnicas de Recuperação Josenildo Silva [email protected] Nota Estes slides são baseados nos slides disponibilizados pelos autores ELMASRI e NAVATHE, para o livro Sistemas de Banco de
Sistemas Distribuídos. Edy Hayashida
Sistemas Distribuídos Edy Hayashida E-mail: [email protected] Evolução 1960s 1980s Processamento de dados 1990s Sistemas de Informação Futuro Tecnologia da Informação Tecnologia dos Negócios 2 30
Modelagem de Dados. Modelagem Conceitual
Modelagem de Dados Atividade de definição de um esquema de dados em um certo nível de abstração Projeto de um BD modelagem conceitual abstração de mais alto nível objetivo: representação dos requisitos
Introdução a B anco de Dados. INE5206 Introdução à Informática INE/CTC/UFSC Prof. Roberto Willrich
Introdução a B anco de Dados INE5206 Introdução à Informática INE/CTC/UFSC Prof. Roberto Willrich 1 Introdução Sistema de banco de dados Projetados para gerenciar grandes quantidades de informação Proporcionar
BCD29008 Banco de dados
BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José [email protected] http://docente.ifsc.edu.br/mello/bcd 31 de julho de 2017 1/24 Apresentação
Aula 12: Memória: Barramentos e Registradores
Aula 12: Memória: Barramentos e Registradores Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Memória: Barramentos e Registradores FAC 1 / 34
Sistemas Operacionais
Sistemas Operacionais Programação Concorrente Impasses Edson Moreno [email protected] http://www.inf.pucrs.br/~emoreno Sumário Princípios de Deadlock Técnicas de solução do problema Prevenir a ocorrência
Bancos de Dados NoSQL
Bancos de Dados NoSQL Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Banco de Dados NoSQL (Not Only SQL) Foco no armazenamento de gigantescos volumes de dados (big data)
Modelo Entidade-Relacionamento (E-R)
Modelo Entidade-Relacionamento (E-R) composto n lote n n n contrato_compra_venda n possui proprietário possui n associado cadastro n banco faz fronteira pertence n ruas n quadras n financiado empréstimo
Sistemas Distribuídos
Sistemas Distribuídos Definição Sistema Distribuído é aquele onde os componentes de software e hardware localizados em redes de computadores comunicam-se e coordenam suas ações apenas por passagem de mensagens.
Sistema de Banco de Dados. UNIDADE 1 Introdução aos Sistemas de Bancos de Dados Professor: Armando Hage
Sistema de Banco de Dados UNIDADE 1 Introdução aos Sistemas de Bancos de Dados Professor: Armando Hage Resumo da Unidade Banco de dados BD SGBD Objetivo Visão Geral Abstração Modelo de Dados Entidade Relaciomento(ER)
LAY-OUT CARTÃO SALÁRIO
LAY-OUT CARTÃO SALÁRIO 1 Registro Header O sistema exige um header por Empresa. No arquivo (Empresa /Banco) para inclusão, alteração, exclusão e transferência de pagamentos, a empresa deverá manter a estrutura
MODELAGEM DE DADOS -PROJETO CONCEITUAL DE BD. Prof. Angelo Augusto Frozza, M.Sc.
MODELAGEM DE DADOS -PROJETO CONCEITUAL DE BD Prof. Angelo Augusto Frozza, M.Sc. PROJETO CONCEITUAL Levantamento de requisitos Modelagem Conceitual Modelo ER PROJETO CONCEITUAL Parte integrante do Projeto
SSC546 -Avaliação de Desempenho de Sistemas
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC546 -Avaliação de Desempenho de Sistemas Parte 1 -Aula 2 Sarita Mazzini Bruschi Material
Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim
Redes TCP/IP [email protected] Camada de Transporte 2 Camada de Transporte Função: Fornecer comunicação lógica entre processos de aplicação em diferentes hospedeiros. Os protocolos de transporte são
Curso: Redes de Computadores
Curso: Redes de Computadores Cadeira de Introdução a Sistemas Operacionais. Bibliografia Sistemas Operacionais Modernos Andew S. Tanembaum Sistema Operacionais Abraham Silberchatz, Peter Galvin e Greg
