Return-Path: Delivered-To: apmail-incubator-cassandra-dev-archive@minotaur.apache.org Received: (qmail 29630 invoked from network); 24 Aug 2009 16:49:32 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 24 Aug 2009 16:49:32 -0000 Received: (qmail 53235 invoked by uid 500); 24 Aug 2009 15:49:58 -0000 Delivered-To: apmail-incubator-cassandra-dev-archive@incubator.apache.org Received: (qmail 53219 invoked by uid 500); 24 Aug 2009 15:49:58 -0000 Mailing-List: contact cassandra-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: cassandra-dev@incubator.apache.org Delivered-To: mailing list cassandra-dev@incubator.apache.org Received: (qmail 53209 invoked by uid 99); 24 Aug 2009 15:49:58 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Aug 2009 15:49:58 +0000 X-ASF-Spam-Status: No, hits=3.4 required=10.0 tests=HTML_MESSAGE,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [69.25.50.200] (HELO outbound.mse8.exchange.ms) (69.25.50.200) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Aug 2009 15:49:47 +0000 Received: from [10.0.0.157] ([67.90.153.66]) by outbound.mse8.exchange.ms with Microsoft SMTPSVC(6.0.3790.3959); Mon, 24 Aug 2009 11:49:24 -0400 Message-Id: <7E71E64C-9533-45CE-929D-91A913538FC7@digitalreasoning.com> From: Tim Estes To: cassandra-dev@incubator.apache.org In-Reply-To: Content-Type: multipart/alternative; boundary=Apple-Mail-2-91339308 Mime-Version: 1.0 (Apple Message framework v936) Subject: Re: Data model names, reloaded Date: Mon, 24 Aug 2009 10:49:22 -0500 References: X-Mailer: Apple Mail (2.936) X-OriginalArrivalTime: 24 Aug 2009 15:49:24.0506 (UTC) FILETIME=[74384FA0:01CA24D2] X-Virus-Checked: Checked by ClamAV on apache.org --Apple-Mail-2-91339308 Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit I for one don't mind having a clear distinction from the relational language bias that this change might imply. Maybe I'm a little too NOSQL, but I think that the current naming does avoid confusion with relational concepts that could be counterproductive in designing correctly to this type of model. -- Tim Estes CEO Digital Reasoning Systems On Aug 24, 2009, at 10:21 AM, Jonathan Ellis wrote: > IMO the window for making this kind of change has passed. We've > talked about finalizing the 0.4 api weeks ago, we got a beta out with > it, and it does the job. The timeline wasn't a surprise to anyone > paying attention to the list. It's time to move on. > > -Jonathan > > On Fri, Aug 21, 2009 at 1:36 PM, Evan Weaver wrote: >> I think the below scheme successfully avoids the current >> misconceptions, and addresses the issues raised in the previous >> thread. >> >> The names are memorable and short, Anglo-Saxon-style, and take >> advantage of existing database concepts in non-conflicting ways. They >> are not ambiguous or novel. They descend step-by-step from the >> container to the thing contained. >> >> Proposal 2: >> >> Database >> Record set >> Record (w/key) >> Field set >> Field >> >> Notes: >> * Database is the same as in SQL/CouchDB/MongoDB >> * Record set is based on "record", below. It expresses a container >> of >> unique rows, without the BigTable baggage (see PS). >> * Record is the same as row, without the relational baggage. >> * Field set is based on "field", below, and parallels "record set". >> It expresses a container of unique fields. >> * Field is the same as in CouchDB, and does not carry the SQL >> baggage >> of "column", or the relational-theory baggage of "attribute". >> >> I think if we adopted these, we would quickly move from "most >> confusing data model" to "least confusing", based on my research into >> other popular terminology >> (http://markmail.org/thread/6vys3hk774zcrd6v). >> >> Evan >> >> ---- >> >> PS. The implementation of column families hasn't changed from >> BigTable, but the use in modeling has. Common Cassandra designs are >> more row-oriented than column-oriented. >> >> With that in mind, keyspace, row, and super-column could also each be >> called column family. They all have sets of related columns in them, >> among other things. Everything but the column itself is some kind of >> "column family". This is a big stumbling block. >> >> I want a new user to be able to look at any level and answer "what is >> the immediate container of this object?" If they can't do that, then >> the term is ambiguous. >> >> -- >> Evan Weaver >> --Apple-Mail-2-91339308--