1. A method for performing transactions on data entities in a database, wherein each transaction comprises one or more operations, wherein said database comprises an ordered set of data stores with at least one static data store for storing data entities and performing queries on said data entities, wherein said static data store uses an index structure which is based on a non-updatable representation of an ordered set of integers according to a principle of compressed inverted indices, wherein each of said data entities comprises an unique identifier and a plurality of fields each containing a single or multi valued value, the method comprising for a transaction the steps of: determining a current ordered set of data stores when said transaction is started; storing information of said current ordered set of data stores as transactional state for said transaction; when said transaction comprises an insert, update or delete operation, generating a modifiable data store and adding said modifiable data store as newest data store to said transactional state for said transaction, wherein said modifiable data store is adapted to store data entities and to perform queries on said stored data entities; executing said one or more operations of said transaction on the data entities in the data stores of which information has been stored in said transactional state; and when said transaction is committed and if said modifiable data store has been generated for said transaction, adding said modifiable data store as newest data store to said ordered set of data stores; wherein, when one of said one or more operations of said transaction is a query operation with a query, said step of executing comprises: performing said query against each of said data stores of which information has been stored in said transactional state, wherein said query returns ordered identifiers of data entities for each of said data stores that match with said query; masking for each of said data stores those of said returned ordered identifiers for which a data entity with a same identifier already exists in a newer data store to produce masked identifiers; uniting said masked identifiers to produce united identifiers; and returning said united identifiers; wherein, when one of said one or more operations of said transaction is an insert operation for inserting a new data entity, said step of executing further comprises: writing said new data entity in said modifiable data store with a new unique identifier for said new data entity; wherein said method further comprises: converting one or more selected data stores of said ordered set of data stores to a new static data store, wherein said converting step further comprises: reading all data entities from said one or more selected data stores; producing masked data entities by masking for each of said one or more selected data store said read data entities for which a data entity with same identifier already exists in a newer data store of said ordered set of data stores; merging said masked data entities to produce merged data entities; building a new index structure using identifiers of said merged data entities for said new static data store, wherein said new index structure is based on said non-updatable representation of an ordered set of integers according to a principle of compressed inverted indices; writing said merged data entities into said new static data store; adding said new static data store to said ordered set of data stores; and deleting said one or more selected data stores from said ordered set of data stores.