- From: snacktime <snacktime@gmail.com>
- To: chef@lists.opscode.com
- Subject: Re: some questions
- Date: Fri, 24 Apr 2009 00:06:37 -0700
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=ujs1/J4MG8+wzdQuCBKErpHxz2KyW8O1aXpfFBXiTjYE3vzARbjQMJ3tTeUGJbLWT/ SzpHQbAgf+1fKDUuGVOaCmnrRXuK0ESsE8WJHdkkI54HFqtHrLHVQ9lM3lqn6mvCWlee GNGRaYtAOyYoirDD3QIqkLWvfHz9QN1exJ2kk=
On Thu, Apr 23, 2009 at 9:02 PM, Adam Jacob
<adam@opscode.com> wrote:
On Thu, Apr 23, 2009 at 6:40 PM, snacktime <
snacktime@gmail.com> wrote:
> I was more thinking of all the other parts of chef that could benefit from
> having an sql db, but can't as long as you have couchdb, unless you want to
> run both an sql server and couchdb. And what if people want to extend chef
> for their own particular needs, or you expand the UI, or any number of other
> things that can and will be added to chef in the future? Sql won't make
> querying attributes any easier, that's true.
I totally hear what you're saying - it's true that more people are
familiar with using SQL databases for these kinds of applications.
Having built a similar web UI with Rails, Active Record and
acts_as_solr, (iClassify) the difference between using CouchDB and a
SQL database for this sort of application was pretty huge. It does
take a bit more learning to understand, but not much - in truth, you
are much closer to the point of view you care about most: the objects
you deal with in Ruby.
This is particularly true with tools like CouchRest, which will likely
find it's way into Chef, rather than our own Chef::CouchDB interface
(which gives you a lot of the AR like API). It's not that CouchDB is
better for every application - but for Chef, where you have a pretty
clean set of objects, that happens to speak JSON as it's own REST API,
CouchDB is pretty great.
In case I wasn't totally clear, I would absolutely accept patches to
enable the use of multiple back end data stores, including a SQL one
(and all that would really be required is that things inflate to the
right objects - it probably wouldn't be a ton of work.) I chose
CouchDB because, in my opinion, it fit the model perfectly, and has
great scaling characteristics. (Think about read performance, and
what a single varnish instance could accomplish.)
Thanks Adam for the thorough reply. Personally I can live with couchdb, as long as I don't have to go writing custom views for everything that resembles an sql join:) I wouldn't mind contributing code to enable the use of multiple backends. I was looking at the couchdb interface last night and it looks pretty straight forward. But I really didn't want to drag this whole thread off topic, so I'll post in another if I have questions on this.
Chris
In any case I didn't mean to drag this thread off topic:)
- Re: some questions, (continued)
- Re: some questions, Adam Jacob, 04/24/2009
- Re: some questions, Adam Jacob, 04/24/2009
- RE: some questions, Steven Parkes, 04/24/2009
- Re: some questions, David Balatero, 04/24/2009
- Re: some questions, Adam Jacob, 04/24/2009
- Re: some questions, Arjuna Christensen, 04/24/2009
- Re: some questions, Bryan McLellan, 04/24/2009
- Re: some questions, snacktime, 04/24/2009
- Re: some questions, Arjuna Christensen, 04/24/2009
- Re: some questions, Adam Jacob, 04/24/2009
- Re: some questions, snacktime, 04/24/2009
- storing easily queried metadata - was Re: some questions, David Lee, 04/24/2009
- Re: storing easily queried metadata - was Re: some questions, David Lee, 04/24/2009
- Re: storing easily queried metadata - was Re: some questions, snacktime, 04/24/2009
- Re: storing easily queried metadata - was Re: some questions, Ian Kallen, 04/24/2009
- Re: some questions, Adam Jacob, 04/23/2009
- Re: some questions, David Lee, 04/23/2009
Archive powered by MHonArc 2.6.16.