On Tue, 2009-07-07 at 09:34 -0400, Sam Rowe wrote:
> > Really, Storeconfigs builds hash-like structures (resources are a hash
> > with arrays for values, effectively) into the db, which basically
> > sucks:  Every resource is at least two associations:
> > has_many :param_names and has_many :param_values.  This is slow and
> > sucky, but unavoidable with a standard db.
> 
> I know I sound like a broken record, but it's slow and sucky because
> you're using the wrong kind of datastore. CouchDB is a
> document-oriented DB, so I can see how it wouldn't be a good fit
> either.

The real advantage of CouchDB is erlang, IMHO. 
Which means large concurrency, which is not AFAIK the current model of
Puppet, so I'm not surprised by the results either.

> Here's the ruby-bindings documentation for TC. There are several
> examples of different kinds of usage, the first one being a hash
> database. One other thing to point out is that I'm pretty sure TC
> doesn't use SQL and this might be a lot easier than you think.
> 
> http://tokyocabinet.sourceforge.net/rubydoc/
> 
> One downside is that you'd be going from a fairly ubiquitous back-end
> to one that a lot of folks aren't familiar with. But hey, it's from
> Japan like Ruby and it's been going strong there for a long time and
> is considered very solid.

It seems to support a kind of schema mode (Table mode in the
documentation) that we could use (unlike what I first thought).

As Luke said the whole issue is not the storeconfigs code which is now
indirected, it is the collector query (which atm builds a SQL query)
which need to be properly abstracted. I'll have a deeper look to TC
during during the week-end.

The other advantage of a RDBMS as James pointed is that it has a common
layer for interacting with it from other environment (webapp or
anything). 
-- 
Brice Figureau
My Blog: http://www.masterzen.fr/


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" 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/puppet-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to