  We present module theory and linear maps as a powerful generalised and
computationally efficient framework for the relational data model, which
underpins today's relational database systems. Based on universal constructions
of modules we obtain compact and computationally efficient data structures for
data collections corresponding to union and deletion, repeated union, Cartesian
product and key-indexed data. Free modules naturally give rise to polysets,
which generalise multisets and facilitate expressing database queries as
multilinear maps with asymptotically efficient evaluation on polyset
constructors. We introduce compact maps as a way of representing infinite
(poly)sets constructible from an infinite base set and its elements by addition
and subtraction. We show how natural joins generalise to algebraic joins, while
intersection is implemented by a novel algorithm on nested compact maps that
carefully avoids visiting parts of the input that do not contribute to the
eventual output. Our algebraic framework leads to a worst-case optimal
evaluation of cyclic relational queries, which is known to be impossible using
textbook query optimisers that operate on lists of records only.
