Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

Design and evaluation of a conit-based continuous consistency model for replicated services

Published: 01 August 2002 Publication History

Abstract

The tradeoffs between consistency, performance, and availability are well understood. Traditionally, however, designers of replicated systems have been forced to choose from either strong consistency guarantees or none at all. This paper explores the semantic space between traditional strong and optimistic consistency models for replicated services. We argue that an important class of applications can tolerate relaxed consistency, but benefit from bounding the maximum rate of inconsistent access in an application-specific manner. Thus, we develop a conit-based continuous consistency model to capture the consistency spectrum using three application-independent metrics, numerical error, order error, and staleness. We then present the design and implementation of TACT, a middleware layer that enforces arbitrary consistency bounds among replicas using these metrics. We argue that the TACT consistency model can simultaneously achieve the often conflicting goals of generality and practicality by describing how a broad range of applications can express their consistency semantics using TACT and by demonstrating that application-independent algorithms can efficiently enforce target consistency levels. Finally, we show that three replicated applications running across the Internet demonstrate significant semantic and performance benefits from using our framework.

References

[1]
Adya, A., Gruber, R., Liskov, B., and Maheshwari, U. 1995. Efficient optimistic concurrency control using loosely synchronized clocks. In Proceedings of the ACM SIGMOD Conference on Management of Data. ACM Press, New York, NY, 23--24.]]
[2]
Adya, A., Liskov, B., and O'Neil, P. 2000. Generalized isolation level definitions. In Proceedings of the IEEE International Conference on Data Engineering. IEEE Computer Society Press, Los alamitos, CA, 67--78.]]
[3]
Agrawal, D., Abbadi, A. E., and Singh, A. K. 1993. Consistency and orderability: Semantics-based correctness criteria for databases. ACM Trans. Database Syst. 18, 3 (Sept.), 460--486.]]
[4]
Agrawal, D., Bruno, J. L., Abbadi, A. E., and Krishnaswamy, V. 1994. Relative serializability: An approach for relaxing the atomicity of transactions. In Proceedings of the 13th ACM Symposium on Principles of Database Systems. ACM Press, New York, NY, 139--149.]]
[5]
Alonso, R., Barbara, D., and Garcia-Molina, H. 1990. Data caching issues in an information retrieval system. ACM Trans. Database Syst. 15, 3, 359--384.]]
[6]
ANSI. 1992. American National Standard for Information Systems---Database Language---SQL, ANSI X3. 135--1992. American National Standards Institute, New York, NY.]]
[7]
Badrinath, B. R. and Ramamritham, K. 1992. Semantics-based concurrency control: Beyond commutativity. ACM Trans. Database Syst. 17, 1 (March), 163--199.]]
[8]
Benford, S., Fahlen, L., Greenhalge, C., and Bowers, J. 1994. Managing mutual awareness in collaborative virtual environments. In Proceedings of the ACM Conference on Virtual Reality and Technology. ACM Press, New York, NY, 233--236.]]
[9]
Bernstein, P. and Goodman, N. 1984. The failure and recovery problem for replicated distributed databases. ACM Trans. Database Syst. 14, 2, 264--290.]]
[10]
Bernstein, P. A., Hadzilacos, V., and Goodman, N. 1987. Concurrency Control and Recovery in Database Systems. Addison-Wesley, Reading, MA.]]
[11]
Bershad, B. N., Savage, S., P. Pardyak, E. G. S., Fiuczynski, M., Becker, D., Chambers, C., and Eggers, S. 1995. Extensibility, safety and performance in the SPIN operating system. In Proceedings of the 15th ACM Symposium on Operating Systems Principles. ACM Press, New York, NY, 267--284.]]
[12]
Birman, K. P. 1993. The proecss group appraoch to reliable distributed computing. Commun. ACM 36, 12, 36--53.]]
[13]
Coan, B., Oki, B., and Kolodner, E. 1986. Limitations on database availability when networks partition. In Proceedings of the 5th ACM Symposium on Principle of Distributed Computing. ACM Press, New York, NY, 187--194.]]
[14]
Codd, E. F. 1970. A relational model of data for large shared data banks. Commun. ACM 13, 6, 377--387.]]
[15]
Cowan, C., Lutfiyya, H., and Bauer, M. 1995. Performance benefits of optimistic programming: A measure of HOPE. In Proceedings of the 4th IEEE International Symposium on High-Performance Distributed Computing. ACM Press, New York, NY, 197--204.]]
[16]
Davidson, S., Garcia-Molina, H., and Skeen, D. 1985. Consistency in partitioned networks. ACM Comput. Surv. 17, 3, 314--370.]]
[17]
Dewan, P., Choudhary, R., and Shen, H. 1994. An editing-based characterization of the design space of collaborative applications. J. Org. Comput. 4, 3, 219--240.]]
[18]
DiPippo, L. B. C. and Wolfe, V. F. 1993. Object-based semantic real-time concurrency control. In Proceedings of the IEEE Real-Time Systems Symposium. IEEE Computer Society Press, Los alamitos, CA, 135--147.]]
[19]
Drew, P. and Pu, C. 1995. Asychronous consistency restoration under epsilon serializability. In Proceedings of the 28th Hawaiian International Conference on Systems Sciences. IEEE Computer Society Press, Los alamitos, CA, 16--25.]]
[20]
Edwards, W. K., Mynatt, E., Petersen, K., Spreitzer, M., Terry, D., and Theimer, M. 1997. Designing and implementing asynchronous collaborative applications with Bayou. In Proceedings of 10th ACM Symposium on User Interface Software and Technology. ACM Press, New York, NY, 119--128.]]
[21]
Fielding, R., Gettys, J., Mogul, J., Frystyk, H., and Berners-Lee, T. 1997. Hypertext Transfer Protocol---HTTP/1.1. RFC 2068.]]
[22]
Fox, A. and Brewer, E. 1999. Harvest, yield, and scalable tolerant systems. In Proceedings of HOTOS-VII. IEEE Computer Society Press, Los alamitos, CA, 174--178.]]
[23]
Gallersdorfer, R. and Nicola, M. 1995. Improving performance in replicated databases through relaxed coherency. In Proceedings of the 21st International Conference on Very Large Databases. VLDB Society, Mumbai, India, 445--456.]]
[24]
Garcia-Molina, H. and Wiederhold, G. 1982. Read-only transactions in a distributed database. ACM Trans. Database Syst. 7, 2, 209--234.]]
[25]
Gautier, L. and Diot, C. 1998. Design and Evaluation of MiMaze, a multi-player game on the Internet. In Proceedings of IEEE Multimedia Systems Conference. IEEE Computer Society Press, Los alamitos, CA, 233--236.]]
[26]
Golding, R. 1992a. A weak-consistency architecture for distributed information services. Comput. Syst. 5, 4 (Fall), 379--405.]]
[27]
Golding, R. 1992b. Weak-Consistency Group Communication and Membership. Ph.D. thesis, University of California, Santa Cruz.]]
[28]
Guy, R., Heidemann, J., Mak, W., Jr., T. P., Popek, G., and Rothmeier, D. 1990. Implementation of the Ficus replicated file system. In Proceedings Summer USENIX Conference. USENIX, Berkeley, CA, 63--72.]]
[29]
Guy, R. G., Reiher, P., Ratner, D., Gunter, M., Ma, W., and Popek, G. J. 1998. Rumor: Mobile data access through optimistic peer-to-peer replication. In Proceedings of the 17th International Conference on Conceptual Modeling (ER'98).]]
[30]
Hellerstein, J. M., Haas, P. J., and Wang, H. J. 1997. Online aggregation. In Proceedings of the ACM-SIGMOD International Conference on Management of Data. ACM Press, New York, NY, 171--182.]]
[31]
Herlihy, M. and Wing, J. 1990. Linearizability: A correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12, 3 (July), 463--492.]]
[32]
Holliday, J., Steinke, R., Agrawal, D., and Abbadi, A. E. 2000. Epidemic quorums for managing replicated data. In Proceedings of the 19th IEEE International Performance, Computing, and Communications Conference. IEEE Computer Society Press, Los alamitos, CA, 93--100.]]
[33]
Honda, Y., Matsuda, K., Rekimoto, J., and Lea, R. 1995. Virtual society: Extending the WWW to support a multi-user interactive shared 3D environment. In Proceedings of the First Annual Symposium on the Virtual Reality Modeling Language. 109--116.]]
[34]
Kaashoek, M. F., Engler, D. R., Ganger, G. R., Briceo, H. M., Hunt, R., Mazires, D., Pinckney, T., Grimm, R., Jannotti, J., and Mackenzie, K. 1997. Application performance and flexibility on exokernel systems. In Proceedings of the 16th ACM Symposium on Operating Systems Principles. ACM Press, New York, NY, 52--65.]]
[35]
Keleher, P. 1999. Decentralized replicated-object protocols. In Proceedings of the 18th Annual ACM Symposium on Principles of Distributed Computing. ACM Press, New York, NY, 143--151.]]
[36]
Keleher, P., Cox, A. L., and Zwaenepoel, W. 1992. Lazy release consistency for software distributed shared memory. In Proceedings of the 19th Annual International Symposium on Computer Architecture. ACM Press, New York, NY, 13--21.]]
[37]
Kistler, J. J. and Satyanarayanan, M. 1992. Disconnected operation in the Coda file system. ACM Trans. Comput. Syst. 10, 1 (Feb.), 3--25.]]
[38]
Kordale, R. and Ahamad, M. 1996. A Scalable technique for implementing multiple consistency levels for distributed objects. In Proceedings of the 16th IEEE International Conference on Distributed Computing Systems. IEEE Computer Society Press, Los alamitos, CA, 23--30.]]
[39]
Krishnakumar, N. and Bernstein, A. 1994. Bounded ignorance: A technique for increasing concurrency in a replicated system. ACM Trans. Database Syst. 19, 4 (Dec.), 586--625.]]
[40]
Kuo, T.-W. and Mok, A. K. 1992. Application semantics and concurrency control of real-time data-intensive applications. In Proceedings of the IEEE Real-Time Systems Symposium. IEEE Computer Society Press, Los alamitos, CA, 35--45.]]
[41]
Kuo, T.-W. and Mok, A. K. 1993. SSP: A semantics-based protocol for real-time data access. In Proceedings of the IEEE Real-Time Systems Symposium. IEEE Computer Society Press, Los alamitos, CA, 76--86.]]
[42]
Ladin, R., Liskov, B., Shirira, L., and Ghemawat, S. 1992. Providing availability using lazy replication. ACM Trans. Comput. Syst. 10, 4, 360--391.]]
[43]
Lamport, L. 1978. Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21, 7 (July), 558--565.]]
[44]
Noble, B., Fleis, B., and Kim, M. 1999. A case for fluid replication. In Proceedings of the 1999 Network Storage Symposium (Netstore). 1--5.]]
[45]
Olston, C. and Widom, J. 2000. Bounded aggregation: Offering a precision-performance tradeoff in replicated systems. In Proceedings of the 26th International Conference on Very Large Databases. VLDB Society, Mumbai, India, 144--155.]]
[46]
Pai, V. S., Aron, M., Banga, G., Svendsen, M., Druschel, P., Zwaenepoel, W., and Nahum, E. 1998. Locality-aware request distribution in cluster-based network servers. In Eighth International Conference on Architectural Support for Programming Languages and Operating Systems. ACM Press, New York, NY, 205--216.]]
[47]
Patterson, D. and Hennessy, J. 1996. Computer Architecture: A Quantitative Approach, 2nd ed. Morgan Kaufman, San Francisco, CA.]]
[48]
Petersen, K., Spreitzer, M., Terry, D., Theimer, M., and Demers, A. 1997. Flexible update propagation for weakly consistent replication. In Proceedings of the 16th ACM Symposium on Operating Systems Principles (SOSP-16). ACM Press, New York, NY, 288--301.]]
[49]
Pitoura, E. and Bhargava, B. K. 1995. Maintaining consistency of data in mobile distributed environments. In Proceedings of the 15th International Conference on Distributed Computing Systems. IEEE Computer Society Press, Los alamitos, CA, 404--413.]]
[50]
Pu, C., Hseush, W., Kaiser, G. E., Wu, K.-L., and Yu, P. S. 1993. Distributed divergence control for epsilon serializability. In Proceedings of the International Conference on Distributed Computing Systems. IEEE Computer Society Press, Los alamitos, CA, 449--456.]]
[51]
Pu, C. and Leff, A. 1991. Replication control in distributed system: An asynchronous approach. In Proceedings of the ACM SIGMOD Conference on Management of Data.]]
[52]
Ratner, D., Reiher, P., and Popek, G. J. 1997. Dynamic version vector maintenance. Technical report CSD-970022, University of California, Los Angeles, Los Angeles CA.]]
[53]
Saito, Y., Bershad, B., and Levy, H. 1999. Manageability, availability and performance in Porcupine: A highly scalable Internet mail service. In Proceedings of the 17th ACM Symposium on Operating Systems Principles. ACM Press, New York, NY, 1--15.]]
[54]
Schneider, F. B. 1990. Implementing fault-tolerant services using the state machine approach: A tutorial. ACM Comput. Surv. 22, 4, 299--319.]]
[55]
Shen, X., Arvind, and Rudolph, L. 1999. Commit-reconcile Fences (CRF): A new memory model for architects and compiler writers. In Proceedings of the 26th Annual International Symposium on Computer Architecture. ACM Press, New York, NY, 150--161.]]
[56]
Singla, A., Ramachandran, U., and Hodgins, J. 1997. Temporal notions of synchronization and consistency in Beehive. In Proceedings of the 9th ACM Symposium on Parallel Algorithms and Architectures. ACM Press, New York, NY, 211--220.]]
[57]
Terry, D., Demers, A., Petersen, K., Spreitzer, M., Theimer, M., and Welch, B. 1994. Session guarantees for weakly consistent replicated data. In Proceedings of the 3rd International Conference on Parallel and Distributed Information Systems. IEEE Press, Los alamitos, CA, 140--149.]]
[58]
Terry, D. B., Theimer, M. M., Petersen, K., Demers, A. J., Spreitzer, M. J., and Hauser, C. H. 1995. Managing update conflicts in Bayou, a weakly connected replicated storage system. In Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles. ACM Press, New York, NY, 172--183.]]
[59]
Torres-Rojas, F. and Ahamad, M. 1996. Plausible clocks: Constant size logical clocks for distributed systems. In Proceedings of the 10th International Workshop on Distributed Algorithms. IEEE Computer Society Press, Los alamitos, CA, 71--88.]]
[60]
Torres-Rojas, F., Ahamad, M., and Raynal, M. 1999. Timed consistency for shared distributed objects. In Proceedings of the 18th ACM Symposium on Principle of Distributed Computing. ACM Press, New York, NY, 163--172.]]
[61]
Weihl, W. E. 1988. Commutativity-based concurrency control for abstract data types. IEEE Trans. Comput. 31, 12, 1488--1505.]]
[62]
Wong, M. H. and Agrawal, D. 1992. Tolerating bounded inconsistency for increasing concurrency in database systems. In Proceedings of the 11th Symposium on Principles of Database Systems. ACM Press, New York, NY, 236--245.]]
[63]
Wu, K.-L., Yu, P. S., and Pu, C. 1992. Divergence control for epsilon-serializability. In Proceedings of 8th International Conference on Data Engineering. IEEE Press, Los alamitos, CA, 506--515.]]
[64]
Yu, H. and Vahdat, A. 2000. Efficient numerical error bounding for replicated network services. In Proceedings of the 26th International Conference on Very Large Databases (VLDB). USENIX, Berkeley, CA, 305--318.]]
[65]
Zekauskas, M. J., Sawdon, W. A., and Bershad, B. N. 1994. Software write protection for distributed share memory. In Proceedings of the First USENIX Symposium on Operating System Design and Implementation. USENIX, Berkeley, CA, 87--100.]]

