From: Stef T. <st...@um...> - 2009-05-22 05:39:29
|
Hey Oleg, Everyone, Please don't take this as 'rude' but, I think that the thing SQLObject development should -really- focus on is speed. Perhaps I am doing something fundamentally wrong with the following code but, for the life of me, I can't figure out why. I know your going to hate me saying this but.. compare the SQLObject vs SQLAlchemy Starting benchmarking with 100000 records (inserting and selecting) . Inserting 100000 records into SQLite(memory) with SQLAlchemy Number of records selected: 100000 Time for SQLAlchemy with SQlite db in Memory: 2.71 seconds Inserting 100000 records into SQLite(Disk) with SQLAlchemy Number of records selected: 100000 Time for SQLAlchemy with SQlite db on Disk: 2.64 seconds Versus Starting benchmarking with 100000 records (inserting and selecting) . Inserting 100000 records into SQLite(Memory) with SQLObject Number of records selected: 100000 Time for SQLObject with db in memory: 38.53 seconds and when I change it to put the sqlite db onto the -exact- same disk as SQLAlchemy used Time for SQLObject with db on disk: 79.74 seconds So, that's roughly 20 times slower for memory, and 40 times slower for disk. As I said, if I am doing something wrong in the example programs, please do feel free to correct me, but, otherwise, the speed .. well .. 'sucks'. You may ask how 'likely' is 100k inserts, but the figures are even -worse- for object instantiation from a database .. I mean a LOT worse :( now, perhaps SQLObject does things like provide sqlmeta or .. some such.. but.. 20 -times- slower is the trade off ? seems like a bad idea to me :\ Ideas ? Thoughts ? Am I crazy ? Regards Stef |