Return-Path: Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: (qmail 7948 invoked from network); 5 May 2010 04:14:13 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 5 May 2010 04:14:13 -0000 Received: (qmail 82659 invoked by uid 500); 5 May 2010 04:14:12 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 82642 invoked by uid 500); 5 May 2010 04:14:12 -0000 Mailing-List: contact user-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@cassandra.apache.org Delivered-To: mailing list user@cassandra.apache.org Received: (qmail 82634 invoked by uid 99); 5 May 2010 04:14:12 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 05 May 2010 04:14:11 +0000 X-ASF-Spam-Status: No, hits=-0.2 required=10.0 tests=AWL,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jbellis@gmail.com designates 74.125.82.172 as permitted sender) Received: from [74.125.82.172] (HELO mail-wy0-f172.google.com) (74.125.82.172) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 05 May 2010 04:14:07 +0000 Received: by wyb32 with SMTP id 32so1196612wyb.31 for ; Tue, 04 May 2010 21:13:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:content-type :content-transfer-encoding; bh=aNxJvAdKCReVWYA5JHpViPZbi1+PoR801x9cFAngaNo=; b=IgICTZrq0UsdQQsMw08GVI1eLmiIpSeAYx04TkHv21eQ4aAd3bLgdf3OlQCc3oWJwJ ed658xpBompf7gFGkpG3Nsg9yQ87J3iDKd3GmzcIS367cuw8CiALk1S0Iuu7wxIEixrw L9bRR51OoSBMJq1CjR4JRZIVTdFfJLa9YSs0Y= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; b=fOOkXPc5+nCq0NOMC6ASf1ZlfVcDiU0Li3aYmk8uxc1uzB8Vh8wE1ZMFj2DdqKgABj +7wPivHYf7f+vAQ2aL11SB6ASzL3Lkjp83EfYg8JCOCMDuMKwanHvX/xkiQERd5V9wQ8 bAoXlnSYHEiWTXSfwCK7S4LV2qxrOY3cnlYio= Received: by 10.216.160.206 with SMTP id u56mr6495658wek.196.1273032826177; Tue, 04 May 2010 21:13:46 -0700 (PDT) MIME-Version: 1.0 Received: by 10.216.22.10 with HTTP; Tue, 4 May 2010 21:13:26 -0700 (PDT) In-Reply-To: <4BE097C1.5080902@darose.net> References: <4BE097C1.5080902@darose.net> From: Jonathan Ellis Date: Tue, 4 May 2010 23:13:26 -0500 Message-ID: Subject: Re: Building on top of Cassandra's core layer To: user@cassandra.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On Tue, May 4, 2010 at 4:55 PM, David Rosenstrauch wrot= e: > I've had some neat ideas that I'd like to tinker with for a distributed D= B > that implements a very different data model than Cassandra. =A0However, I > obviously don't want to reinvent the wheel - particularly because in the > case of distributed systems, the wheel is quite complicated and hard to g= et > right. > > What I'm thinking would make more sense then is to build on top of the > Cassandra core (since it's obviously been implemented well and has been > proven to scale quite nicely) and then implement my own middle/top layer(= s). > > So I'm wondering: > > * Anyone know if such a thing has been attempted before? =A0(And, if so, = links > to any stories about success / failure / tips.) I believe Jun Rao and Sandeep Tata built a kind of chain replication starting from Cassandra 0.4-ish. I don't think the code is available. > * Would there happen to be any docs/blogs/emails providing useful tech in= fo > for such an effort? I don't know of any, short of the articles about Cassandra's code itself. Ran Tavory wrote an excellent survey piece: http://prettyprint.me/2010/05/02/understanding-cassandra-code-base/ > * What I should include/exclude from the Cassandra source code to start > building on? =A0Or, in other words, which package(s) from the source woul= d be > considered to constitute the core layer? I don't see any shortcuts here. You need to understand the code enough to answer that question yourself. --=20 Jonathan Ellis Project Chair, Apache Cassandra co-founder of Riptano, the source for professional Cassandra support http://riptano.com