Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 47185 invoked from network); 18 Jul 2007 15:59:11 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 18 Jul 2007 15:59:11 -0000 Received: (qmail 63385 invoked by uid 500); 18 Jul 2007 15:58:58 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 63344 invoked by uid 500); 18 Jul 2007 15:58:58 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 63102 invoked by uid 99); 18 Jul 2007 15:58:57 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 18 Jul 2007 08:58:56 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (herse.apache.org: local policy) Received: from [63.82.107.6] (HELO red.amberpoint.com) (63.82.107.6) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 18 Jul 2007 08:58:51 -0700 Received: from [127.0.0.1] (mbirdermacbookpro.local [10.10.11.161] (may be forged)) by red.amberpoint.com (8.14.0/8.12.11) with ESMTP id l6IFwU4v016606 for ; Wed, 18 Jul 2007 08:58:30 -0700 (PDT) Message-ID: <469E38A6.9060402@amberpoint.com> Date: Wed, 18 Jul 2007 08:58:30 -0700 From: Bryan Pendleton User-Agent: Thunderbird 1.5.0.12 (Windows/20070509) MIME-Version: 1.0 To: derby-dev@db.apache.org Subject: DERBY-581 and OLAP operations Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org In the context of https://issues.apache.org/jira/browse/DERBY-581 I've been studying the SQL-99 standard's specification of OLAP operations: - Feature T611 specifies "Elementary OLAP operations" - Feature T612 specifies "Advanced OLAP operations" I'm interested in exploring an implementation of these features, and to start with I'd like to get the community's reaction: - Are these features that we're interested in seeing added to Derby? - Are there others in the community who are interested in working on these features? - How could we approach this incrementally, building enough functionality to be useful, arriving at a complete implementation in pieces over time? For example, would it be reasonable to build a subset of the T611 features at first, and then expand that functionality over time? Would it be reasonable to add new SQL syntax support, but have it work only in a subset of cases, and then expand the execution functionality over time to address more usages? I was thinking that I might get started by trying to build one or more Wiki pages that describe some of the materials that might go into an implementation: - background information about the features and the concepts behind them - notes about the current Derby implementation, and about possible ways to extend the implementation in this area - ideas for how to subdivide and stage the implementation, in order to enable us to start talking about actual code. Does this seem like a reasonable approach? thanks, bryan