10. A computer-implemented process to access data, comprising: storing in memory of a computing device an adaptive range filter that contains a compact summary, in a trie format, of the contents of an index for a set of data, wherein: each node of the trie format represents a particular region of a domain of the data, a root node represents the whole domain of data to be indexed, each parent node fully contains the regions of its children in the trie-format, and leaves of the trie-format contain occupied bits indicating whether tuples in the set of data exist in the particular region of data; receiving a query; checking the adaptive range filter to determine if the index may contain records satisfying a predicate of the query, if the adaptive range filter indicates that the index contains no records satisfying the query predicate, not accessing the index or the set of data; and if the adaptive range filter indicates that the index contains records satisfying the query predicate, accessing the index and the set of data to retrieve data satisfying the query predicate.
14. The computer-implemented process of claim 10 wherein the adaptive range filter seeks to minimize the number of false positives returned in response to a query.