Multi Data center Transaction Chain : Achieving ACID for cross data center multi-key transactions

Transaction support for Geo-replicated storage system is one of the most popular challenges in the last few years. Some systems gave up for supporting transactions and let upper application layer to handle it. While some other systems tried with different solutions on guaranteeing the correctness of...

Full description

Bibliographic Details
Main Author: Wang, Qinjin
Format: Others
Language:English
Published: KTH, Skolan för informations- och kommunikationsteknik (ICT) 2016
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-198664
id ndltd-UPSALLA1-oai-DiVA.org-kth-198664
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-kth-1986642018-01-14T05:11:51ZMulti Data center Transaction Chain : Achieving ACID for cross data center multi-key transactionsengWang, QinjinKTH, Skolan för informations- och kommunikationsteknik (ICT)2016Software EngineeringProgramvaruteknikTransaction support for Geo-replicated storage system is one of the most popular challenges in the last few years. Some systems gave up for supporting transactions and let upper application layer to handle it. While some other systems tried with different solutions on guaranteeing the correctness of transactions and paid some efforts on performance improvements. However, there are very few systems that claim the supporting of ACID in the global scale. In this thesis, we have studied on various data consistency and transaction design theories such as Paxos, transaction chopping, transaction chain, etc. We have also analyzed several recent distributed transactional systems. As the result, a Geo-replicated transactional framework, namely Multi Data center Transaction Chain (MDTC), is designed and implemented. MDTC adopts transaction chopping approach, which brings more concurrency by chopping transactions into pieces. A two phase traversal mechanism is designed to validate and maintain dependencies. For cross data center consistency, a Paxos like majority vote protocol is designed and implemented as a state machine. Moreover, some tuning such as executing read-only transaction locally helps to improve performance of MDTC in different scenarios. MDTC only requires 1 cross data center message roundtrip for executing a distributed transaction globally. ACID properties are kept in MDTC. We have evaluated MDTC with an extended TPC-C benchmark on top of Cassandra. The results from various setups have been evaluated and the result shows that MDTC achieves a good performance on throughout and latency. Meanwhile it has very low abort rate and scales well for transactions executed in a global scale. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-198664TRITA-ICT-EX ; 2016:7application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Others
sources NDLTD
topic Software Engineering
Programvaruteknik
spellingShingle Software Engineering
Programvaruteknik
Wang, Qinjin
Multi Data center Transaction Chain : Achieving ACID for cross data center multi-key transactions
description Transaction support for Geo-replicated storage system is one of the most popular challenges in the last few years. Some systems gave up for supporting transactions and let upper application layer to handle it. While some other systems tried with different solutions on guaranteeing the correctness of transactions and paid some efforts on performance improvements. However, there are very few systems that claim the supporting of ACID in the global scale. In this thesis, we have studied on various data consistency and transaction design theories such as Paxos, transaction chopping, transaction chain, etc. We have also analyzed several recent distributed transactional systems. As the result, a Geo-replicated transactional framework, namely Multi Data center Transaction Chain (MDTC), is designed and implemented. MDTC adopts transaction chopping approach, which brings more concurrency by chopping transactions into pieces. A two phase traversal mechanism is designed to validate and maintain dependencies. For cross data center consistency, a Paxos like majority vote protocol is designed and implemented as a state machine. Moreover, some tuning such as executing read-only transaction locally helps to improve performance of MDTC in different scenarios. MDTC only requires 1 cross data center message roundtrip for executing a distributed transaction globally. ACID properties are kept in MDTC. We have evaluated MDTC with an extended TPC-C benchmark on top of Cassandra. The results from various setups have been evaluated and the result shows that MDTC achieves a good performance on throughout and latency. Meanwhile it has very low abort rate and scales well for transactions executed in a global scale.
author Wang, Qinjin
author_facet Wang, Qinjin
author_sort Wang, Qinjin
title Multi Data center Transaction Chain : Achieving ACID for cross data center multi-key transactions
title_short Multi Data center Transaction Chain : Achieving ACID for cross data center multi-key transactions
title_full Multi Data center Transaction Chain : Achieving ACID for cross data center multi-key transactions
title_fullStr Multi Data center Transaction Chain : Achieving ACID for cross data center multi-key transactions
title_full_unstemmed Multi Data center Transaction Chain : Achieving ACID for cross data center multi-key transactions
title_sort multi data center transaction chain : achieving acid for cross data center multi-key transactions
publisher KTH, Skolan för informations- och kommunikationsteknik (ICT)
publishDate 2016
url http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-198664
work_keys_str_mv AT wangqinjin multidatacentertransactionchainachievingacidforcrossdatacentermultikeytransactions
_version_ 1718609724531802112