Query Abstraction Layer

This is an old revision of this page, as edited by Doesbetter (talk | contribs) at 10:03, 5 November 2014 (Add SF ref). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

QAL is an open source development project that aims to create a collection of libraries for mixing, moving, merging, substituting and transforming data[3]. And in some cases, like for MongoDB, schemas.

Query Abstraction Layer
Developer(s)Nicklas Börjesson
Initial releaseSeptember 2013 (2013-09)[1]
Stable release
0.4.0[2] / October 31, 2014 (2014-10-31)
Written inPython
Operating systemCross-platform
TypePython libraries
LicenseBSD license
Websitewww.optimalbpm.se/wiki/index.php/QAL

Sources and destinations include different database backends, file formats like .csv, XML and spreadsheets. Even untidy HTML web pages can be used as both a source and destination.

For SQL/RDBMS backends, it has a database abstraction layer that supports basic connectivity to Postgres, MySQL, DB2, Oracle and MS SQL server[4]. It uses XML formats(the SQL schema is self-generated) for representation of queries, transformation and merging, making it all scriptable.

With regards to SQL, QAL uses a subset of SQL features[5] and data types[6], which while obviously not complete however is sufficient for most usages. It is however easy to instead use backend specific SQL when the queries do not have to be backend-agnostic.

It is currently distributed as a Python Library (.egg)[7] and a Debian package file(.deb)[8].

It is related to the Optimal BPM(Business Process Management) project. In fact, the Optimal BPM sourceforge project used to be DAL/QAL.[1]

References