Increasing the pageCacheSize will of course increase the heap memory used by your running application.  If you have the memory to spare, I'm not aware of any harm to increasing it.

As for performance and if increasing it would help; it would most likely be determined by how you are using the database:

-Few updates/deletes, Data mostly static  vs. Highly dynamic Data constantly changing
-Selecting the Same Data Sets or Large Data Sets Multiple times vs. Selecting highly selective rows (1 row only) in a Large Database.

I've found that with the latter of the two, increasing the page cache size didn't really help out a whole lot, But if you have either of the former, then it might be good.

On Fri, Sep 2, 2011 at 1:12 PM, Godschall, John <JGodschall@firstmarblehead.com> wrote:

Hi

My application (Anthillpro) is currently Apache Derby - 10.1.3.1.  I am looking at various ways to improve performance.

 

I would like to try setting the following property and am looking for some assurance from experienced users that there will be no ill affect.

Any comments would be much appreciated.

 

 

derby.storage.pageCacheSize

Function

Defines the size, in number of pages, of the database's data page cache (data pages kept in memory).

The actual amount of memory the page cache will use depends on the following:

  • the size of the cache (configured with this property, derby.storage.pageCacheSize)
  • the size of the pages (configured with the derby.storage.pageSize property)
  • overhead (varies with JVMs)

When increasing the size of the page cache, you typically have to allow more memory for the Java heap when starting the embedding application (taking into consideration, of course, the memory needs of the embedding application as well). For example, using the default page size of 4K, a page cache size of 2000 pages will require at least 8 MB of memory (and probably more, given the overhead).

For a simple application (no GUI), using the Sun 1.1.7 JVM on Windows NT and using the -mx96m option (which allows 96 MB for the Java heap), it is possible to have a page cache size of 10,000 pages (approximately 40 MB).

The minimum value is 40 pages. If you specify a lower value, Derby uses the default value.

 

John Godschall

Release Engineer | First Marblehead

781.658.5028 (direct)

617.513.1912 (mobile)

jgodschall@fmd.com

*This e-mail and any attachments may contain content protected
under federal law and is also confidential and proprietary in nature.
If you received this message in error, please notify the sender
immediately and delete the original and destroy all copies of the
message and any attachments. Any other use of this e-mail by you
including retaining, using, copying, distributing, or otherwise
disclosing this information in any manner is prohibited.