From user-return-7767-apmail-cassandra-user-archive=cassandra.apache.org@cassandra.apache.org Tue Jul 20 05:16:42 2010 Return-Path: Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: (qmail 84548 invoked from network); 20 Jul 2010 05:16:42 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 20 Jul 2010 05:16:42 -0000 Received: (qmail 27246 invoked by uid 500); 20 Jul 2010 05:16:41 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 27112 invoked by uid 500); 20 Jul 2010 05:16:38 -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 27104 invoked by uid 99); 20 Jul 2010 05:16:37 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Jul 2010 05:16:37 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=HTML_MESSAGE,MIME_QP_LONG_LINE,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [208.113.200.5] (HELO homiemail-a42.g.dreamhost.com) (208.113.200.5) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Jul 2010 05:16:29 +0000 Received: from homiemail-a42.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a42.g.dreamhost.com (Postfix) with ESMTP id 098DD68C065 for ; Mon, 19 Jul 2010 22:15:47 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=thelastpickle.com; h=to:from :subject:message-id:content-type:mime-version:in-reply-to:date; q=dns; s=thelastpickle.com; b=08j9VpRNK64IE7XpWaIBDAD4waiIh2NHd 2V8dnGafE8CPZV5fBK+Ut8ZkN8Q5VS66ELdx4raU9GTE4MQhzsyit1yOc9p9UpJh qmzSgd3NU7mpPdzaelDPnxQtuMjMyzZEKEyqgstXC2LOfoXXdmnslJRtUMLujxlr 5mcAGBBstY= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=thelastpickle.com; h=to :from:subject:message-id:content-type:mime-version:in-reply-to: date; s=thelastpickle.com; bh=SoaIq5miVqx0q+sjhvYo2NUjbMA=; b=DT mxEpXsXE1RJSOkO/6pISZKsrpjSlJ5vqbaofb8xVR8XV5fDq9obA6a2jcA4/Vae3 3qiTaBimCNrLwjZs0hxRNvYjOwWsZ/WHLrhx5+ox9BpaSPEptiOwY6EsPMa7tQel OgVfmHfRBeeObp9QSFRXinV15FddU/kBwfOojvsMg= Received: from localhost (webms.mac.com [17.148.16.116]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: aaron@thelastpickle.com) by homiemail-a42.g.dreamhost.com (Postfix) with ESMTPSA id D9D2268C05F for ; Mon, 19 Jul 2010 22:15:46 -0700 (PDT) To: user@cassandra.apache.org From: Aaron Morton Subject: Re: Data from multiple tables (Join Data) X-Mailer: MobileMe Mail (1C262608) Message-id: <73e033ac-2b8b-616a-bd4e-a82bdbbe780f@me.com> Content-Type: multipart/alternative; boundary=Apple-Webmail-42--af76d5dd-0cd7-e2b9-d287-f36f47bd560a MIME-Version: 1.0 In-Reply-To: Date: Mon, 19 Jul 2010 22:15:46 -0700 (PDT) X-Virus-Checked: Checked by ClamAV on apache.org --Apple-Webmail-42--af76d5dd-0cd7-e2b9-d287-f36f47bd560a Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8; format=flowed Cassandra may not be the best fit for a billing system. I'm guessing the l= ack of transactions would be a problem if you want to update inventory lev= els.=0A=0AIf you want to get data from multiple column families you will n= eed to make multiple calls, or de-normalise the data so you can get all th= e data you need from one column family for a single key. Such as storing t= he inventory data in the same column family as the product info. Perhaps u= sing a Super Column Family with a super column for the ProductData, anothe= r for the Inventory etc. You could then read all the colums in the CF for = one product and get all the data you want without doing a join.=0A=0AIn ge= neral do-normalise to remove the need for joins. Also be =EF=BB=BFaware=EF= =BB=BF of the transaction guarantees you are giving up.=0A=0AHope that hel= ps.=0AAaron=0A=0AOn 20 Jul, 2010,at 04:03 PM, bujji = wrote:=0A=0A> Hi all,=0A>=0A> I am new to Cassandra...=0A>=0A> I want to u= se to cassandra for a billing system.=0A>=0A> As I saw in many places that= Joins won't work in BigTable implementation but i feel i needed it for my= App.=0A>=0A> I am unable to get the data from multiple tables (columnFami= lies) like products and inventory=0A>=0A> As I am trying to do some joins = implementation but fails....=0A>=0A> Can I do it without joins ?=0A>=0A> C= an anybody give me some good model to use for my application or any standa= rd example =0A> please help me folks,=0A>=0A> Thanks ,=0A> Bujji=0A --Apple-Webmail-42--af76d5dd-0cd7-e2b9-d287-f36f47bd560a Content-Type: multipart/related; type="text/html"; boundary=Apple-Webmail-86--af76d5dd-0cd7-e2b9-d287-f36f47bd560a --Apple-Webmail-86--af76d5dd-0cd7-e2b9-d287-f36f47bd560a Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=ISO-8859-1;
Cassandra may not be the best fit for a billing system. I'm guessing = the lack of transactions would be a problem if you want to update inventor= y levels.

If you want to get data from multiple column families you= will need to make multiple calls, or de-normalise the data so you can get= all the data you need from one column family for a single key. Such as st= oring the inventory data in the same column family as the product info. Pe= rhaps using a Super Column Family with a super column for the ProductData,= another for the Inventory etc. You could then read all the colums in the = CF for one product and get all the data you want without doing a join.
=
In general do-normalise to remove the need for joins. Also be aware of= the transaction guarantees you are giving up.

Hope that helps.
Aaron

On 20 Jul, 2010,at 04:03 PM, bujji <sivaits4u= @gmail.com> wrote:

Hi all,
I am new to Cassandra...

I want= to use to cassandra for a billing system.

As I s= aw in many places that Joins won't work in BigTable implementation but i f= eel i needed it for my App.
=0A=0A

I am unable to = get the data from multiple tables (columnFamilies) like products and inven= tory

As I am trying to do some joins implementati= on but fails....

=0A
=0ACan I do it without joins = ?

Can anybody give me some good model to use for = my application or any standard example 
please help me folk= s,

Thanks ,
Bujji
=0A=0A
--Apple-Webmail-86--af76d5dd-0cd7-e2b9-d287-f36f47bd560a-- --Apple-Webmail-42--af76d5dd-0cd7-e2b9-d287-f36f47bd560a--