Cache transparente: uma solução para armazenamento de dados distribuídos voltada para cargas de trabalho intensivas em leituras - Barretto, Wagner Rezende Muniz (2018)
Em aplicações modernas de larga escala, usuários consomem mais dados do que produzem. Este comportamento resulta em sistemas de armazenamento de dados com cargas de trabalho dominadas por leituras. Deparados com este cenário, projetistas tem adotado modelos de replicação com cópia primária e mecanismos de cache como soluções. Estas soluções empregam sistemas de armazenamento de dados que enfrentam grandes desafios para garantir a consistência dos dados. Atualmente, a literatura carece de uma análise formal da consistência provida por estas soluções e de quais problemas decorrem do uso das mesmas. Este trabalho apresenta uma análise formal que identifica os problemas de consistência exibidos pelas soluções em uso na atualidade e introduz o Cache Transparente, uma nova solução baseada em mecanismos de cache capaz de endereçar tais problemas. A análise das soluções demonstra que as mesmas permitem diversas anomalias de consistência. O projeto do Cache Transparente é apresentado em detalhes e sua consistência é formalmente demonstrada. A comparação entre as soluções mostra que o Cache Transparente é mais consistente e mais eficiente no uso de rede do que as soluções atuais. As contribuições feitas por esse trabalho possibilitam que projetistas identifiquem de forma mais precisa a consistência dos seus sistemas e os fornece uma nova solução a ser considerada.