Re: Slow operations above 500MB?

75 views
Skip to first unread message

Thomas Mueller

unread,
Jun 4, 2012, 1:55:40 PM6/4/12
to h2-da...@googlegroups.com
Hi,

This statement is superfluous now. It was added a long time ago (in 2007 or so), because few people used large databases at that time. Since then, a few smaller problems have been found and fixed, and I think this are is now reasonably stable. Quite many people use large databases now.

I will remove the statement from the FAQ.

Regards,
Thomas



On Sunday, June 3, 2012, toolforger wrote:
I'm currently evaluating H2 for my project. Looks great, mostly :-)

The only potential showstopper that I found was this one in the manual:
"The areas that are not well tested are: [...] Some operations on databases larger than 500 MB may be slower than expected."

Now I'm wondering:
What kinds of operations are this?
What kind of slowdown can I expect?
Is it likely that any such slowdown will be addressed in the future?

Any knowledgeable statements on the issue are appreciated.
Thank in advance!

--
You received this message because you are subscribed to the Google Groups "H2 Database" group.
To view this discussion on the web visit https://groups.google.com/d/msg/h2-database/-/3O0uXCfghnsJ.
To post to this group, send email to h2-da...@googlegroups.com.
To unsubscribe from this group, send email to h2-database...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/h2-database?hl=en.

toolforger

unread,
Jun 4, 2012, 3:31:23 PM6/4/12
to h2-da...@googlegroups.com
Ah, sweet.
Sounds like H2 is good to go for the upcoming project then.

Anybody got a rough rule-of-thumb figure what's the performance difference between running H2 embedded and running H2 over localhost?
I already know it's massively dependent on the amount of work each SQL statement does, so I'd be happy with any order-of-magnitude figure :-)

Ryan How

unread,
Jun 4, 2012, 11:58:04 PM6/4/12
to h2-da...@googlegroups.com
In my web app with H2 it feels to be about twice as fast for me in
embedded. But it really depends on the number of queries. I was a bit
quick and dirty so have lots of small queries instead of doing it in a
big batch.
> --
> You received this message because you are subscribed to the Google
> Groups "H2 Database" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/h2-database/-/Ay-eDQKsWUUJ.

toolforger

unread,
Jun 5, 2012, 2:34:06 AM6/5/12
to h2-da...@googlegroups.com
Thanks for the feedback.
I'm concluding that embedding can make a serious difference, using bigger iron would be an alternative.
Good to know, that's going to help me make the inevitable trade-offs.

Thomas Mueller

unread,
Jun 5, 2012, 2:11:59 PM6/5/12
to h2-da...@googlegroups.com
Hi,

Depending on the operations, the embedded mode can be up to 6 times
faster than the server mode. This is if the server is running on the
same machine; localhost connections. If the server is on another
machine, the difference might be even bigger. This is according to the
performance test at http://h2database.com/html/performance.html (using
relatively simple statements).

Regards,
Thomas
> --
> You received this message because you are subscribed to the Google Groups
> "H2 Database" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/h2-database/-/w_OJB_fEG6kJ.

Joachim Durchholz

unread,
Jun 5, 2012, 3:31:45 PM6/5/12
to h2-da...@googlegroups.com
Am 05.06.2012 20:11, schrieb Thomas Mueller:
> Hi,
>
> Depending on the operations, the embedded mode can be up to 6 times
> faster than the server mode. This is if the server is running on the
> same machine; localhost connections. If the server is on another
> machine, the difference might be even bigger. This is according to the
> performance test at http://h2database.com/html/performance.html (using
> relatively simple statements).

Ah, I didn't notice that you can cross-reference the two tables.

Yep, network latency can slow down things considerably, but I have a
rough idea how much that is. The figures in those two tables didn't come
as a surprise :-)


On a tangent:

How about merging the two tables into one? E.g.

+--------------+------+--------------------+---------------------+
| | | Embedded | Client-Server |
| Test case | Unit +-----+--------+-----+------+--------+-----+
| | | H2 | HSQLDB | ... | H2 | HSQLDB | ... |
+--------------+------+-----+--------+-----+------+--------+-----+
| Simple: Init | ms | 241 | 431 | ... | 1715 | 2096 | ... |
+--------------+------+-----+--------+-----+------+--------+-----+
| ... | ... | ... | ... | ... | ... | ... | ... |

That would make comparing embedded vs. C-S easier, and still fit nicely
on the screen.
Well, on my screen, anyway... I won't be offended if you think that's a
bad idea :-)

Thomas Mueller

unread,
Jun 11, 2012, 3:42:20 AM6/11/12
to h2-da...@googlegroups.com
Hi,

If I combine both, some will say it's comparing apples to oranges... I think I will keep the current layout for now.

Regards,
Thomas
--
You received this message because you are subscribed to the Google Groups "H2 Database" group.
Reply all
Reply to author
Forward
0 new messages