Return-Path: Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: (qmail 34537 invoked from network); 8 Nov 2010 20:01:48 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 8 Nov 2010 20:01:48 -0000 Received: (qmail 83018 invoked by uid 500); 8 Nov 2010 20:02:17 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 82979 invoked by uid 500); 8 Nov 2010 20:02:16 -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 82971 invoked by uid 99); 8 Nov 2010 20:02:16 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 08 Nov 2010 20:02:16 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jbellis@gmail.com designates 209.85.215.44 as permitted sender) Received: from [209.85.215.44] (HELO mail-ew0-f44.google.com) (209.85.215.44) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 08 Nov 2010 20:02:10 +0000 Received: by ewy27 with SMTP id 27so3382741ewy.31 for ; Mon, 08 Nov 2010 12:01:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=I/2aFxLmTpM0gX3F/W22xaz/ckLlABnPUqRko0afyEQ=; b=hREanQxQ/CSFTD8MPi5WLSEbzXUXU+sWruDSCstZ1keMBTWV2y0oo0Rm9ctPTHXhsp bW1OWZ6dYElEzrUc9RZ1XjTJDUQq7Iaw4EChf9KOpC0pkWdmgUPQ+OnFoDWTvJChmbAy fH1j1C4SxIMFJPR4FVzn8zH0h0NJ6SvikQxXI= 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:content-transfer-encoding; b=pNDugD4vgpaGKPrL9uD2RwruEHrkdKnsgnxrKnIxyrPb9oetBsQNzm0JF+8pXrml2l nQa62pU7NryuGB8ywFZEa+f5RbLRG4FGNPRT4QKVM7QTmbRmOc8tAblq2ngBEClAS7Q/ zoWmdvw0EaoHrRzdlEalAL3PMsZFMKSqkA6Ec= MIME-Version: 1.0 Received: by 10.213.34.68 with SMTP id k4mr4632822ebd.88.1289246510600; Mon, 08 Nov 2010 12:01:50 -0800 (PST) Received: by 10.14.127.203 with HTTP; Mon, 8 Nov 2010 12:01:50 -0800 (PST) In-Reply-To: References: Date: Mon, 8 Nov 2010 14:01:50 -0600 Message-ID: Subject: Re: Design Question From: Jonathan Ellis To: user Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Hi Mubarak, Did you see David Strauss's talk on queing at the Summit? http://riptano.blip.tv/file/4015190/ What specifics can you give as to how your use case is similar to / different from what David covered? On Sun, Nov 7, 2010 at 7:05 PM, Mubarak Seyed wro= te: > Hi All, > Can someone please validate and recommend a solution for the given design > problem? > Problem statement: Need to de-queue data from Cassandra (from Standard > ColumnFamily) using a job but multiple instances of a job can run > simultaneously (kinda multiple threads), trying to access a same row but > need to make sure that only one instance of a job (thread) can access a r= ow, > meaning if job A is accessing Row #1, then job B can't access Row #1. > Possible solutions: > Solution #1: Using Cages (and ZooKeeper) to make sure that one only job a= t a > time can access a row in CF. How do we make sure that Cages (transaction > coordinator using ZooKeeper) is not a Single Point of Failure?=A0What is = the > performance impact on write/read on nodes?=A0There is some blog on distri= buted > concurrent queue > at=A0http://www.cloudera.com/blog/2009/05/building-a-distributed-concurre= nt-queue-with-apache-zookeeper/ > Solution #2: Using some home-grown approach to store/maintain who is > accessing what, meaning which job is accessing which row. > Are there any other solutions to the above problem? > Can someone please help me on validate the design? > -- > Thanks, > Mubarak Seyed. > --=20 Jonathan Ellis Project Chair, Apache Cassandra co-founder of Riptano, the source for professional Cassandra support http://riptano.com