Cited By

View all
  • (2023)Ad Hoc Transactions through the Looking Glass: An Empirical Study of Application-Level Transactions in Web ApplicationsACM Transactions on Database Systems10.1145/363855349:1(1-43)Online publication date: 23-Dec-2023
  • (2023)Fair and Efficient Distributed Edge Learning With Hybrid Multipath TCPIEEE/ACM Transactions on Networking10.1109/TNET.2022.321992431:4(1582-1594)Online publication date: Aug-2023
  • (2022)A quorum-based data consistency approach for non-relational databaseCluster Computing10.1007/s10586-021-03531-w25:2(1515-1540)Online publication date: 1-Apr-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Computer Systems
ACM Transactions on Computer Systems  Volume 20, Issue 3
August 2002
138 pages
ISSN:0734-2071
EISSN:1557-7333
DOI:10.1145/566340
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 August 2002
Published in TOCS Volume 20, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Conit
  2. consistency model
  3. continuous consistency
  4. network services
  5. relaxed consistency
  6. replication

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)56
  • Downloads (Last 6 weeks)10
Reflects downloads up to 04 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Ad Hoc Transactions through the Looking Glass: An Empirical Study of Application-Level Transactions in Web ApplicationsACM Transactions on Database Systems10.1145/363855349:1(1-43)Online publication date: 23-Dec-2023
  • (2023)Fair and Efficient Distributed Edge Learning With Hybrid Multipath TCPIEEE/ACM Transactions on Networking10.1109/TNET.2022.321992431:4(1582-1594)Online publication date: Aug-2023
  • (2022)A quorum-based data consistency approach for non-relational databaseCluster Computing10.1007/s10586-021-03531-w25:2(1515-1540)Online publication date: 1-Apr-2022
  • (2021)Regular Sequential Serializability and Regular Sequential ConsistencyProceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles10.1145/3477132.3483566(163-179)Online publication date: 26-Oct-2021
  • (2021)Achieving Probabilistic Atomicity With Well-Bounded Staleness and Low Read Latency in Distributed DatastoresIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2020.303432832:4(815-829)Online publication date: 1-Apr-2021
  • (2021)Comprehending Concurrency and Consistency in Distributed Systems2021 IEEE International Symposium on Systems Engineering (ISSE)10.1109/ISSE51541.2021.9582518(1-6)Online publication date: 13-Sep-2021
  • (2021)Dyconits: Scaling Minecraft-like Services through Dynamically Managed Inconsistency2021 IEEE 41st International Conference on Distributed Computing Systems (ICDCS)10.1109/ICDCS51616.2021.00021(126-137)Online publication date: Jul-2021
  • (2021)A third-party replication service for dynamic hidden databasesService Oriented Computing and Applications10.1007/s11761-020-00313-x15:4(323-338)Online publication date: 1-Dec-2021
  • (2020)Towards supporting millions of users in modifiable virtual environments by redesigning minecraft-like games as serverless systemsProceedings of the 12th USENIX Conference on Hot Topics in Cloud Computing10.5555/3485849.3485851(2-2)Online publication date: 13-Jul-2020
  • (2020)Staleness Control for Edge Data AnalyticsProceedings of the ACM on Measurement and Analysis of Computing Systems10.1145/33921564:2(1-24)Online publication date: 12-Jun-2020
  • Show More Cited By

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media