[openstack-dev] [Glance] Replacing Glance DB code to Oslo DB code.

Jay Pipes jaypipes at gmail.com
Mon Aug 19 06:51:44 UTC 2013

On 08/19/2013 12:56 AM, Joshua Harlow wrote:
> Another good article from an ex-coworker that keeps on making more and
> more sense the more projects I get into...
> http://seldo.com/weblog/2011/08/11/orm_is_an_antipattern
> Your mileage/opinion though may vary :)

I don't disagree with most of that article. All good points.

However, I will say a couple things:

1) We can still use the SQLAlchemy ORM module -- Query and Session 
object specifically, along with using the SQLAlchemy Model base class 
with no relation() loading at all in the Model classes -- and get good 
performance. We just wouldn't use the ActiveRecord pattern.

2) I highly caution folks who think a No-SQL store is a good storage 
solution for any of the data currently used by Nova, Glance (registry), 
Cinder (registry), Ceilometer, and Quantum. All of the data stored and 
manipulated in those projects is HIGHLY relational data, and not 
objects/documents. Switching to use a KVS for highly relational data is 
a terrible decision. You will just end up implementing joins in your code...


More information about the OpenStack-dev mailing list