對於那些被經常以全表掃描訪問獲取資料的“小表”來說,為了提升效能可以考慮將這些表cache在Buffer Cache中。
什麼樣的表可以稱其為“小表”呢?例如經常被訪問的參數列,此類表通常包含的資料量並不大,經常以全表掃描的訪問形式對其進行訪問。
如果不強制將這些表cache在Buffer Cache中,這些資料在被使用過後很容易被換出到外存,因為通常這些資料會存放在LRU的“冷端”。
透過這個小文兒給大家演示一下將表cache在Buffer Cache中的方法。
不過注意:這種方法同樣不會保證這些資料永久置於Buffer Cache中。
1.使用USER_TABLES檢視驗證表T是否被Cache
sec@ora10g> select table_name, cache from user_tables where table_name = 'T';
TABLE_NAME CACHE
------------ --------------------
T N
2.簡單的使用alter語句便可將表T快取在Buffer Cache
sec@ora10g> alter table t cache;
Table altered.
3.在此查詢T表的快取情況,可見此時表T已經被快取
sec@ora10g> select table_name, cache from user_tables where table_name = 'T';
TABLE_NAME CACHE
------------ --------------------
T Y
4.如果想“反悔”不想快取表T該如何操作呢?
方法如下:
sec@ora10g> alter table t nocache;
Table altered.
sec@ora10g> select table_name, cache from user_tables where table_name = 'T';
TABLE_NAME CACHE
------------ --------------------
T N
5.小結
使用上述方法可以防止經常被全表掃描的“小表”不會被頻繁的換出到外存,從而提高系統的響應速度。在使用這種方法之前,定位哪些“小表”需要被Cache是很重要的。
【Cache】將常用的“小表”快取到Buffer Cache
相關文章
- Oracle Cache Buffer ChainsOracleAI
- 33、buffer_cache_3(redo的產生、LRBA、buffer cache裡的等待事件)事件
- Linux Buffer/Cache 的區別Linux
- buffer與cache的區別
- IO之核心buffer----"buffer cache"
- 清理buffer/cache/swap的方法梳理
- Cache和Buffer都是快取,有什麼區別?Linux快取Linux
- Cache 和 Buffer 的區別在哪裡?
- PostgreSQL DBA(89) - Linux(Buffer vs Cache)SQLLinux
- Linux記憶體、Swap、Cache、BufferLinux記憶體
- Buffer Cache以及buffer busy waits/gc相關事件AIGC事件
- 【BUFFER】Oracle buffer cache之 latch 學習記錄Oracle
- 調整緩衝區快取記憶體(Buffer Cache)的效能(轉)快取記憶體
- Cache 和 Buffer 有什麼區別?
- Spring Cache快取框架Spring快取框架
- SpringBoot系列——cache快取Spring Boot快取
- buffer cache深度分析及效能調整(五)
- buffer cache深度分析及效能調整(四)
- buffer cache深度分析及效能調整(六)
- 手動釋放Linux上的Swap、Buffer和CacheLinux
- Guava學習:Cache快取Guava快取
- Spring Boot Cache Redis快取Spring BootRedis快取
- Spring Cache快取註解Spring快取
- Linux工具效能調優系列二:buffer和cacheLinux
- Linux如何手動釋放Swap、Buffer和CacheLinux
- 用於快取的新HTTP標準:Cache-Status和Target-Cache-Control快取HTTP
- 快取融合(Cache Fusion)介紹快取
- 淺聊HTTP快取 (HTTP Cache)HTTP快取
- localStorage和SessionStorage,Application,Cache快取SessionAPP快取
- [20231023]備庫與alter system flush buffer_cache.txt
- HTTP請求的快取(Cache)機制HTTP快取
- Service Worker Cache 和 HTTP Cache 的區別HTTP
- HTTP快取——304與200 from cacheHTTP快取
- LRU cache快取簡單實現快取
- ansible 開啟facts_cache快取快取
- Python 的快取機制: functools.lru_cachePython快取
- Client Side Cache 和 Server Side Cache 的區別clientIDEServer
- Library Cache最佳化篇(一)降低library cache lock和library cache pin的方法