Add new LRU Cache Manager
-------------------------
Key: DERBY-1437
URL: http://issues.apache.org/jira/browse/DERBY-1437
Project: Derby
Type: Improvement
Components: Services
Reporter: Gokul Soundararajan
Assigned to: Gokul Soundararajan
In databases, caching plays an important role in performance. To obtain high
performance, we need to cache pages from disk in memory to reduce access time.
The problem stated is that the existing replacement algorithm performs poorly
so we need to research new algorithms for page replacement and implement it in
Apache Derby. The benefit of a better algorithm is improved performance.
In this project, I first have to look at existing work to quantify the
different replacement algorithms used in databases. I have run simulation
experiments on several cache replacement algorithms from FIFO, Clock,
Clock-Pro, TwoQueue, CAR, and CART. CAR/CART are patented by IBM so we cannot
implement them in Derby. Two Queue has a large synchronization overhead (seen
by Postgres community). Clock-Pro performs well and is being implemented in
Linux. Oystein and I have agreed to implement Clock-Pro inside Derby. See the
wiki for more details and simulation results:
http://wiki.apache.org/db-derby/DerbyLruCacheManager
I will implement it in Derby. In addition, I will implement unit tests.
Finally, I will perform experiments showing the benefit of the new algorithm
over the existing algorithm.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira