Systems, methods, and other embodiments associated with selecting access structures to support database queries are described. One exemplary method includes identifying basic configuration(s) of access structures and computing a net benefit for a configuration resulting from using these basic configurations. The method may include associating with a query a candidate basic configuration(s) selected from the basic configurations based on the net benefits computed for the basic configurations. The method may include associating the basic configuration having the lowest execution cost with the query and selectively replacing the basic configuration based on a shared cost(s). Example methods may use heuristics that synergistically cooperate to process complex workloads and to facilitate finding high-quality, low-cost configurations in both constrained-storage and non-constrained-storage cases.
展开▼