{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,4]],"date-time":"2024-09-04T08:53:29Z","timestamp":1725440009259},"reference-count":30,"publisher":"IGI Global","issue":"1","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2020,1]]},"abstract":"<jats:p>Data consistency defines how usable a data set is. Causal consistency is the strongest type of consistency that can be achieved when data is stored in multiple locations, and fault tolerance is desired. Thespis is a middleware that innovatively leverages the Actor model to implement causal consistency over a DBMS, whilst abstracting complexities for application developers behind a REST interface. Following the evaluation of correctness, performance and scalability of Thespis, it is illustrated how a business application can be guaranteed causal consistency, but still encounter Time-To-Check-Time-To-Use (TOCTOU) race conditions. The design and implementation of ThespisTRX is given, which builds upon, and extends, the Thespis middleware to offer read-only transaction capabilities, allowing clients to read a causally-consistent version of multiple data entities. A correctness analysis illustrates how ThespisTRX avoids TOCTOU race conditions, and empirical performance tests show that this can be achieved with minimal overheads.<\/jats:p>","DOI":"10.4018\/ijitwe.2020010101","type":"journal-article","created":{"date-parts":[[2019,11,4]],"date-time":"2019-11-04T13:29:02Z","timestamp":1572874142000},"page":"1-16","source":"Crossref","is-referenced-by-count":3,"title":["ThespisTRX"],"prefix":"10.4018","volume":"15","author":[{"given":"Carl","family":"Camilleri","sequence":"first","affiliation":[{"name":"Department of Computer Information Systems, University of Malta, Malta"}]},{"given":"Joseph G.","family":"Vella","sequence":"additional","affiliation":[{"name":"Department of Computer Information Systems, University of Malta, Malta"}]},{"given":"Vitezslav","family":"Nezval","sequence":"additional","affiliation":[{"name":"Department of Computer Information Systems, University of Malta, Malta"}]}],"member":"2432","reference":[{"key":"IJITWE.2020010101-0","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2012.33"},{"key":"IJITWE.2020010101-1","author":"G. A.Agha","year":"1985","journal-title":"Actors: A model of concurrent computation in distributed systems. (Tech. Rep.)"},{"key":"IJITWE.2020010101-2","doi-asserted-by":"publisher","DOI":"10.1007\/BF01784241"},{"key":"IJITWE.2020010101-3","doi-asserted-by":"publisher","DOI":"10.1145\/2463676.2465279"},{"key":"IJITWE.2020010101-4","volume":"Vol. 7","author":"E. A.Brewer","year":"2000","journal-title":"Towards robust distributed systems"},{"key":"IJITWE.2020010101-5","doi-asserted-by":"crossref","first-page":"42","DOI":"10.1109\/DEXA.2017.25","article-title":"Thespis: actor-based causal consistency.","author":"C.Camilleri","year":"2017","journal-title":"Proceedings of the 2017 28th International Workshop on Database and Expert Systems Applications (DEXA)"},{"key":"IJITWE.2020010101-6","doi-asserted-by":"crossref","first-page":"143","DOI":"10.1145\/1807128.1807152","article-title":"Benchmarking cloud serving systems with ycsb.","author":"B. F.Cooper","year":"2010","journal-title":"Proceedings of the 1st ACM symposium on cloud computing"},{"key":"IJITWE.2020010101-7","unstructured":"Didona, D., Spirovska, K., & Zwaenepoel, W. (2017). Okapi: Causally consistent geo-replication made faster, cheaper and more available."},{"key":"IJITWE.2020010101-8","unstructured":"DoubleClick. ShopWiki, & GiltGroupe. (2007). Mongodb. Retrieved from https:\/\/www.mongodb.org"},{"key":"IJITWE.2020010101-9","doi-asserted-by":"publisher","DOI":"10.1145\/2670979.2670983"},{"issue":"1","key":"IJITWE.2020010101-10","first-page":"26","article-title":"Eventual consistent databases: State of the art.","volume":"1","author":"M. M.Elbushra","year":"2014","journal-title":"Open Journal of Databases"},{"key":"IJITWE.2020010101-11","unstructured":"Fowler, M. (2005, December). Event sourcing. Retrieved from https:\/\/martinfowler.com\/eaaDev\/EventSourcing.html"},{"key":"IJITWE.2020010101-12","doi-asserted-by":"publisher","DOI":"10.1145\/564585.564601"},{"key":"IJITWE.2020010101-13","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-63579-8_24"},{"key":"IJITWE.2020010101-14","doi-asserted-by":"publisher","DOI":"10.1145\/78969.78972"},{"key":"IJITWE.2020010101-15","unstructured":"Hewitt, C., Bishop, P., & Steiger, R. (1973). A universal modular actor formalism for artificial intelligence. In Proceedings of the 3rd international joint conference on artificial intelligence (pp. 235\u2013245). Academic Press."},{"key":"IJITWE.2020010101-16","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-14472-6_2"},{"key":"IJITWE.2020010101-17","doi-asserted-by":"publisher","DOI":"10.1145\/1773912.1773922"},{"key":"IJITWE.2020010101-18","doi-asserted-by":"publisher","DOI":"10.1145\/359545.359563"},{"key":"IJITWE.2020010101-19","doi-asserted-by":"publisher","DOI":"10.1145\/279227.279229"},{"key":"IJITWE.2020010101-20","doi-asserted-by":"publisher","DOI":"10.1145\/2043556.2043593"},{"key":"IJITWE.2020010101-21","unstructured":"Lloyd, W., Freedman, M. J., Kaminsky, M., & Andersen, D. G. (2013). Stronger semantics for low-latency geo-replicated storage. In Presented as part of the 10th USENIX Symposium on Networked Systems Design and Implementation (NSDI 13) (pp. 313-328)."},{"key":"IJITWE.2020010101-22","unstructured":"Mahajan, P., Alvisi, L., & Dahlin, M. (2011). Consistency, availability, and convergence. University of Texas at Austin Tech."},{"key":"IJITWE.2020010101-23","author":"B.Meyer","year":"1992","journal-title":"Eiffel: The language"},{"key":"IJITWE.2020010101-24","doi-asserted-by":"publisher","DOI":"10.14778\/1938545.1938549"},{"key":"IJITWE.2020010101-25","doi-asserted-by":"publisher","DOI":"10.1145\/2518037.2491245"},{"key":"IJITWE.2020010101-26","doi-asserted-by":"publisher","DOI":"10.1145\/224057.224070"},{"key":"IJITWE.2020010101-27","doi-asserted-by":"publisher","DOI":"10.1145\/1435417.1435432"},{"key":"IJITWE.2020010101-28","unstructured":"Young, G. (2010). CQRS documents."},{"key":"IJITWE.2020010101-29","unstructured":"Zawirski, M., Bieniusa, A., Balegas, V., Duarte, S., Baquero, C., Shapiro, M., & Pregui\u00e7a, N. (2013). Swiftcloud: Fault-tolerant geo-replication integrated all the way to the client machine."}],"container-title":["International Journal of Information Technology and Web Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.igi-global.com\/viewtitle.aspx?TitleId=241773","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,5,5]],"date-time":"2022-05-05T19:56:14Z","timestamp":1651780574000},"score":1,"resource":{"primary":{"URL":"http:\/\/services.igi-global.com\/resolvedoi\/resolve.aspx?doi=10.4018\/IJITWE.2020010101"}},"subtitle":["Causally-Consistent Read Transactions"],"short-title":[],"issued":{"date-parts":[[2020,1]]},"references-count":30,"journal-issue":{"issue":"1"},"URL":"https:\/\/doi.org\/10.4018\/ijitwe.2020010101","relation":{},"ISSN":["1554-1045","1554-1053"],"issn-type":[{"value":"1554-1045","type":"print"},{"value":"1554-1053","type":"electronic"}],"subject":[],"published":{"date-parts":[[2020,1]]}}}