Scalability patterns for distributed NoSQL databases

Detalhes bibliográficos
Ano de defesa: 2017
Autor(a) principal: Costa, Caio Holanda
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Estadual do Ceará
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://siduece.uece.br/siduece/trabalhoAcademicoPublico.jsf?id=82841
Resumo: <div style="">Para lidar com a crescente demanda de armazenamento e provimento de dados das atuais aplicações on-line, empresas como Amazon e Google desenvolveram bancos de dados não relacionais verdadeiramente distribuídos que se tornaram conhecidos como bancos de dados NoSQL. A fim de prover de maneira simples uma grande capacidade de escalabilidade horizontal, esses bancos de dados têm como modelo de dados o domínio da aplicação e abrem mão de alguns princípios de bancos de dados relacionais. No entanto, adotar um banco de dados NoSQL distribuído e comprometer-se com seu modelo de dados pode não fornecer o nível de escalabilidade necessário para alguns cenários. Nesses casos, é necessário implementar a abordagem de modelagem de dados correta para alavancar a escalabilidade do banco de dados. Portanto, este trabalho cataloga quatro padrões de modelagem de dados que visam melhorar a escalabilidade de aplicativos baseados em bancos de dados NoSQL distribuídos: UUID Key, Index Table, Enumerable Keys e Fan-out on Write. Os padrões propostos incluem testes baseados em cargas de trabalho que comparam o desempenho dos padrões com abordagens mais intuitivas e menos escaláveis, a fim de proporcionar uma melhor compreensão das melhorias e desvantagens dos padrões. O código-fonte das cargas de trabalho e das ferramentas desenvolvidas para executar os testes dos padrões estão compartilhados em um repositório público de forma que estudantes e desenvolvedores possam personalizá-los e testá-los em seus próprios ambientes. Palavras-chave: NoSQL. banco de dados. padrões. escalabilidade. benchmark. cargas de trabalho. YCSB.</div>