Subject | Re: [firebird-support] Isertion time grows linearly with database size |
---|---|
Author | Alec Lebedev |
Post date | 2009-08-17T16:28:09Z |
>do you have a trigger to populate the primary key that does "selectI do not have any triggers. I have only spent a few hours with Firebird and don't know a whole lot about it. Would you recommend any readings?
>count(*)" to find the next value
>How fo you do inserts?I call INSERT statement through Jaybird JDBC driver.
________________________________
From: Alec Lebedev <aukcioner@...>
To: firebird-support@yahoogroups.com
Sent: Monday, August 17, 2009 10:13:56 AM
Subject: Re: [firebird-support] Isertion time grows linearly with database size
I am using Firebird 2.1.2 with Jaybird 2.1.6.
To be precise, the insertion time grows linearly with the number of records in the table.
I do not start an explicit transaction, so I am assuming that Jaybird inserts each row in a separate transaction or no transaction at all.
I am running with default database configuration. Where can I check how many buffer pages are set up for the database?
Thanks!
Here is performance test trace.
Test Trace Firebird (ms.)
Inserting 1000 rows in the database with 1000 rows took 2188
Inserting 1000 rows in the database with 2000 rows took 3078
Inserting 1000 rows in the database with 3000 rows took 5313
Inserting 1000 rows in the database with 4000 rows took 7860
Inserting 1000 rows in the database with 5000 rows took 10500
Inserting 1000 rows in the database with 6000 rows took 13360
Inserting 1000 rows in the database with 7000 rows took 15688
Inserting 1000 rows in the database with 8000 rows took 17891
Inserting 1000 rows in the database with 9000 rows took 20125
Inserting 1000 rows in the database with 10000 rows took 22375
____________ _________ _________ __
From: Dmitry Yemanov <dimitr@users. sourceforge. net>
To: firebird-support@ yahoogroups. com
Sent: Monday, August 17, 2009 9:50:10 AM
Subject: Re: [firebird-support] Isertion time grows linearly with database size
Alec Lebedev wrote:
> I have been running performance tests on Firebird and noticed that the time it takes to insert a record in a table grows linearly with the size of the database. The table structure is very simple and has a primary key and no other indexes.With the size of the *database* or the *table* you insert into?
What FB version? How many buffer pages are set up for this database?
Do you insert in a single transaction or in multiple ones?
Dmitry
[Non-text portions of this message have been removed]
[Non-text portions of this message have been removed]