Prolog as a Querying Language for MongoDB

10/04/2021
by   Daniel Beßler, et al.
0

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.

READ FULL TEXT

page 4

page 12

page 14

page 16

page 21

page 22

page 23

page 24

research
02/23/2018

Database Aggregation

Knowledge can be represented compactly in a multitude ways, from a set o...
research
03/25/2020

A Formalization of SQL with Nulls

SQL is the world's most popular declarative language, forming the basis ...
research
04/14/2021

Translating synthetic natural language to database queries: a polyglot deep learning framework

The number of databases as well as their size and complexity is increasi...
research
07/22/2019

Social Choice Methods for Database Aggregation

Knowledge can be represented compactly in multiple ways, from a set of p...
research
12/12/2021

Graph Pattern Matching in GQL and SQL/PGQ

As graph databases become widespread, JTC1 – the committee in joint char...
research
07/26/2021

COMPARE: Accelerating Groupwise Comparison in Relational Databases for Data Analytics

Data analysis often involves comparing subsets of data across many dimen...
research
12/02/2018

Koji: Automating pipelines with mixed-semantics data sources

We propose a new result-oriented semantic for defining data processing w...

Please sign up or login with your details

Forgot password? Click here to reset