  We propose an algebraic framework for studying efficient algorithms for query
evaluation, aggregation, enumeration, and maintenance under updates, on sparse
databases. Our framework allows to treat those problems in a unified way, by
considering various semirings, depending on the considered problem. As a
concrete application, we propose a powerful query language extending
first-order logic by aggregation in multiple semirings. We obtain an optimal
algorithm for computing the answers of such queries on sparse databases. More
precisely, given a database from a fixed class with bounded expansion, the
algorithm computes in linear time a data structure which allows to enumerate
the set of answers to the query, with constant delay between two outputs.
