Course Content
Advanced Techniques in SQL
Advanced Techniques in SQL
Data Caching
Data caching involves storing frequently accessed data in memory to improve query performance and reduce the need to retrieve data from disk.
Caching Strategies
Buffer Pool
- Data Pages:
- Data is organized into fixed-size units known as data pages when read from or written to disk;
- These data pages are temporarily stored in the DBMS's memory within the buffer pool, also referred to as the buffer cache.
- Cache Replacement Policies:
- Due to limited space in the buffer pool, a cache replacement policy determines which data pages to retain in memory when new pages are loaded.
- Cache Management:
- When a query requests data, the DBMS checks if the required data pages are already in the buffer pool;
- If the data pages are found in memory (cache hit), they are retrieved from the buffer pool, bypassing slower disk access;
- If the data pages are not in memory (cache miss), the DBMS fetches them from disk and loads them into the buffer pool for future access.
Query Result Cache
- Some DBMSs provide a query result cache, storing frequently executed query results in memory;
- When a query is executed, the system checks if the same query with identical parameters has been executed previously. If found, it returns the cached result rather than re-executing the query.
Index Caching
- Besides caching data pages, DBMSs may cache index pages in memory to accelerate index-based queries;
- Index caching reduces the need to traverse the entire index structure on disk, enhancing query performance for indexed columns.
Thanks for your feedback!