You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-user@db.apache.org by "Godschall, John" <JG...@firstmarblehead.com> on 2011/09/02 19:12:51 UTC

(Unknown)

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<http://db.apache.org/derby/docs/10.2/tuning/rtunproper40688.html#rtunproper40688> 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<ma...@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.


Re:

Posted by "Godschall, John" <JG...@firstmarblehead.com>.
Thanks David

From: David Zanter [mailto:dzanter@gmail.com]
Sent: Friday, September 02, 2011 01:31 PM
To: Derby Discussion <de...@db.apache.org>
Subject: Re:


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 <JG...@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<http://db.apache.org/derby/docs/10.2/tuning/rtunproper40688.html#rtunproper40688> 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<tel:781.658.5028> (direct)
617.513.1912<tel:617.513.1912> (mobile)
jgodschall@fmd.com<ma...@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.

*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.


Re:

Posted by David Zanter <dz...@gmail.com>.
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<http://db.apache.org/derby/docs/10.2/tuning/rtunproper40688.html#rtunproper40688>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.
>