[Engine-devel] What type of DB inheritance to use?

Saggi Mizrahi smizrahi at redhat.com
Tue May 14 14:35:20 UTC 2013


>From my experience inheritance in the database is usually a bad idea all together.
Fields like even if "user" and "password" fields exist in more than one provider type
they shouldn't share a table as their indexes and type validation have no reason to be
shared (even if they theoretically can)and it makes both suffer from forced standardisation.

I don't know what a "provider" is in your world but in the classic sense you should even
have all providers be part of the same object inheritance as you shouldn't have all
factories. A "Provider" is a function and not identity. In Java terms, and interface and
not a base class.

----- Original Message -----
> From: "Federico Simoncelli" <fsimonce at redhat.com>
> To: "Eli Mesika" <emesika at redhat.com>
> Cc: "engine-devel" <engine-devel at ovirt.org>
> Sent: Tuesday, May 14, 2013 3:13:30 AM
> Subject: Re: [Engine-devel] What type of DB inheritance to use?
> 
> ----- Original Message -----
> > From: "Eli Mesika" <emesika at redhat.com>
> > To: "Liran Zelkha" <liran.zelkha at gmail.com>
> > Cc: "engine-devel" <engine-devel at ovirt.org>
> > Sent: Tuesday, May 14, 2013 3:21:11 AM
> > Subject: Re: [Engine-devel] What type of DB inheritance to use?
> > 
> > 
> > 
> > ----- Original Message -----
> > > From: "Liran Zelkha" <liran.zelkha at gmail.com>
> > > To: "Yair Zaslavsky" <yzaslavs at redhat.com>
> > > Cc: "engine-devel" <engine-devel at ovirt.org>
> > > Sent: Sunday, May 12, 2013 1:19:07 PM
> > > Subject: Re: [Engine-devel] What type of DB inheritance to use?
> > > 
> > > Hi
> > > 
> > > From my experience, single table inheritance quickly grows into something
> > > unmanagable, as more and more (child related) fields are added, each line
> > > has a few relevant attributes, and a long list of NULL values.
> > > I would go with option 3. With materialized views, the costs of joins can
> > > be
> > > eliminated.
> > 
> > +1
> 
> I'd prefer option 3 too.
> 
> --
> Federico
> _______________________________________________
> Engine-devel mailing list
> Engine-devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/engine-devel
> 



More information about the Engine-devel mailing list