<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Multi-model Query Processing Meets Category Theory and Functional Programming</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Valter</forename><surname>Uotila</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Jiaheng</forename><surname>Lu</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Dieter</forename><forename type="middle">Gawlick</forename><surname>Zhen</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Hua</forename><surname>Liu</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Souripriya</forename><surname>Das</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Gregory</forename><surname>Pogossiants</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Dieter</forename><surname>Gawlick</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Hua</forename><surname>Zhen</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Souripriya</forename><surname>Liu</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Gregory</forename><surname>Das</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><surname>Pogossiants</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<author>
							<persName><surname>Multi</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Helsinki</orgName>
							</affiliation>
						</author>
						<title level="a" type="main">Multi-model Query Processing Meets Category Theory and Functional Programming</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">ABB6429F4675CE853539133B9296C007</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T08:55+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>The current multi-model database management systems (MMDBS) are becoming more complex. We propose category theory as a foundation for a new query language design, query processing, and transformation frameworks for MMDBS. We describe the recent challenges of MMDBS and represent possible solutions to them. Finally, we propose a category theory-inspired prototype system.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">INTRODUCTION</head><p>The multi-model database management systems (MMDBS) <ref type="bibr" target="#b8">[9,</ref><ref type="bibr" target="#b9">10]</ref> are gradually becoming more complex, which creates an urgent need for a better theory to formalize the systems. We identify that the end-user's experience is often poorly addressed in the design and implementation of the systems. For example, NoSQL is mainly targeted at developers. Technology is supposed to evolve according to the business and end-user's needs. Higher-level abstraction can simplify the systems and enable a better user experience.</p><p>The theory should be a standard across different domains and it should be powerful enough to express a wide variety of concepts on a suitable abstraction level. We believe that a candidate to be such a theory is category theory. Liu et al. <ref type="bibr" target="#b7">[8]</ref> proposed this role to category theory to reason about declarative constructions and transformations between various data models. The standard introduction to category theory is MacLane <ref type="bibr" target="#b5">[6]</ref> and other good are <ref type="bibr" target="#b10">[11,</ref><ref type="bibr" target="#b11">12]</ref>.</p><p>David Spivak <ref type="bibr" target="#b12">[13]</ref> has applied category theory to model relational databases in order to category theoretically migrate relational data. The commercial application of this category theory-based relational database framework is implemented by Conexus <ref type="bibr" target="#b0">[1,</ref><ref type="bibr" target="#b1">2]</ref>. expressions, and other complex data structures. It is required that MMDBS implement a single declarative query language that enables users to execute cross-model queries. Another wanted feature is a unified indexing mechanism that can index multiple data instances across different models. MMDBS should have the capability to perform extensive data transformations which automatically create views and materialize data between different models. Oracle converged database <ref type="bibr" target="#b2">[3]</ref> is an example of a commercial MMDBS.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">TOWARDS MODERN MMDBS</head><p>Historically, we had hierarchical and network data models, and then the relational data model. Now, in addition to the relational model, we have re-invented the hierarchical models as JSON/XML, and the network models as RDF and property graphs. NoSQL system complicates the matter by forcing users to access data without declarative language in a very loose transactional system. All of these efforts have regressed the usability of DBMS.</p><p>The principle of DBMS is that there is no single data model that is the best or the worst. Therefore, it is time to introduce the concept of a virtual data model. Virtual data model design is similar to the concept of virtual memory in classical OS design and virtual machine in modern cloud computing environment design.</p><p>The modern DBMS needs to follow both schema-first or schemalater paradigms and also support temporal aspects of data <ref type="bibr" target="#b3">[4]</ref>. The temporal dimension of data is often poorly implemented in DBMS. For example, a part of temporality is event detection which could be tackled by developing calculus logic on top of queries. The modern DBMS would benefit from the unification of meta-data and data to define schema-flexible storing, indexing, and querying features <ref type="bibr" target="#b6">[7]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">DEMO SYSTEM AND CONCLUSION</head><p>We have developed a demonstration system called MultiCategory <ref type="bibr" target="#b14">[15,</ref><ref type="bibr" target="#b15">16]</ref> to demonstrate our solutions. The system's backend is implemented with Haskell. It offers a fold function-based query processing mechanism which is a method to model queries from a category theoretical perspective <ref type="bibr" target="#b4">[5]</ref>. A multi-model schema is represented as a category that is mapped to the multi-model instance. Formally our approach for modeling MMDBS and data transformations using category theory is represented in <ref type="bibr" target="#b13">[14]</ref>.</p><p>Our future work includes researching data integration, migration, transformation, temporal, and virtual data model challenges using category theory. Recent progress in applied category theory has shown that category theory is a very powerful framework to model and formally define complex systems.</p></div>		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>ACKNOWLEDGMENTS</head><p>This paper is partially supported by Finnish Academy Project 310321 and Oracle ERO gift funding.</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<ptr target="https://www.categoricaldata.net/" />
		<title level="m">Categorical Databases</title>
				<imprint>
			<date type="published" when="2021">2021</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<ptr target="https://conexus.com/" />
		<title level="m">Conexus</title>
				<imprint>
			<date type="published" when="2021">2021</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<author>
			<persName><forename type="first">Arvind</forename><surname>Bhope</surname></persName>
		</author>
		<ptr target="https://blogs.oracle.com/database/post/building-a-modern-app-with-oracles-converged-database" />
		<title level="m">Building a modern app with Oracle&apos;s Converged Database</title>
				<imprint>
			<date type="published" when="2021">2021</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Querying the Past, the Present, and the Future</title>
		<author>
			<persName><forename type="first">Dieter</forename><surname>Gawlick</surname></persName>
		</author>
		<idno type="DOI">10.1109/ICDE.2004.1320094</idno>
		<ptr target="https://doi.org/10.1109/ICDE.2004.1320094" />
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 20th International Conference on Data Engineering, ICDE 2004</title>
				<editor>
			<persName><forename type="first">Usa</forename></persName>
		</editor>
		<editor>
			<persName><forename type="first">Z</forename><surname>Özsoyoglu</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Stanley</forename><forename type="middle">B</forename><surname>Zdonik</surname></persName>
		</editor>
		<meeting>the 20th International Conference on Data Engineering, ICDE 2004<address><addrLine>Boston, MA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2004-03-30">2004. 30 March -2 April 2004</date>
			<biblScope unit="volume">867</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">Monad Comprehensions: A Versatile Representation for Queries</title>
		<author>
			<persName><forename type="first">Torsten</forename><surname>Grust</surname></persName>
		</author>
		<idno type="DOI">10.1007/978-3-662-05372-0_12</idno>
		<ptr target="https://doi.org/10.1007/978-3-662-05372-0_12" />
		<imprint>
			<date type="published" when="2004">2004</date>
			<publisher>Springer</publisher>
			<biblScope unit="page" from="288" to="311" />
			<pubPlace>Berlin Heidelberg; Berlin, Heidelberg</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<title level="m" type="main">Categories for the Working Mathematician</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">M</forename><surname>Lane</surname></persName>
		</author>
		<imprint>
			<date type="published" when="1998">1998</date>
			<publisher>Springer</publisher>
			<biblScope unit="page">233</biblScope>
			<pubPlace>New York</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Management of Flexible Schema Data in RDBMSs -Opportunities and Limitations for NoSQL</title>
		<author>
			<persName><forename type="first">Zhen</forename><surname>Hua</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Liu</forename></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Gawlick</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">CIDR</title>
				<imprint>
			<date type="published" when="2015">2015</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Multi-model Database Management Systems -A Look Forward</title>
		<author>
			<persName><forename type="first">Zhen</forename><surname>Hua Liu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Jiaheng</forename><surname>Lu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Dieter</forename><surname>Gawlick</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Heli</forename><surname>Helskyaho</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Gregory</forename><surname>Pogossiants</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Zhe</forename><surname>Wu</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Polystores VLDB 2018 Workshops</title>
				<imprint>
			<date type="published" when="2018">2018</date>
			<biblScope unit="page" from="16" to="29" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Multi-model Databases: A New Journey to Handle the Variety of Data</title>
		<author>
			<persName><forename type="first">Jiaheng</forename><surname>Lu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Irena</forename><surname>Holubová</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Comput. Surv</title>
		<imprint>
			<biblScope unit="volume">52</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page">38</biblScope>
			<date type="published" when="2019">2019. 2019</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Multi-Model Databases and Tightly Integrated Polystores: Current Practices, Comparisons, and Open Challenges</title>
		<author>
			<persName><forename type="first">Jiaheng</forename><surname>Lu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Irena</forename><surname>Holubová</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Bogdan</forename><surname>Cautis</surname></persName>
		</author>
		<idno type="DOI">10.1145/3269206.3274269</idno>
		<ptr target="https://doi.org/10.1145/3269206.3274269" />
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 27th ACM International Conference on Information and Knowledge Management</title>
				<meeting>the 27th ACM International Conference on Information and Knowledge Management<address><addrLine>Torino, Italy; New York, NY, USA</addrLine></address></meeting>
		<imprint>
			<publisher>Association for Computing Machinery</publisher>
			<date type="published" when="2018">2018</date>
			<biblScope unit="page" from="2301" to="2302" />
		</imprint>
	</monogr>
	<note>CIKM &apos;18</note>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<title level="m" type="main">Category Theory in Context</title>
		<author>
			<persName><forename type="first">E</forename><surname>Riehl</surname></persName>
		</author>
		<ptr target="www.math.jhu.edu/~eriehl/context.pdf" />
		<imprint>
			<date type="published" when="2017">2017</date>
			<publisher>Dover Publications</publisher>
			<biblScope unit="volume">31</biblScope>
			<pubPlace>St, Mineola, NY 11501, USA</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title/>
		<author>
			<persName><forename type="first">David</forename><surname>Spivak</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Category Theory for the Sciences</title>
		<imprint>
			<date type="published" when="2014">2014. 2014</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<monogr>
		<title level="m" type="main">Functorial Data Migration</title>
		<author>
			<persName><forename type="first">David</forename><forename type="middle">I</forename><surname>Spivak</surname></persName>
		</author>
		<idno type="arXiv">arXiv:1009.1166</idno>
		<ptr target="http://arxiv.org/abs/1009.1166" />
		<imprint>
			<date type="published" when="2010">2010. 2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">A Formal Categorical Theoretical Framework for Multi-Model Data Transformation</title>
		<author>
			<persName><forename type="first">Valter</forename><surname>Uotila</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Jiaheng</forename><surname>Lu</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Poly: VLDB Workshop on Polystore Systems for Heterogeneous Data in Multiple Databases with Privacy and Security Assurances</title>
				<meeting><address><addrLine>Poly</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2021">2021. 2021</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<author>
			<persName><forename type="first">Valter</forename><surname>Uotila</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Jiaheng</forename><surname>Lu</surname></persName>
		</author>
		<ptr target="https://youtu.be/uceIi91AGsg" />
		<title level="m">MultiCategory demo video</title>
				<imprint>
			<date type="published" when="2021">2021</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">MultiCategory: Multi-model Query Processing Meets Category Theory and Functional Programming</title>
		<author>
			<persName><forename type="first">Jiaheng</forename><surname>Valter Uotila</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Dieter</forename><surname>Lu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Zhen</forename><surname>Gawlick</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Souripriya</forename><surname>Hua Liu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Gregory</forename><surname>Das</surname></persName>
		</author>
		<author>
			<persName><surname>Pogossiants</surname></persName>
		</author>
		<idno type="DOI">10.14778/3476311.3476314</idno>
		<ptr target="https://doi.org/10.14778/3476311.3476314" />
	</analytic>
	<monogr>
		<title level="m">Proc. VLDB Endow</title>
				<meeting>VLDB Endow</meeting>
		<imprint>
			<date type="published" when="2021">2021</date>
			<biblScope unit="volume">14</biblScope>
			<biblScope unit="page" from="2663" to="2666" />
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
