From user-return-17977-apmail-cassandra-user-archive=cassandra.apache.org@cassandra.apache.org Tue Jun 21 21:38:19 2011 Return-Path: X-Original-To: apmail-cassandra-user-archive@www.apache.org Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9B9954414 for ; Tue, 21 Jun 2011 21:38:19 +0000 (UTC) Received: (qmail 40860 invoked by uid 500); 21 Jun 2011 21:38:17 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 40833 invoked by uid 500); 21 Jun 2011 21:38:17 -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 40825 invoked by uid 99); 21 Jun 2011 21:38:17 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 21 Jun 2011 21:38:17 +0000 X-ASF-Spam-Status: No, hits=2.9 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [204.13.248.66] (HELO mho-01-ewr.mailhop.org) (204.13.248.66) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 21 Jun 2011 21:38:09 +0000 Received: from 67-6-215-137.hlrn.qwest.net ([67.6.215.137] helo=[192.168.0.2]) by mho-01-ewr.mailhop.org with esmtpsa (TLSv1:CAMELLIA256-SHA:256) (Exim 4.72) (envelope-from ) id 1QZ8dn-000PDZ-UQ for user@cassandra.apache.org; Tue, 21 Jun 2011 21:37:48 +0000 X-Mail-Handler: MailHop Outbound by DynDNS X-Originating-IP: 67.6.215.137 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/mailhop/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1936jAKeh/TpQKvGzBBq67YJDZNgcJrZ/0= Message-ID: <4E010F28.1000304@dude.podzone.net> Date: Tue, 21 Jun 2011 15:37:44 -0600 From: AJ User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.17) Gecko/20110414 Lightning/1.0b2 Thunderbird/3.1.10 MIME-Version: 1.0 To: user@cassandra.apache.org Subject: Re: Storing Accounting Data References: <4E00D52A.6040409@dude.podzone.net> <4E01073B.6090200@dude.podzone.net> <4E010DBF.5060801@dude.podzone.net> In-Reply-To: <4E010DBF.5060801@dude.podzone.net> Content-Type: multipart/alternative; boundary="------------040900050505040401020809" X-Virus-Checked: Checked by ClamAV on apache.org This is a multi-part message in MIME format. --------------040900050505040401020809 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit And I was thinking of using JTA for transaction processing. I have no experience with it but on the surface it looks like it should work. On 6/21/2011 3:31 PM, AJ wrote: > What's the best accepted way to handle that 100% in the client? Retries? > > On 6/21/2011 3:14 PM, Anand Somani wrote: >> Not sure if it is that simple, a quorum can fail with writes >> happening on some nodes (there is no rollback). Also there is no >> concept of atomic compare-and-swap. >> >> On Tue, Jun 21, 2011 at 2:03 PM, AJ > > wrote: >> >> On 6/21/2011 2:50 PM, Stephen Connolly wrote: >>> >>> how important are things like transactional consistency for you? >>> >>> would you have issues if only one side of a transfer was recorded? >>> >> >> Right. Both of those questions are about consistency. Isn't the >> simple solution is to use QUORUM read/writes? >> >>> cassandra, out of the box, on it's own, would not be ideal if >>> the above two things are important for you. >>> >>> you can add components to a system to help address these things, >>> eg zookeeper, etc. a reason why you moght do this is if you >>> already use cassandra in your app and are trying to limit the >>> number of databases >>> >>> - Stephen >>> >>> --- >>> Sent from my Android phone, so random spelling mistakes, random >>> nonsense words and other nonsense are a direct result of using >>> swype to type on the screen >>> >>> On 21 Jun 2011 18:30, "AJ" >> > wrote: >> >> > --------------040900050505040401020809 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit And I was thinking of using JTA for transaction processing.  I have no experience with it but on the surface it looks like it should work.

On 6/21/2011 3:31 PM, AJ wrote:
What's the best accepted way to handle that 100% in the client?  Retries?

On 6/21/2011 3:14 PM, Anand Somani wrote:
Not sure if it is that simple, a quorum can fail with writes happening on some nodes (there is no rollback). Also there is no concept of atomic compare-and-swap.

On Tue, Jun 21, 2011 at 2:03 PM, AJ <aj@dude.podzone.net> wrote:
On 6/21/2011 2:50 PM, Stephen Connolly wrote:

how important are things like transactional consistency for you?

would you have issues if only one side of a transfer was recorded?


Right.  Both of those questions are about consistency.  Isn't the simple solution is to use QUORUM read/writes? 

cassandra, out of the box, on it's own, would not be ideal if the above two things are important for you.

you can add components to a system to help address these things, eg zookeeper, etc. a reason why you moght do this is if you already use cassandra in your app and are trying to limit the number of databases

- Stephen

---
Sent from my Android phone, so random spelling mistakes, random nonsense words and other nonsense are a direct result of using swype to type on the screen

On 21 Jun 2011 18:30, "AJ" <aj@dude.podzone.net> wrote:




--------------040900050505040401020809--