Scalable multiversion handling for geo replicated storage

Autores
Alvarez Colombo, Santiago Javier
Año de publicación
2017
Idioma
inglés
Tipo de recurso
tesis de grado
Estado
versión publicada
Colaborador/a o director/a de tesis
Yovine, Sergio Fabián
Tomsic, Alejandro Z.
Shapiro, Marc B.
Descripción
Antidote, una base de datos Geo-Replicada, implementa estructuras de datos replicadas multiversión. Este tipo de bases de datos, proporciona un módulo que da soporte a la multiversión, manejando todas las lecturas y escrituras al almacenar en caché y persistir las distintas versiones de los objetos. Este módulo es crítico para la performance y tolerancia a fallas de Antidote. La implementación actual de este módulo en Antidote tiene algunas desventajas. Por ejemplo, no es tolerante a fallas, se realiza garbage collection de forma sincrónica (afectando el throughput) y la base de código está fuertemente acoplada, por lo que introducir un cambio en este módulo conlleva una gran complejidad. Para solucionar estos problemas, diseñamos un nuevo módulo de caché y persistencia basado en LevelDB, llamado Antidote-LevelDB. LevelDB está diseñado para datos no versionados, y solo admite operaciones de lectura y escritura. Adaptarlo para soportar múltiples versiones de objetos, actualizaciones concurrentes y estructuras de datos replicadas multiversión de alto nivel, como las que se soportan en Antidote, plantea muchos desafíos nuevos. Esta tesis discute estos problemas, nuestro diseño e implementación. Nuestros experimentos muestran que Antidote-LevelDB corrige muchos de los problemas del modelo anterior, aumentando el throughput en la mayoría de los escenarios, al mismo tiempo que proporciona tolerancia a fallas y modularidad. Antidote-LevelDB es un primer paso hacia proveer una solución completa para el manejo de multiversión de las estructuras de datos replicadas provistas por Antidote. Este es un enfoque nuevo e innovador para resolver este tipo de problemas, por lo que puede ser considerado el primero en su tipo.
Antidote, a cutting edge Geo-Replicated Data Store, implements multi-versioned commutative replicated data types. These kinds of databases provide a module that gives support to multiversion, handling all reads and writes by caching and storing versions of data objects. This module is critical to the database since it is in charge of providing performance and reliability. Antidote’s current implementation of this module has some disadvantages. For example, there is no fault tolerance, garbage collection is done synchronously (impacting throughput), and the code base is strongly coupled. In order to address these issues, we designed a new storage/caching module based on the LevelDB backend, called Antidote-LevelDB. LevelDB provides very efficient storage and caching, but is designed for non-versioned data, supporting only read and write operations. Adapting it to support different versions, concurrent updates, and high-level commutative replicated data types as the ones supported in Antidote, raises many new challenges. This thesis discusses these issues, our design and implementation. Our experiments show that Antidote-LevelDB fixes many of the issues with the previous model, increasing performance in most scenarios, while providing better fault tolerance. This new backend module is a first approach to caching and storing persistently the multiversion objects of Antidote. This is a new and innovative approach to solve this type of problems, making it the first of its kind in the field.
Fil: Alvarez Colombo, Santiago Javier. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
Materia
CRDT
REPLICATION
ANTIDOTE
LEVELDB
CACHING
LOGGING
Nivel de accesibilidad
acceso abierto
Condiciones de uso
https://creativecommons.org/licenses/by-nc-sa/2.5/ar
Repositorio
Biblioteca Digital (UBA-FCEN)
Institución
Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
OAI Identificador
seminario:seminario_nCOM000678_AlvarezColombo

