On Feb 13, 2009, at 4:07 AM, koranthala wrote:

>
> Hi,
>    I am working on a Python application which does approximately 1000
> updates  at a time every 3 seconds in a Sqlite File Database using
> SqlAlchemy. On timing it in a 2GHz machine, I found that it is taking
> ~1.01 seconds to do the same.
>    Is it possible to increase the speed of the same? My application
> is quite a complex one, and taking 1 second for the updates is slowing
> the overall performance considerably.
>    I checked Sqlite page - and they mention that 25000 text UPDATEs
> with an index (which is what I am doing) takes 2.4 seconds (this is
> Sqlite2 data - sqlite3 should be faster). I guess should mean that
> 1000 text UPDATEs should take 0.1 seconds.
>
> The inserts I do is as follows:
> BEGIN:
> 2009-02-13 14:34:40,703 INFO sqlalchemy.engine.base.Engine.0x..10
> UPDATE data SET status=? WHERE data."index" = ?
> 2009-02-13 14:34:40,703 INFO sqlalchemy.engine.base.Engine.0x..10
> ['True', 68762]
>
> ...
> (1000)
> ...
>
> COMMIT


to INSERT many rows very quickly, use the "executemany" style of  
insertion:


connection.execute(table.insert(), [{'foo':'row1'}, {'foo':'row2'},  
{'foo':'row3'}, ...])

this will allow the DBAPI to optimize the execution of INSERT  
statements using native speed.    You will only have average  
performance using the ORM to insert rows so if you need speed I would  
advise against its usage for this operation.


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to