On Tue, Aug 25, 2009 at 11:39 AM, Ben Bangert <[email protected]> wrote:

>
> On Aug 25, 2009, at 11:19 AM, Mike Orr wrote:
>
> > One major advantage of SQLAlchemy is the SQL level, which is several
> > times faster than the ORM for making bulk changes.  This feature is
> > mentioned in passing but perhaps it should be emphasized more in
> > Pylons marketing.  SQLAlchemy is not "just an ORM" like the others.
> >
> > I have found the ORM useful in the following cases:
> >
> > - Retrieve an object and modify it with the least amount of fuss.
> > - Add-or-modify an object that may or may not exist.
> > - Looping through lots of objects when you don't care if the process
> > takes a long time.
> >
> > The SQL level is more useful for:
> >
> > - Looping through 1+ million records in a read-only manner.
> > - Inserting many records that you know do not exist yet.
> > - Bulk changes that can be done in a single statement.  (Set all X
> > field to 0, or add 5 to the current value.)
> > - Modifying the table structure in place.
>
> The performance slowdowns of the ORM mean I always inevitable end up
> going to the lower SA SQL level. It's worth noting that doing so is
> substantially more pleasant in SA 0.5 since you can pretty much use
> the entire ORM style query language but going for specific attributes.
>
> I usually end up with the ORM stuff used a lot up front initially in
> the app, then later as I do more complex queries and need performance,
> drop down to using the faster SQL level layer. The ORM setup is
> invaluable though, as it provides a great domain model organization
> for all the lower level queries (which are all class/instance
> methods), and it makes writing the SA SQL layer stuff a lot easier
> since all the relationships are configured.


The other thing that isn't mentioned enough about Pylons is that you can
also develop your app using SQLAlchemy first!
My work involves creating Film Pipelines and I can't be bothered with all of
the overhead with something like Django when I may not even end up with a
webapp.
Often I am trying to solve a problem, I write an API, some SQLAlchemy, then
later create a webapp.  Often, I never created the database, some guy 5
years ago did,
so using SQLSoup to introspect it and give me objects in 2 lines of code is
huge.  Pylons conforms to Y.A.G.N.I, you ain't gonna need it, perfectly.


>
>
> Cheers,
> Ben
>
> >
>


-- 
Thanks,

Noah

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to