Be General and Don’t Give Up Consistency in Geo-Replicated Transactional Systems

  • Alexandru Turcu
  • Sebastiano Peluso
  • Roberto Palmieri
  • Binoy Ravindran
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8878)


We present Alvin, a system for managing concurrent transactions running on a set of geographically distributed sites. Alvin supports general-purpose transactions, and guarantees strong consistency criteria. Through a novel partial order broadcast protocol, Alvin maximizes the parallelism of ordering and local transaction processing. Alvin processes read-only transactions either locally or globally, according to the selected consistency criterion, and orders only conflicting transactions across all sites. We built Alvin in the Go language and conducted an evaluation study relying on the Amazon EC2 infrastructure and Paxos- and EPaxos-based state machine replication protocols as competitors. Our experimental results reveal that Alvin provides significant speed up for read-dominated TPC-C workloads and on 7 datacenters by as much as 4.8x when compared to EPaxos, and up to 26% in write-intensive workloads.


Geo-Replication Transaction Distributed System 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Adya, A.: Weak Consistency: A Generalized Theory and Optimistic Implementations for Distributed Transactions. PhD thesis AAI0800775. MIT (1999)Google Scholar
  2. 2.
    Almeida, S., Leitão, J., Rodrigues, L.: ChainReaction: A Causal+ Consistent Datastore Based on Chain Replication. In: 8th ACM EuroSys, pp. 85–98. ACM (2013)Google Scholar
  3. 3.
    Bernstein, P.A., Hadzilacos, V., Goodman, N.: Concurrency Control and Recovery in Database Systems. Addison-Wesley (1987)Google Scholar
  4. 4.
    Cachopo, J., Rito-Silva, A.: Versioned Boxes As the Basis for Memory Transactions. Sci. Comput. Program. 63(2), 172–185 (2006)CrossRefzbMATHMathSciNetGoogle Scholar
  5. 5.
    Corbett, J.C., et al.: Spanner: Google’s Globally Distributed Database. ACM Trans. Comput. Syst. 31(3), 8:1–8:22 (2013)Google Scholar
  6. 6.
    TPC-C Benchmark,
  7. 7.
    Défago, X., Schiper, A., Urbán, P.: Total Order Broadcast and Multicast Algorithms: Taxonomy and Survey. ACM Comput. Surv. 36(4), 372–421 (2004)CrossRefGoogle Scholar
  8. 8.
    Guerraoui, R., Kapalka, M.: On the Correctness of Transactional Memory. In: 13th ACM SIGPLAN PPoPP, pp. 175–184. ACM (2008)Google Scholar
  9. 9.
    Guerraoui, R., Rodrigues, L.: Introduction to Reliable Distributed Programming. Springer (2006)Google Scholar
  10. 10.
    Guerraoui, R., Schiper, A.: Genuine Atomic Multicast in Asynchronous Distributed Systems. Theor. Comput. Sci. 254, 297–316 (2001)CrossRefzbMATHMathSciNetGoogle Scholar
  11. 11.
    Hirve, S., Palmieri, R., Ravindran, B.: Archie: A Speculative Replicated Transactional System. In: 15th ACM/IFIP/USENIX Middleware. ACM (2014)Google Scholar
  12. 12.
    Kraska, T., Pang, G., Franklin, M.J., Madden, S., Fekete, A.: MDCC: Multi-data Center Consistency. In: 8th ACM EuroSys, pp. 113–126. ACM (2013)Google Scholar
  13. 13.
    Lamport, L.: Generalized Consensus and Paxos. Technical report MSR-TR-2005-33, Microsoft Research (2005)Google Scholar
  14. 14.
    Lamport, L.: The Part-time Parliament. ACM Trans. Comput. Syst. 16(2), 133–169 (1998)CrossRefGoogle Scholar
  15. 15.
    Lamport, L.: Fast Paxos. Distributed Computing 19(2), 79–103 (2006)CrossRefzbMATHMathSciNetGoogle Scholar
  16. 16.
    Mao, Y., Junqueira, F.P., Marzullo, K.: Mencius: Building Efficient Replicated State Machines for WANs. In: 8th USENIX OSDI, pp. 369–384. USENIX (2008)Google Scholar
  17. 17.
    Moraru, I., Andersen, D.G., Kaminsky, M.: There is More Consensus in Egalitarian Parliaments. In: 24th ACM SOSP, pp. 358–372. ACM (2013)Google Scholar
  18. 18.
    Pedone, F., Guerraoui, R., Schiper, A.: The Database State Machine Approach. Distrib. Parallel Databases 14(1), 71–98 (2003)CrossRefGoogle Scholar
  19. 19.
    Pedone, F., Schiper, A.: Generic Broadcast. In: Jayanti, P. (ed.) DISC 1999. LNCS, vol. 1693, pp. 94–106. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  20. 20.
    Peluso, S., Ruivo, P., Romano, P., Quaglia, F., Rodrigues, L.: When Scalability Meets Consistency: Genuine Multiversion Update-Serializable Partial Data Replication. In: 32nd ICDCS, pp. 455–465. IEEE Computer Society (2012)Google Scholar
  21. 21.
    Schmidt, R., Pedone, F.: A Formal Analysis of the Deferred Update Technique. In: Tovar, E., Tsigas, P., Fouchal, H. (eds.) OPODIS 2007. LNCS, vol. 4878, pp. 16–30. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  22. 22.
    Sovran, Y., Power, R., Aguilera, M.K., Li, J.: Transactional Storage for Geo-replicated Systems. In: 23rd ACM SOSP, pp. 385–400. ACM (2011)Google Scholar
  23. 23.
    Zhang, Y., Power, R., Zhou, S., Sovran, Y., Aguilera, M.K., Li, J.: Transaction Chains: Achieving Serializability with Low Latency in Geo-distributed Storage Systems. In: 24th ACM SOSP, pp. 276–291. ACM (2013)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Alexandru Turcu
    • 1
  • Sebastiano Peluso
    • 1
  • Roberto Palmieri
    • 1
  • Binoy Ravindran
    • 1
  1. 1.ECE DepartmentVirginia TechBlacksburgUSA

Personalised recommendations