/* Of course, beginning with Oracle 12.1.0.2 In-Memory option, you really can "keep" a table or part of it in memory without recourse to OS. The following is about earlier versions. */ http://www.itpub.net/viewthread.php?tid=1243301 > Can we use the parameter "DB_KEEP_CACHE_SIZE" to keep the table in memory? No. As I said, create a tablespace on a pure memory file system and create the table in this tablespace (and think carefully about recovery). > If I specify storage (buffer_pool keep) and also cache for a table, is this table placed on the MRU end of the keep pool? After the table is full scanned, yes. > If only this table in the database has this setting and I can calculate to make > sure the table data is smaller than the keep pool size, does the table stay in memory? I think so, after the table is fully scanned and if you make sure SGA is not swapped out. Oracle never says how to guarantee the data of a table stays in memory. But based on our understanding, I think what you said makes sense. > Under what condition will the table data be kicked out of memory? When the SGA is not locked in RAM and the server is under memory pressure.