STRING: Social-Transaction Routing over a Ring

  • Idrissa Sarr
  • Hubert Naacke
  • Abderrahmane Ould Mohamed Moctar
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8056)


A key requirement for social applications is to support fluid interactions among users. Basically, social applications deal with user-oriented data: users own their data and may access or modify data owned by others (say their friends). Therefore, several users may focus simultaneously on a small piece of data (hot data) owned by the same user. Such a situation, more known as a net effect, has the drawback to generate temporal peak loads able to slow user interactions. Moreover, a social application inherently generates multi-node (or multi-partition) transactions as far as users interact between them.

Based on those observations, we propose String, a transaction scheduling layer that uses various strategies to order (or group) transactions based on their access classes. String reduces significantly the overhead cost of processing one transaction at a time while allowing to process rare multi-nodes transactions in en efficient way. The key novelties lie in (1) our distributed transaction scheduling devised on top of a ring to ease communication and (2) our ability to absorb peak loads as early as possible by splitting the transaction processing in two phases: a scheduling phase, resilient to peak load, followed by a group execution phase. We designed and simulated String using SimJava and we ran a series of experiments. Compared with some existing solutions, String shows interesting and promising results.


Transaction processing load-aware query routing data consistency 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abadi, D.: Consistency tradeoffs in modern distributed database system design: Cap is only part of the story. IEEE Computer 45(2), 37–42 (2012)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Baker, J., et al.: Megastore: Providing scalable, highly available storage for interactive services. In: Conference on Innovative Data Systems Research (CIDR) (2011)Google Scholar
  3. 3.
    Carstoiu, D., Lepadatu, E., Gaspar, M.: Hbase - non sql database, performances evaluation. Int. Journal of Advancements in Computing Technology 2(5), 42–52 (2010)CrossRefGoogle Scholar
  4. 4.
    Chang, F., Dean, J., Ghemawat, S., Hsieh, W.C., Wallach, D.A., Burrows, M., Chandra, T., Fikes, A., Gruber, R.: Bigtable: A distributed storage system for structured data. In: Symposium on Operating Systems Design and Implementation (OSDI), pp. 205–218 (2006)Google Scholar
  5. 5.
    O. Corporation. Oracle nosql database, 11g release 2Google Scholar
  6. 6.
    Helland, P., Sammer, H., Lyon, J., Carr, R., Garrett, P., Reuter, A.: Group commit timers and high volume transaction systems. In: International Workshop on High Performance Transaction Systems, pp. 301–329 (1989)Google Scholar
  7. 7.
    Howell, F., Mcnab, R.: simjava: A discrete event simulation library for java. In: International Conference on Web-Based Modeling and Simulation, pp. 51–56 (1998)Google Scholar
  8. 8.
    Kallman, R., Kimura, H., Natkins, J., Pavlo, A., Rasin, A., Zdonik, S., Jones, E.P.C., Madden, S., Stonebraker, M., Zhang, Y., Hugg, J., Abadi, D.J.: H-store: a high-performance, distributed main memory transaction processing system. Proc. VLDB Endow. 1(2), 1496–1499 (2008)Google Scholar
  9. 9.
    Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. Operating Systems Review 44(2), 35–40 (2010)CrossRefGoogle Scholar
  10. 10.
    Millet, L., Lorrillere, M., Arantes, L., Gançarski, S., Naacke, H., Sopena, J.: Facing peak loads in a p2p transaction system. In: Proceedings of the First Workshop on P2P and Dependability, P2P-Dep, pp. 1–7 (2012)Google Scholar
  11. 11.
    Sarr, I., Naacke, H., Gançarski, S.: Transpeer: Adaptive distributed transaction monitoring for web2.0 applications. In: ACM Symposium on Applied Computing, Dependable and Adaptive Distributed Systems Track (SAC DADS), pp. 423–430 (2010)Google Scholar
  12. 12.
    Silberstein, A., Chen, J., Lomax, D., McMillan, B., Mortazavi, M., Narayan, P.P.S., Ramakrishnan, R., Sears, R.: Pnuts in flight: Web-scale data serving at yahoo. IEEE Internet Computing 16(1), 13–23 (2012)CrossRefGoogle Scholar
  13. 13.
    Thomson, A., Diamond, T., Weng, S.-C., Ren, K., Shao, P., Abadi, D.J.: Calvin: fast distributed transactions for partitioned database systems. In: ACM Int’l Conf. on Management of Data (SIGMOD), pp. 1–12 (2012)Google Scholar
  14. 14.
    Wei, Z., Pierre, G., Chi, C.-H.: Cloudtps: Scalable transactions for web applications in the cloud. IEEE T. on Services Computing 5(4), 525–539 (2012)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Idrissa Sarr
    • 1
  • Hubert Naacke
    • 2
  • Abderrahmane Ould Mohamed Moctar
    • 1
  1. 1.LID LaboratoryUniversity Cheikh Anta DiopDakarSenegal
  2. 2.LIP6 LaboratoryUPMC Sorbonne UniversitésParisFrance

Personalised recommendations