id BDUBAFCEN_cb4612db1ea67f2db5185195004e4403
oai_identifier_str seminario:seminario_nCOM000678_AlvarezColombo
network_acronym_str BDUBAFCEN
repository_id_str 1896
network_name_str Biblioteca Digital (UBA-FCEN)
spelling Scalable multiversion handling for geo replicated storageManejo de multiversión escalable para bases de datos geo replicadasAlvarez Colombo, Santiago JavierCRDTREPLICATIONANTIDOTELEVELDBCACHINGLOGGINGAntidote, una base de datos Geo-Replicada, implementa estructuras de datos replicadas multiversión. Este tipo de bases de datos, proporciona un módulo que da soporte a la multiversión, manejando todas las lecturas y escrituras al almacenar en caché y persistir las distintas versiones de los objetos. Este módulo es crítico para la performance y tolerancia a fallas de Antidote. La implementación actual de este módulo en Antidote tiene algunas desventajas. Por ejemplo, no es tolerante a fallas, se realiza garbage collection de forma sincrónica (afectando el throughput) y la base de código está fuertemente acoplada, por lo que introducir un cambio en este módulo conlleva una gran complejidad. Para solucionar estos problemas, diseñamos un nuevo módulo de caché y persistencia basado en LevelDB, llamado Antidote-LevelDB. LevelDB está diseñado para datos no versionados, y solo admite operaciones de lectura y escritura. Adaptarlo para soportar múltiples versiones de objetos, actualizaciones concurrentes y estructuras de datos replicadas multiversión de alto nivel, como las que se soportan en Antidote, plantea muchos desafíos nuevos. Esta tesis discute estos problemas, nuestro diseño e implementación. Nuestros experimentos muestran que Antidote-LevelDB corrige muchos de los problemas del modelo anterior, aumentando el throughput en la mayoría de los escenarios, al mismo tiempo que proporciona tolerancia a fallas y modularidad. Antidote-LevelDB es un primer paso hacia proveer una solución completa para el manejo de multiversión de las estructuras de datos replicadas provistas por Antidote. Este es un enfoque nuevo e innovador para resolver este tipo de problemas, por lo que puede ser considerado el primero en su tipo.Antidote, a cutting edge Geo-Replicated Data Store, implements multi-versioned commutative replicated data types. These kinds of databases provide a module that gives support to multiversion, handling all reads and writes by caching and storing versions of data objects. This module is critical to the database since it is in charge of providing performance and reliability. Antidote’s current implementation of this module has some disadvantages. For example, there is no fault tolerance, garbage collection is done synchronously (impacting throughput), and the code base is strongly coupled. In order to address these issues, we designed a new storage/caching module based on the LevelDB backend, called Antidote-LevelDB. LevelDB provides very efficient storage and caching, but is designed for non-versioned data, supporting only read and write operations. Adapting it to support different versions, concurrent updates, and high-level commutative replicated data types as the ones supported in Antidote, raises many new challenges. This thesis discusses these issues, our design and implementation. Our experiments show that Antidote-LevelDB fixes many of the issues with the previous model, increasing performance in most scenarios, while providing better fault tolerance. This new backend module is a first approach to caching and storing persistently the multiversion objects of Antidote. This is a new and innovative approach to solve this type of problems, making it the first of its kind in the field.Fil: Alvarez Colombo, Santiago Javier. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.Universidad de Buenos Aires. Facultad de Ciencias Exactas y NaturalesYovine, Sergio FabiánTomsic, Alejandro Z.Shapiro, Marc B.2017info:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_7a1finfo:ar-repo/semantics/tesisDeGradoapplication/pdfhttps://hdl.handle.net/20.500.12110/seminario_nCOM000678_AlvarezColomboenginfo:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc-sa/2.5/arreponame:Biblioteca Digital (UBA-FCEN)instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesinstacron:UBA-FCEN2025-09-29T13:43:32Zseminario:seminario_nCOM000678_AlvarezColomboInstitucionalhttps://digital.bl.fcen.uba.ar/Universidad públicaNo correspondehttps://digital.bl.fcen.uba.ar/cgi-bin/oaiserver.cgiana@bl.fcen.uba.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:18962025-09-29 13:43:33.685Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesfalse
dc.title.none.fl_str_mv Scalable multiversion handling for geo replicated storage
Manejo de multiversión escalable para bases de datos geo replicadas
title Scalable multiversion handling for geo replicated storage
spellingShingle Scalable multiversion handling for geo replicated storage
Alvarez Colombo, Santiago Javier
CRDT
REPLICATION
ANTIDOTE
LEVELDB
CACHING
LOGGING
title_short Scalable multiversion handling for geo replicated storage
title_full Scalable multiversion handling for geo replicated storage
title_fullStr Scalable multiversion handling for geo replicated storage
title_full_unstemmed Scalable multiversion handling for geo replicated storage
title_sort Scalable multiversion handling for geo replicated storage
dc.creator.none.fl_str_mv Alvarez Colombo, Santiago Javier
author Alvarez Colombo, Santiago Javier
author_facet Alvarez Colombo, Santiago Javier
author_role author
dc.contributor.none.fl_str_mv Yovine, Sergio Fabián
Tomsic, Alejandro Z.
Shapiro, Marc B.
dc.subject.none.fl_str_mv CRDT
REPLICATION
ANTIDOTE
LEVELDB
CACHING
LOGGING
topic CRDT
REPLICATION
ANTIDOTE
LEVELDB
CACHING
LOGGING
dc.description.none.fl_txt_mv Antidote, una base de datos Geo-Replicada, implementa estructuras de datos replicadas multiversión. Este tipo de bases de datos, proporciona un módulo que da soporte a la multiversión, manejando todas las lecturas y escrituras al almacenar en caché y persistir las distintas versiones de los objetos. Este módulo es crítico para la performance y tolerancia a fallas de Antidote. La implementación actual de este módulo en Antidote tiene algunas desventajas. Por ejemplo, no es tolerante a fallas, se realiza garbage collection de forma sincrónica (afectando el throughput) y la base de código está fuertemente acoplada, por lo que introducir un cambio en este módulo conlleva una gran complejidad. Para solucionar estos problemas, diseñamos un nuevo módulo de caché y persistencia basado en LevelDB, llamado Antidote-LevelDB. LevelDB está diseñado para datos no versionados, y solo admite operaciones de lectura y escritura. Adaptarlo para soportar múltiples versiones de objetos, actualizaciones concurrentes y estructuras de datos replicadas multiversión de alto nivel, como las que se soportan en Antidote, plantea muchos desafíos nuevos. Esta tesis discute estos problemas, nuestro diseño e implementación. Nuestros experimentos muestran que Antidote-LevelDB corrige muchos de los problemas del modelo anterior, aumentando el throughput en la mayoría de los escenarios, al mismo tiempo que proporciona tolerancia a fallas y modularidad. Antidote-LevelDB es un primer paso hacia proveer una solución completa para el manejo de multiversión de las estructuras de datos replicadas provistas por Antidote. Este es un enfoque nuevo e innovador para resolver este tipo de problemas, por lo que puede ser considerado el primero en su tipo.
Antidote, a cutting edge Geo-Replicated Data Store, implements multi-versioned commutative replicated data types. These kinds of databases provide a module that gives support to multiversion, handling all reads and writes by caching and storing versions of data objects. This module is critical to the database since it is in charge of providing performance and reliability. Antidote’s current implementation of this module has some disadvantages. For example, there is no fault tolerance, garbage collection is done synchronously (impacting throughput), and the code base is strongly coupled. In order to address these issues, we designed a new storage/caching module based on the LevelDB backend, called Antidote-LevelDB. LevelDB provides very efficient storage and caching, but is designed for non-versioned data, supporting only read and write operations. Adapting it to support different versions, concurrent updates, and high-level commutative replicated data types as the ones supported in Antidote, raises many new challenges. This thesis discusses these issues, our design and implementation. Our experiments show that Antidote-LevelDB fixes many of the issues with the previous model, increasing performance in most scenarios, while providing better fault tolerance. This new backend module is a first approach to caching and storing persistently the multiversion objects of Antidote. This is a new and innovative approach to solve this type of problems, making it the first of its kind in the field.
Fil: Alvarez Colombo, Santiago Javier. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.
description Antidote, una base de datos Geo-Replicada, implementa estructuras de datos replicadas multiversión. Este tipo de bases de datos, proporciona un módulo que da soporte a la multiversión, manejando todas las lecturas y escrituras al almacenar en caché y persistir las distintas versiones de los objetos. Este módulo es crítico para la performance y tolerancia a fallas de Antidote. La implementación actual de este módulo en Antidote tiene algunas desventajas. Por ejemplo, no es tolerante a fallas, se realiza garbage collection de forma sincrónica (afectando el throughput) y la base de código está fuertemente acoplada, por lo que introducir un cambio en este módulo conlleva una gran complejidad. Para solucionar estos problemas, diseñamos un nuevo módulo de caché y persistencia basado en LevelDB, llamado Antidote-LevelDB. LevelDB está diseñado para datos no versionados, y solo admite operaciones de lectura y escritura. Adaptarlo para soportar múltiples versiones de objetos, actualizaciones concurrentes y estructuras de datos replicadas multiversión de alto nivel, como las que se soportan en Antidote, plantea muchos desafíos nuevos. Esta tesis discute estos problemas, nuestro diseño e implementación. Nuestros experimentos muestran que Antidote-LevelDB corrige muchos de los problemas del modelo anterior, aumentando el throughput en la mayoría de los escenarios, al mismo tiempo que proporciona tolerancia a fallas y modularidad. Antidote-LevelDB es un primer paso hacia proveer una solución completa para el manejo de multiversión de las estructuras de datos replicadas provistas por Antidote. Este es un enfoque nuevo e innovador para resolver este tipo de problemas, por lo que puede ser considerado el primero en su tipo.
publishDate 2017
dc.date.none.fl_str_mv 2017
dc.type.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
info:eu-repo/semantics/publishedVersion
http://purl.org/coar/resource_type/c_7a1f
info:ar-repo/semantics/tesisDeGrado
format bachelorThesis
status_str publishedVersion
dc.identifier.none.fl_str_mv https://hdl.handle.net/20.500.12110/seminario_nCOM000678_AlvarezColombo
url https://hdl.handle.net/20.500.12110/seminario_nCOM000678_AlvarezColombo
dc.language.none.fl_str_mv eng
language eng
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
https://creativecommons.org/licenses/by-nc-sa/2.5/ar
eu_rights_str_mv openAccess
rights_invalid_str_mv https://creativecommons.org/licenses/by-nc-sa/2.5/ar
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
publisher.none.fl_str_mv Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales
dc.source.none.fl_str_mv reponame:Biblioteca Digital (UBA-FCEN)
instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
instacron:UBA-FCEN
reponame_str Biblioteca Digital (UBA-FCEN)
collection Biblioteca Digital (UBA-FCEN)
instname_str Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
instacron_str UBA-FCEN
institution UBA-FCEN
repository.name.fl_str_mv Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
repository.mail.fl_str_mv ana@bl.fcen.uba.ar
_version_ 1844618753215561728
score 13.070432