Subject | Re: GetResultSet() takes to much time |
---|---|
Author | Roman Rokytskyy |
Post date | 2003-11-26T12:18:01Z |
Hi,
result set? Firebird might delay data fetching from disk until you
call ResultSet.netx() and other databases might do it differently.
Also note, that in auto-commit mode (this is default mode according to
specs), driver fetches complete result set locally, so there should be
no big difference between "stmt.execute(); rs = stmt.getResultSet();"
and "stmt.execute(); rs = stmt.getResultSet(); while(rs.next()) {}",
since all data are already fetched.
Also, if you wish, you can check AS3AP test suite for Firebird and try
to adapt it for the "other DB". In this case we will be able to
compare them using some standard metrics.
Best regards,
Roman Rokytskyy
> I'm doing some test with different database systems. In my tests,Do you measure complete statement execution, not only fetching the
> Firebird seems to be slow in getting the ResultSet. That takes times
> longer than with the compared database systems. The measured times
> [ms] for the query's are listed below (Firebird and one concurrent
> database). I'm using JDBC (JayBird 1.01), Firebird 1.5 RC6
> (WindowsXP and Linux) and J2SE. Statement and ResultSet are used
> with default settings. I did the test in different ways (using a
> fast and slow pc and mixed network access) and it seems that the
> performance for statement.getResultSet() depends on the server not
> the client. So performance for statement.getResultSet() seems to
> be a problem of Firebird and not JayBird.
>
> Is there a posibility to get better performance for getResultSet()?
> Is this dependend of the character set the database is set up with?
> This test was running with charset NONE.
result set? Firebird might delay data fetching from disk until you
call ResultSet.netx() and other databases might do it differently.
Also note, that in auto-commit mode (this is default mode according to
specs), driver fetches complete result set locally, so there should be
no big difference between "stmt.execute(); rs = stmt.getResultSet();"
and "stmt.execute(); rs = stmt.getResultSet(); while(rs.next()) {}",
since all data are already fetched.
Also, if you wish, you can check AS3AP test suite for Firebird and try
to adapt it for the "other DB". In this case we will be able to
compare them using some standard metrics.
Best regards,
Roman Rokytskyy