Building a Polyglot Data Access Layer for a Low-Code Application Development Platform

Low-code application development as proposed by the OutSystems Platform enables fast mobile and desktop application development and deployment. It hinges on visual development of the interface and business logic but also on easy integration with data stores and services while delivering robust applications that scale. Data integration increasingly means accessing a variety of NoSQL stores. Unfortunately, the diversity of data and processing models, that make them useful in the first place, is difficult to reconcile with the simplification of abstractions exposed to developers in a low-code platform. Moreover, NoSQL data stores also rely on a variety of general purpose and custom scripting languages as their main interfaces. In this paper we report on building a polyglot data access layer for the OutSystems Platform that uses SQL with optional embedded script snippets to bridge the gap between low-code and full access to NoSQL stores.

[1]  Ying Yang,et al.  SchemaDrill: Interactive Semi-Structured Schema Design , 2018, HILDA@SIGMOD.

[2]  Daniel J. Abadi,et al.  Automatic Generation of Normalized Relational Schemas from Nested Key-Value Data , 2016, SIGMOD Conference.

[3]  Vanja Josifovski,et al.  SQL/MED: a status report , 2002, SGMD.

[4]  David J. DeWitt,et al.  Split query processing in polybase , 2013, SIGMOD '13.

[5]  Daniel Lemire,et al.  Apache Calcite: A Foundational Framework for Optimized Query Processing Over Heterogeneous Data Sources , 2018, SIGMOD Conference.

[6]  João Costa Seco,et al.  A common data manipulation language for nested data in heterogeneous environments , 2015, DBPL.

[7]  Michael Stonebraker,et al.  The BigDAWG Polystore System , 2015, SGMD.

[8]  Christine Collet,et al.  ExSchema: Discovering and Maintaining Schemas from Polyglot Persistence Applications , 2013, 2013 IEEE International Conference on Software Maintenance.

[9]  Hakan Hacigümüs,et al.  MISO: souping up big data query processing with a multistore system , 2014, SIGMOD Conference.

[10]  José Carlos Pereira,et al.  Towards a Polyglot Data Access Layer for a Low-Code Application Development Platform , 2020 .

[11]  Yefim V. Natis,et al.  Magic Quadrant for Enterprise Low-Code Application Platforms , 2019 .

[12]  Jesús García Molina,et al.  Inferring Versioned Schemas from NoSQL Databases and Its Applications , 2015, ER.

[13]  Patrick Valduriez,et al.  CloudMdsQL: querying heterogeneous cloud data stores with a common language , 2016, Distributed and Parallel Databases.

[14]  Joseph K. Bradley,et al.  Spark SQL: Relational Data Processing in Spark , 2015, SIGMOD Conference.

[15]  Laura M. Haas,et al.  Optimizing Queries Across Diverse Data Sources , 1997, VLDB.