Consistency and Availability of Data in Replicated NoSQL Databases

Tadeusz Pankowski

Abstract

Highly distributed NoSQL key-value databases have been designed to meet the needs of various applications in the field of social networks, Web search and e-commerce. High availability, fault tolerance and scalability (i.e. Quality of Service, QoS) of such systems is in conflict with the strong consistency (Quality of Data, QoD). Thus, a new functionality of services, balancing QoS and QoD, is needed. This functionality is referred as Service Level Agreements, SLA) (Terry et al., 2013). We present a system Lorq as a proposal of a solution to this problem. Lorq is a consensus quorum based algorithm for NoSQL data replication. In this paper, we discuss how different consistency levels are guaranteed by Lorq.

References

  1. Abadi, D. (2012). Consistency tradeoffs in modern distributed database system design. IEEE Computer, 45(2):37-42.
  2. Amazon DynamoDB Pricing (2014). http://aws.amazon. com/dynamodb/pricing.
  3. Asynchronous Programming with Async and Await (2014). http://msdn.microsoft.com/en-us/library/ hh191443.aspx.
  4. Bernstein, P. A., Hadzilacos, V., and Goodman, N. (1987). Concurrency Control and Recovery in Database Systems. Addison Wesley Publishing Company.
  5. Burckhardt, S., Gotsman, A., Yang, H., and Zawirski, M. (2014). Replicated data types: specification, verification, optimality. In ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL'14, pages 271-284.
  6. Cattell, R. (2010). Scalable SQL and NoSQL data stores. SIGMOD Record, 39(4):12-27.
  7. Chang, F., Dean, J., Ghemawat, S., Hsieh, W. C., and et al. (2008). Bigtable: A distributed storage system for structured data. ACM Trans. Comput. Syst., 26(2).
  8. Cooper, B. F., Ramakrishnan, R., Srivastava, U., Silberstein, A., and et al. (2008). PNUTS: Yahoo!'s hosted data serving platform. PVLDB, 1(2):1277-1288.
  9. Corbett, J. C., Dean, J., Epstein, M., and et al. (2013). Spanner: Google's globally distributed database. ACM Trans. Comput. Syst., 31(3):8.
  10. DeCandia, G., Hastorun, D., Jampani, M., and et al. (2007). Dynamo: Amazon's highly available key-value store. SIGOPS Oper. Syst. Rev., 41(6):205-220.
  11. Gafni, E. and Lamport, L. (2000). Disk Paxos. In Distributed Computing, DISC 2000, LNCS 1914, pages 330-344. Springer.
  12. Gifford, D. K. (1979). Weighted Voting for Replicated Data. In ACM SIGOPS 7th Sym. on Op. Systems Principles, SOSP'79, pages 150-162.
  13. Gilbert, S. and Lynch, N. A. (2012). Perspectives on the CAP theorem. IEEE Computer, 45(2):30-36.
  14. Golab, W., Rahman, M. R., AuYoung, A., Keeton, K., and Li, X. S. (2014). Eventually consistent: Not what you were expecting? Commun. ACM, 57(3):38-44.
  15. Lakshman, A. and Malik, P. (2010). Cassandra: A decentralized structured storage system. SIGOPS Oper. Syst. Rev., 44(2):35-40.
  16. Lamport, L. (2006). Fast Paxos. Distributed Computing, 19(2):79-103.
  17. Ongaro, D. and Ousterhout, J. (2014). In Search of an Understandable Consensus Algorithm. In USENIX Annual Technical Conference, pages 305-319.
  18. Pankowski, T. (2015). A consensus quorum algorithm for replicated NoSQL data. In BDAS 2015, Communications in Computer and Information Science, pages 1-10. Springer.
  19. Shapiro, M., Preguic¸a, N. M., Baquero, C., and Zawirski, M. (2011). Conflict-free replicated data types. Lecture Notes in Computer Science 6976, pages 386-400.
  20. Terry, D. (2013). Replicated data consistency explained through baseball. Commun. ACM, 56(12):82-89.
  21. Terry, D. B., Prabhakaran, V., Kotla, R., Balakrishnan, M., and et al. (2013). Consistency-based service level agreements for cloud storage. In ACM SIGOPS, SOSP'13, pages 309-324.
  22. Vogels, W. (2009). Eventually consistent. Commun. ACM, 52(1):40-44.
Download


Paper Citation


in Harvard Style

Pankowski T. (2015). Consistency and Availability of Data in Replicated NoSQL Databases . In Proceedings of the 10th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE, ISBN 978-989-758-100-7, pages 102-109. DOI: 10.5220/0005368101020109


in Bibtex Style

@conference{enase15,
author={Tadeusz Pankowski},
title={Consistency and Availability of Data in Replicated NoSQL Databases},
booktitle={Proceedings of the 10th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,},
year={2015},
pages={102-109},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005368101020109},
isbn={978-989-758-100-7},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 10th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,
TI - Consistency and Availability of Data in Replicated NoSQL Databases
SN - 978-989-758-100-7
AU - Pankowski T.
PY - 2015
SP - 102
EP - 109
DO - 10.5220/0005368101020109