1 research outputs found
Specification of a Transactionally and Causally-Consistent (TCC) database
Large-scale application are typically built on top of geo-distributed databases running on multiple datacenters (DCs) situated around the globe. Network failures are unavoidable, but inmost internet services, availability is not negotiable; in this context, the CAP theorem proves that it is impossible to provide both availability and strong consistency at the same time. Sacrificing strong consistency, exposes developers to complex anomalies that are complex to build against.AntidoteDB is a database designed for geo-replication. As it aims to provide high availability with the strongest possible consistency model, it guarantees Transactional Causal Consistency (TCC) and supports CRDTs. TCC means that: (1) if one update happens before another, they will be observed in the same order (causal consistency), and (2) updates in the same transaction are observed all-or-nothing.In AntidoteDB, the database is persisted as a journal of operations. In the current implementation, the journal grows without bound. The main objective of this work is to specify a mechanism for pruning the journal safely, by storing recent checkpoints. This will enable faster reads and crash recovery.Les applications Ă grande Ă©chelle sont gĂ©nĂ©ralement construites au-dessus de base de donnĂ©es gĂ©o-distribuĂ©es qui tournent sur de multiples centres de donnĂ©es rĂ©partis dans le monde.Les dĂ©faillances de rĂ©seaux sont inĂ©vitables, pourtant pour la majoritĂ© des services en ligne, la disponibilitĂ© est essentielle. Dans ce contexte, le thĂ©orĂšme CAP prouve quâil est impossible dâĂȘtre Ă la fois hautement disponible et fournir de la cohĂ©rence forte. Sacrifier la cohĂ©rence forte, expose les dĂ©veloppeurs a des anomalies complexes Ă gĂ©rer. AntidoteDB est une base de donnĂ©es conçue pour ĂȘtre rĂ©partie Ă travers le monde. Avec pour objectif de fournir une haute disponibilitĂ© avec le plus haut modĂšle de cohĂ©rence possible.Elle garantit de la cohĂ©rence causale transactionnelle (TCC) et des types de donnĂ©es convergents(CRDTs). TCC signifie que : (1) si une mise Ă jour a eu lieu avant une autre, elles seront observĂ©es dans le mĂȘme ordre (cohĂ©rence causal), et (2) les mises Ă jour appartenant Ă une mĂȘme transaction seront vues simultanĂ©ment ou pas du tout.Dans AntidoteDB, la base de donnĂ©es est stockĂ©e sous la forme dâun journal dâopĂ©ration. Dans lâimplĂ©mentation actuelle le journal croit sans limite. Lâobjectif principal de ce travail est dâĂ©crire la spĂ©cification dâun mĂ©canisme de troncature du journal sĂ»r, en effectuant des points de contrĂŽles. Cela permettra dâavoir des lectures plus rapides ainsi quâune rĂ©cupĂ©ration de donnĂ©es plus rapid