Papers
Topics
Authors
Recent
Search
2000 character limit reached

Prolog as a Querying Language for MongoDB

Published 4 Oct 2021 in cs.DB | (2110.01284v1)

Abstract: Today's database systems have shown to be capable of supporting AI applications that demand a lot of data processing. To this end, these systems incorporate powerful querying languages that go far beyond the mere retrieval of data, and provide sophisticated facilities for data processing as well. In the case of SQL, the language has been even demonstrated to be Turing-complete in some implementations of the language. In the area of NoSQL databases, a widely adopted one nowadays is the MongoDB database. Queries in MongoDB databases are represented as sequential stages within an aggregation pipeline where each stage defines a transformation of the input data, and passes the transformed data to the next stage. But aggregation queries tend to become rather large for more complex computational problems, lack organization into re-usable pieces, and are thus hard to debug and maintain. We propose a new database querying language called Mongolog which is syntactically a subset of the Prolog language, and we define its operational semantics through translations into aggregation pipelines. To this end, we make use of and extend the formal framework of the MQuery language which characterizes the aggregation framework set-theoretically.

Summary

Paper to Video (Beta)

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Collections

Sign up for free to add this paper to one or more collections.