Abstract
Transactional isolation is a challenge for polystores, as along with the limited capabilities of each datastore, we have to contend with their sheer diversity. However, transactional isolation is increasingly desirable as a variety of datastores are being sought after for roles that go beyond data lakes. Transactional guarantees are also relevant for reliability at scale. In this paper, we propose that transactional isolation in polystores can be achieved by leveraging the query engine, i.e., basing some of the responsibilities of a traditional transactional storage manager (TSM) on the query language itself. This has the key advantage of greatly simplifying design and implementation, as it doesn’t need to be re-invented for each datastore, and should increase performance, by taking advantage of dynamic query optimization where available. We demonstrate the feasibility of the proposal with a simple proof-of-concept and experiment.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Distributed transaction processing: The XA specification (1991). https://pubs.opengroup.org/onlinepubs/009680699/toc.pdf
MongoDB 4.4 manual - aggregation pileline stages: \$group (2020). https://docs.mongodb.com/manual/reference/operator/aggregation/group/
MongoDB 4.4 manual - aggregation pileline stages: \$lookup (2020). https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/
PostgreSQL documentation - 40.4. rules on insert, update, and delete (2020). https://www.postgresql.org/docs/13/rules-update.html
Transaction management - the Neo4j java developer reference v4.3 (2020). https://pubs.opengroup.org/onlinepubs/009680699/toc.pdf
Nunes Alonso, A., et al.: Building a polyglot data access layer for a low-code application development platform (experience report). In: Remke, A., Schiavoni, V. (eds.) DAIS 2020. LNCS, vol. 12135, pp. 95–103. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-50323-9_6
Armbrust, M., et al.: Delta lake: high-performance acid table storage over cloud object stores. Proc. VLDB Endow. 13(12), 3411–3424 (2020). https://doi.org/10.14778/3415478.3415560
Bamford, R.J., Jacobs, K.R.: Method and apparatus for providing isolation levels in a database system, 9 February 1999. US Patent 5,870,758
Berenson, H., Bernstein, P., Gray, J., Melton, J., O’Neil, E., O’Neil, P.: A critique of ANSI SQL isolation levels. ACM SIGMOD Rec. 24(2), 1–10 (1995)
Biyikoglu, C.: Under the hood: Redis CRDTs (conflict-free replicated data types) (2018)
Bohannon, A., Pierce, B.C., Vaughan, J.A.: Relational lenses: a language for updatable views. In: Proceedings of the Twenty-Fifth ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems, pp. 338–347 (2006)
Burleson, D.K.: Oracle Internals: Tips, Tricks, and Techniques for DBAs. CRC Press, Boca Raton (2017)
Codd, E.F.: Recent investigations into relational data base systems. Technical report RJ1385, IBM, April 1974
Corbett, J.C., et al.: Spanner: Google’s globally distributed database. ACM Trans. Comput. Syst. (TOCS) 31(3), 1–22 (2013)
Dayal, U., Bernstein, P.A.: On the updatability of relational views. In: VLDB, vol. 78, pp. 368–377. Citeseer (1978)
Dayal, U., Bernstein, P.A.: On the correct translation of update operations on relational views. ACM Trans. Database Syst. (TODS) 7(3), 381–416 (1982)
Duggan, J., et al.: The BigDAWG polystore system. SIGMOD Rec. 44(2), 11–16 (2015). https://doi.org/10.1145/2814710.2814713
Faria, N., Pereira, J.: Totally-ordered prefix parallel snapshot isolation. In: Proceedings of the 8th Workshop on Principles and Practice of Consistency for Distributed Data, PaPoC 2021. Association for Computing Machinery, New York (2021). https://doi.org/10.1145/3447865.3457966
Gómez Ferro, D., Junqueira, F., Kelly, I., Reed, B., Yabandeh, M.: Omid: lock-free transactional support for distributed data stores. In: 2014 IEEE 30th International Conference on Data Engineering, pp. 676–687 (2014). https://doi.org/10.1109/ICDE.2014.6816691
Harizopoulos, S., Abadi, D.J., Madden, S., Stonebraker, M.: OLTP through the looking glass, and what we found there. In: Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data, SIGMOD 2008, pp. 981–992. Association for Computing Machinery, New York (2008). https://doi.org/10.1145/1376616.1376713
Hellerstein, J.M., Stonebraker, M., Hamilton, J.: Architecture of a database system. Found. Trends Databases 1(2), 141–259 (2007). https://doi.org/10.1561/1900000002
Kolev, B., Valduriez, P., Bondiombouy, C., Jiménez-Peris, R., Pau, R., Pereira, J.: CloudMdsQL: querying heterogeneous cloud data stores with a common language. Distrib. Parallel Databases 34(4), 463–503 (2015). https://doi.org/10.1007/s10619-015-7185-y
Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. ACM SIGOPS Oper. Syst. Rev. 44(2), 35–40 (2010)
Lu, J., Holubová, I.: Multi-model databases: a new journey to handle the variety of data. ACM Comput. Surv. (CSUR) 52(3), 1–38 (2019)
Macedo, N., Pacheco, H., Cunha, A., Oliveira, J.N.: Composing least-change lenses. In: Electronic Communications of the EASST, vol. 57 (2013)
Schultz, W., Avitabile, T., Cabral, A.: Tunable consistency in MongoDB. Proc. VLDB Endow. 12(12), 2071–2081 (2019). https://doi.org/10.14778/3352063.3352125
Stonebraker, M.: The design of the POSTGRES storage system. In: Proceedings of the 13th International Conference on Very Large Data Bases, VLDB 1987, pp. 289–300. Morgan Kaufmann Publishers Inc., San Francisco (1987)
Stonebraker, M.: The case for polystores. ACM SIGMOD Blog (2015). https://wp.sigmod.org/?p=1629
Suzuki, H.: The internals of PostgreSQL: Chapter 5 concurrency control (2021). https://www.interdb.jp/pg/pgsql05.html
Tan, R., Chirkova, R., Gadepally, V., Mattson, T.G.: Enabling query processing across heterogeneous data models: a survey. In: 2017 IEEE International Conference on Big Data (Big Data), pp. 3211–3220 (2017). https://doi.org/10.1109/BigData.2017.8258302
Vogels, W.: Eventually consistent. Commun. ACM 52(1), 40–44 (2009)
Vogt, M., et al.: Polypheny-DB: towards bridging the gap between polystores and HTAP systems. In: Gadepally, V., et al. (eds.) DMAH/Poly-2020. LNCS, vol. 12633, pp. 25–36. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-71055-2_2
Acknowledgments
Special thanks to the anonymous reviewers for their helpful feedback. Partially funded by project AIDA – Adaptive, Intelligent and Distributed Assurance Platform (POCI-01-0247-FEDER-045907) co-financed by the European Regional Development Fund (ERDF) through the Operational Program for Competitiveness and Internationalisation (COMPETE 2020) and by the Portuguese Foundation for Science and Technology (FCT) under CMU Portugal.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Faria, N., Pereira, J., Alonso, A.N., Vilaça, R. (2021). Towards Generic Fine-Grained Transaction Isolation in Polystores. In: Rezig, E.K., et al. Heterogeneous Data Management, Polystores, and Analytics for Healthcare. DMAH Poly 2021 2021. Lecture Notes in Computer Science(), vol 12921. Springer, Cham. https://doi.org/10.1007/978-3-030-93663-1_3
Download citation
DOI: https://doi.org/10.1007/978-3-030-93663-1_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-93662-4
Online ISBN: 978-3-030-93663-1
eBook Packages: Computer ScienceComputer Science (R0)