Return-Path: X-Original-To: apmail-accumulo-dev-archive@www.apache.org Delivered-To: apmail-accumulo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 48E18109DD for ; Thu, 26 Feb 2015 20:43:54 +0000 (UTC) Received: (qmail 92250 invoked by uid 500); 26 Feb 2015 20:43:44 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 92212 invoked by uid 500); 26 Feb 2015 20:43:44 -0000 Mailing-List: contact dev-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list dev@accumulo.apache.org Received: (qmail 91734 invoked by uid 99); 26 Feb 2015 20:43:44 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Feb 2015 20:43:44 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of josh.elser@gmail.com designates 209.85.216.177 as permitted sender) Received: from [209.85.216.177] (HELO mail-qc0-f177.google.com) (209.85.216.177) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Feb 2015 20:43:39 +0000 Received: by qcxr5 with SMTP id r5so10605793qcx.13; Thu, 26 Feb 2015 12:43:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=90WvVWWNebpI5EpYsGZ+pjHoft56JuG7zQUPoJ2V8WQ=; b=TlJBpCEb7H9SX/0TZ83bXNuXK2nCv0I2MTCIEtcitWZKk2d0cnucaKx31Y+qndpkIZ wIUbrMsIPXqM1ALZM5Kk6FhFS7rqB0pmxo5uodG9YoJMEMStqKMpjG4QADKF/Zhsynj5 qcASzN7gUTqAuVxdqeP2w887twm2zIf/bhF1KDuTqOov9m/z2U+m/7dKfTU/M+u+itKZ F5eJ3y1qiZfUZD4LtEw36RMEyQ7FOik4gtmCEc0eafNqT21DKitjtOAtGuhtVt0coYhv QnwVOOhX0eGCFh1UyN+tWc0R3XgTf9Rayg0D8yJGxXSgSjU/rqOYrp1RJfAi+0MYvcr8 rU7A== X-Received: by 10.140.89.146 with SMTP id v18mr20667920qgd.65.1424983398825; Thu, 26 Feb 2015 12:43:18 -0800 (PST) Received: from hw10447.local (c-73-132-239-16.hsd1.md.comcast.net. [73.132.239.16]) by mx.google.com with ESMTPSA id l49sm1233410qgd.21.2015.02.26.12.43.17 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 26 Feb 2015 12:43:18 -0800 (PST) Message-ID: <54EF8563.2090804@gmail.com> Date: Thu, 26 Feb 2015 15:43:15 -0500 From: Josh Elser User-Agent: Postbox 3.0.11 (Macintosh/20140602) MIME-Version: 1.0 To: user@accumulo.apache.org CC: dev@accumulo.apache.org, Jeremy Kepner , Adam Fuchs Subject: Re: Design-for-comment: Accumulo Server-Side Computation: Stored Procedure Tables starring SpGEMM References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Thanks for taking the time to write this up, Dylan. I'm a little worried about the RemoteWriteIterator. Using a BatchWriter implies that you'll need some sort of resource management - both ensuring that the BatchWriter is close()'ed whenever a compaction/procedure ends and handling rejected mutations. Have you put any thought into how you would address these? I'm not familiar enough with the internals anymore, but I remember that I had some pains trying to write to another table during compactions when I was working on replication. I think as long as it's not triggered off of the metadata table, it wouldn't have any deadlock issues. Architecturally, it's a little worrisome, because it feels a bit like using a wrench as a hammer -- iterators are great for performing some passing computation, but not really for doing some arbitrary read/writes. It gets back to how Accumulo/HBase comparisons where people try to compare Iterators and Coprocessors. They can sometimes do the same thing, but they're definitely different features. Anyways, I need to stew on it some more and give it a few more reads. Thanks again for sharing! Dylan Hutchison wrote: > Hello all, > > As promised > , > here is a design doc open for comments on implementing server-side > computation in Accumulo. > > https://github.com/Accla/accumulo_stored_procedure_design > > Would love to hear your opinion, especially if the proposed design > pattern matches one of /your use cases/. > > Regards, > Dylan Hutchison >