Databases improve anticipation using shared query meaning over time
Towards Anticipatory Databases Through Shared Data and Workload Semantics
DatabasesMachine Learning
Summary
Many databases decide what data to fetch or keep based on simple signals like how recently or often data was used, but this misses the bigger picture of what users are actually analyzing. The authors propose using the meaning of queries and how they relate over time to better predict what data will be needed next. They create a system that uses shared understanding of data and query intent to improve fetching and storage decisions in a database. Their initial tests show this shared semantic knowledge can help multiple parts of the database work smarter.
What this means in practice
- •For database administrators: Improve cache eviction and data prefetching in databases by using query meaning to predict needed data beyond simple access history.
- •For cloud service operators: Enhance cloud database efficiency by anticipating client query patterns through shared semantic context to reduce latency and resource waste.
Authors
Farzaneh Zirak, Kasper Overgaard Mortensen, Farhana Choudhury, Renata Borovica-Gajic
Abstract
Database management systems increasingly serve dynamic and exploratory workloads, yet many of their decisions still rely on low-level signals such as recency, frequency, and address locality. These signals capture how data was accessed, but not what is being examined or how an analytical focus evolves. We argue for treating workload semantics as a first-class control signal for anticipatory decision making. Central to this view, we introduce semantic locality and semantic trajectories, which capture relationships among nearby queries and how those relationships evolve across a session. We propose a framework that represents semantic context at the data, query, and session levels, models its evolution over time, and translates it into task-specific utility estimates. We instantiate this framework in semantic prefetching and semantic cache eviction, which share a semantic layer to make two separate decisions. Prefetching uses semantic trajectories to anticipate future accesses beyond what address-based locality can capture, while eviction uses semantic relevance to inform block replacement. These systems provide initial evidence that shared semantic context can support multiple DBMS components. We further outline how this principle can extend to other decisions and data systems, and discuss key challenges in representation, cost, adaptation, and evaluation.