Hello,

 

We recently switched to SQLite in our application and have not been able to
get the performance that partially motivated the switch.  Our application
downloads TV guide data from the internet and loads it into a local
database.

 

The data is in 6 sets of XML files (each set holds 2 days of data).  We read
the data and insert it into the database a set of data at a time.

 

Other than one unique index, all of the indexes are generated after the
inserts to help speed up the initial data load.

 

Here's how the inserts performed (this will print in the output pane of the
debugger):

Inserting 26544 records took 32538.7241 ms.

Inserting 26420 records took 36432.113 ms.

Inserting 26262 records took 37901.9064 ms.

Inserting 25560 records took 37948.8147 ms.

Inserting 26389 records took 54225.9948 ms.

Inserting 17324 records took 31084.5668 ms.

 

Just to prove that the hit is not coming from the XML reading or other
logic, here are the results for the exact same test over the exact same data
with just the SQLite insert commented out:

Inserting 26544 records took 4597.0134 ms.

Inserting 26420 records took 4393.7441 ms.

Inserting 26262 records took 4409.3802 ms.

Inserting 25560 records took 4956.6437 ms.

Inserting 26389 records took 5378.8184 ms.

Inserting 17324 records took 3486.8503 ms.

 

Creating indexes is also slow.

 

Obviously, this does not match up with the performance tests that appear on
the website.  Is there something that we are doing wrong?  Any help or
guidance that you can provide would be greatly appreciated.

 

Regards,

Soham

 

 

Instructions to Run Test:

1) download the test zip file from the following FTP location (14MB):

ftp://ftp.fileburst.com/

USER: sqlite

PSWD: sqlhelp

2) unzip it

1) run register.bat (this just registers a required COM object)

2) open DataLoaderTest\DataLoaderTest.sln

3) build

4) run (you can do this directly from the debugger)

5) click on "Load Data"

 

Reply via email to