You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by Merlin Beedell at Demon <me...@thebeedells.demon.co.uk> on 2006/06/13 18:32:53 UTC
Performance tests for very large data sets?
I hope that this is a common enough request that some results and comments
already exist. Just point me in the right direction!
I would like to know how Derby performs (inserts and search) where the
record count goes from 1 to 1,000 million or greater, particularly if there
are foreign key constraints included. And in comparison with other
databases.
I fully recognise that such tests are quite subjective and vary greatly
depending on various settings that do not change the sql used.
We have a situation where Derby performs well up to 100,000 records or so,
then (insert) performance plummets. It uses a fairly large text foreign key,
and we are changing this to an auto-number key instead, which we know will
help. The aim to to have good performance up to 6Gb worth of data (approx
60-120 million rows over a small number of tables).
Some experience from other developers may well help us move forward, as well
as any reasoned test results that shows that Derby is a good choice for us.
Re: Performance tests for very large data sets?
Posted by Oystein Grovlen - Sun Norway <Oy...@Sun.COM>.
Merlin Beedell at Demon wrote:
> I hope that this is a common enough request that some results and
> comments already exist. Just point me in the right direction!
>
> I would like to know how Derby performs (inserts and search) where the
> record count goes from 1 to 1,000 million or greater, particularly if
> there are foreign key constraints included. And in comparison with
> other databases.
>
> I fully recognise that such tests are quite subjective and vary greatly
> depending on various settings that do not change the sql used.
>
> We have a situation where Derby performs well up to 100,000 records or
> so, then (insert) performance plummets. It uses a fairly large text
> foreign key, and we are changing this to an auto-number key instead,
> which we know will help. The aim to to have good performance up to 6Gb
> worth of data (approx 60-120 million rows over a small number of tables).
Is your page cache larger than the default size? On older versions of
Derby there is a problem with large page caches in that the performance
degrades while filling the page cache. When the page size has been
filled, the performance will increase again.
>
> Some experience from other developers may well help us move forward, as
> well as any reasoned test results that shows that Derby is a good choice
> for us.
>
I have inserted 15 GB of data in a Derby database and insert performance
was pretty stable.
--
Øystein Grøvlen, Senior Staff Engineer
Sun Microsystems, Database Technology Group
Trondheim, Norway
Re: Performance tests for very large data sets?
Posted by Mike Matrigali <mi...@sbcglobal.net>.
sounds like a pretty simple test program, probably the best thing to
do is post your exact ddl and a simple test program showing the
problem. This will answer all the usual questions:
ddl, ie. what indexes do you have
server config if any
single/multi-user
inserts per xact config
jvm/os/hardware
log config
is system cpu vs i/o bound at the plummet
What does "plumets" mean?
I would expect per insert time to be relatively stable until the
cache fills and then the whole system probably becomes i/o bound.
When this happens depends on size of data, actual disk hardware,
log io config, ...
Merlin Beedell at Demon wrote:
> I hope that this is a common enough request that some results and
> comments already exist. Just point me in the right direction!
>
> I would like to know how Derby performs (inserts and search) where the
> record count goes from 1 to 1,000 million or greater, particularly if
> there are foreign key constraints included. And in comparison with
> other databases.
>
> I fully recognise that such tests are quite subjective and vary greatly
> depending on various settings that do not change the sql used.
>
> We have a situation where Derby performs well up to 100,000 records or
> so, then (insert) performance plummets. It uses a fairly large text
> foreign key, and we are changing this to an auto-number key instead,
> which we know will help. The aim to to have good performance up to 6Gb
> worth of data (approx 60-120 million rows over a small number of tables).
>
> Some experience from other developers may well help us move forward, as
> well as any reasoned test results that shows that Derby is a good choice
> for us.
>
>
>
Re: Performance tests for very large data sets?
Posted by "Jean T. Anderson" <jt...@bristowhill.com>.
You might be interested in Olav Sandstaa's ApacheCon US 2005
presentation "Performance Analysis of Apache Derby". You can download it
from here:
http://wiki.apache.org/apachecon/Us2005OnlineSessionSlides
-jean
Merlin Beedell at Demon wrote:
> I hope that this is a common enough request that some results and
> comments already exist. Just point me in the right direction!
>
> I would like to know how Derby performs (inserts and search) where the
> record count goes from 1 to 1,000 million or greater, particularly if
> there are foreign key constraints included. And in comparison with
> other databases.
>
> I fully recognise that such tests are quite subjective and vary greatly
> depending on various settings that do not change the sql used.
>
> We have a situation where Derby performs well up to 100,000 records or
> so, then (insert) performance plummets. It uses a fairly large text
> foreign key, and we are changing this to an auto-number key instead,
> which we know will help. The aim to to have good performance up to 6Gb
> worth of data (approx 60-120 million rows over a small number of tables).
>
> Some experience from other developers may well help us move forward, as
> well as any reasoned test results that shows that Derby is a good choice
> for us.
>