1 / 13

Modelo de Multiversão

Modelo de Multiversão. MVCC - MultiVersion Concurrency Control. Alunos: Ronald Bertele Sidinei da Silva.

vashon
Download Presentation

Modelo de Multiversão

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modelo de Multiversão MVCC - MultiVersion Concurrency Control

  2. Alunos: Ronald Bertele Sidinei da Silva

  3. q Sistema de controle de concorrência para aplicações concorrentes altamente escaláveis, onde ele visa manter a consistência dos dados em um Sistema Gerenciador de Banco de Dados; q Existem muitos Bancos de Dados que utilizam este tipo de controle como o PostgreSql, Firebird, HiperSonic, Oracle, SyBase, ZoDB entre outros;

  4. Vantagens q Os processos de leitura não bloqueiam processos de escrita e vice-versa; q Ele reduz drasticamente (às vezes, eliminando) a contenção entre transações concorrentes; q  Ele diminui a paralisação parcial ou completa (deadlock);

  5. Vantagens Este modelo tem como objetivo auxiliar na implementação do padrão ACID (atomicidade, consistência, isolamento e durabilidade); Este modelo garante melhora de performance em um ambiente onde vários usuários podem estar acessando os mesmos dados.

  6. Desvantagens O MVCC ocasiona o aumento do tamanho das tabelas de forma muita rápida.

  7. Tipos de MVCC Visão Pessimista PostgreSql Visão Otimista ZODB

  8. Funcionamento Estado Inicial

  9. Funcionamento Comando Sql que será Executado UPDATE FROM Clientes SET Debito = Debito - 2500 WHERE cod = 2;

  10. Funcionamento Estado Final

  11. comandoVACUUM Manutenção • Limpa asujeira das tabelas, e evita que fiquem vácuos nos locais onde existiam registros; • Quando executado, ele faz uma varredura na tabela em busca de dados marcados como inúteis e exclui-os, posteriormente, realoca os registros de forma que não fiquem espaços entre dois registros; • Dependendo da forma que for usado, ele atualiza as estatísticas utilizadas pelo otimizador para determinar o modo mais eficiente de executar uma consulta no PostgreSQL.

  12. Exemplo do Vacuum

  13. Dúvidas???

More Related