Return-Path: X-Original-To: apmail-db-derby-dev-archive@www.apache.org Delivered-To: apmail-db-derby-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 7B4924075 for ; Fri, 10 Jun 2011 17:31:12 +0000 (UTC) Received: (qmail 39937 invoked by uid 500); 10 Jun 2011 17:31:12 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 39908 invoked by uid 500); 10 Jun 2011 17:31:12 -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 39901 invoked by uid 99); 10 Jun 2011 17:31:12 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Jun 2011 17:31:12 +0000 X-ASF-Spam-Status: No, hits=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS,UNPARSEABLE_RELAY X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [148.87.113.121] (HELO rcsinet10.oracle.com) (148.87.113.121) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 10 Jun 2011 17:31:05 +0000 Received: from acsinet22.oracle.com (acsinet22.oracle.com [141.146.126.238]) by rcsinet10.oracle.com (Switch-3.4.2/Switch-3.4.2) with ESMTP id p5AHUg6X029259 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 10 Jun 2011 17:30:44 GMT Received: from acsmt356.oracle.com (acsmt356.oracle.com [141.146.40.156]) by acsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id p5AHUg4B028880 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 10 Jun 2011 17:30:42 GMT Received: from abhmt007.oracle.com (abhmt007.oracle.com [141.146.116.16]) by acsmt356.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id p5AHUa0P030029 for ; Fri, 10 Jun 2011 12:30:37 -0500 Received: from richard-hillegas-computer.local (/10.159.2.179) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Fri, 10 Jun 2011 10:30:36 -0700 Message-ID: <4DF254B0.9060109@oracle.com> Date: Fri, 10 Jun 2011 10:30:24 -0700 From: Rick Hillegas User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: derby-dev@db.apache.org Subject: Re: Modifying "sql join" optimization algorithm in Derby References: <4DF2250B.1070608@oracle.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Source-IP: acsinet22.oracle.com [141.146.126.238] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A090209.4DF254C4.009F:SCFMA922111,ss=1,fgs=0 On 6/10/11 10:17 AM, Piumi Nanayakkara wrote: > Hi, > > Thank you very much for your responses. > > Our tentative plan is to change currently available optimization > techniques in relation to seek time/rotational latency which comes > with the normal magnetic disk,but can be avoided in solid state memory > device. Initially we are focusing on the optimization of Join > operation in Apache Derby. We thought of first comparing the > performance in two modes of devices with existing algorithms ( i.e. > Nested Loop Join and Hash Join) & existing join order and then to > modify them to utilize the benefits of solid state devices. > > we highly appreciate any feedback on this or any suggestions of an > alternative approach that can be taken. This sounds like a promising piece of research. It will be interesting to see if you can map the differences between solid-state and conventional disks onto the Cost Model variables in StoreCostController. Keep us posted as your research proceeds. Based on your findings, we may need to expand the existing Cost Model. Thanks, -Rick > > > Best Regards, > Piumi Nanayakkara > > > On Fri, Jun 10, 2011 at 7:37 PM, Rick Hillegas > > wrote: > > On 6/10/11 1:07 AM, Piumi Nanayakkara wrote: > > Hi all, > > For a research purpose I'm considering $subject when database > is stored in a solid state device.Can some one please clarify > me the packages/classes that i should study/modify for this > purpose. > Thank You! > > > Best Regards, > Piumi Nanayakkara > > Hi Piumi, > > Probably what is most relevant is the Cost Model for these > devices. Derby ships with a hard-coded Cost Model for heap and > index files. That Cost Model was tuned many years ago and probably > doesn't capture the actual performance of modern disks. I was not > part of the effort to tune that Cost Model so I can't give you a > lot of detail here. > > If you want to tweak the Cost Model to better reflect the > performance of solid state disks, I recommend that you study the > org.apache.derby.iapi.store.access.StoreCostController interface > and its implementations. Unfortunately, I am not aware of any > tools which will help you create an implementation which is tuned > to the behavior of a particular disk. You may develop such a tool > as you pursue your research. If so, I encourage you to donate that > tool back to the community. I'm sure it will be useful to other > researchers and developers. > > Perhaps you will get more detailed advice from someone who was > closer to the original effort which tuned the current Cost Model. > > Sounds like an interesting project. Good luck! > > Cheers, > -Rick > > >