Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 47F8D200C01 for ; Thu, 19 Jan 2017 13:39:56 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 46781160B54; Thu, 19 Jan 2017 12:39:56 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 68121160B42 for ; Thu, 19 Jan 2017 13:39:55 +0100 (CET) Received: (qmail 8417 invoked by uid 500); 19 Jan 2017 12:39:54 -0000 Mailing-List: contact dev-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.apache.org Delivered-To: mailing list dev@ignite.apache.org Received: (qmail 8402 invoked by uid 99); 19 Jan 2017 12:39:54 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 19 Jan 2017 12:39:54 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id BE12D1804B1 for ; Thu, 19 Jan 2017 12:39:53 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 2.898 X-Spam-Level: ** X-Spam-Status: No, score=2.898 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_REPLY=1, HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id s1kxl693JqVs for ; Thu, 19 Jan 2017 12:39:51 +0000 (UTC) Received: from mail-ua0-f176.google.com (mail-ua0-f176.google.com [209.85.217.176]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 65FD65F365 for ; Thu, 19 Jan 2017 12:39:50 +0000 (UTC) Received: by mail-ua0-f176.google.com with SMTP id i68so32181640uad.0 for ; Thu, 19 Jan 2017 04:39:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=nB823IpgrDLEXNS4tAefbK7Ooyt53xVPIpMJWOD5n2o=; b=vLpoLBewiOzm58s9nkvJZvHqZY+mZHF0xgjtREG/mLRCzJB9IZgvNtES+p4zky8wLl kXWpa608U7hdeFxISGoPE23Gn5LoEc5XTU9/+eQVlfqOv4XdXrwL3OOcNAr3WIWZa/be HomaDdevbIrA/QOjNKb25uIBIM+Y8UrPiEemlICYvh6a2V7nqTVqS+ce295Wescx47ee XcaKaNcJQstFp6LRhtbMuL13OK6LrYuTt+HUwj4FU/T0eJ2jJ1vi76WNA4ZZZ6rAp26M AAhogwGfUsE7Csz0cr0O8nWrrjSQTkzgr3sbujFXHm4i3jZG1IOlX8F7QrE6PaHry2n/ B/xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=nB823IpgrDLEXNS4tAefbK7Ooyt53xVPIpMJWOD5n2o=; b=feAQx87v3LbVVX2LeazPsJyQKorT8OUYOFFI72sBmCgmrGwQjtVZToHie/KbfskjB8 ecBFcTR0yvcVy74EdVjXQuPQxQGEaMBrGwLSp88GMKkKlsdXTASPJATpcjQuy/Cv8kqa ZO8Sj5ikPt1VKW1ACed0PXjjmY+PHwaIbDKAxydtFfoEqdzcYkyA6d0JkOu9bhuxSMZG ZV6vjDBdVR2Bo/sXYLnpyaliDdwEJB1qOcazZfjzkq6Rkj3mQv4yf3ViMzB+LKV/AEO+ CSJqPWWvnyWJ3bQRX4ue7QddgnniVYmVz9U13kuNOsdMUiTxHTuvXOdYRnsAEjYvOMWD 67uQ== X-Gm-Message-State: AIkVDXKjbmSswo67dj4eGDHJeaz1Q/BYBdMWWdqrLPvla+F5pNfePE4FBDKMf9m3I4DVwvhdKXYurvB6nKPBfQ== X-Received: by 10.176.23.3 with SMTP id j3mr3750268uaf.78.1484829589154; Thu, 19 Jan 2017 04:39:49 -0800 (PST) MIME-Version: 1.0 Received: by 10.103.24.135 with HTTP; Thu, 19 Jan 2017 04:39:08 -0800 (PST) In-Reply-To: References: From: Sergi Vladykin Date: Thu, 19 Jan 2017 15:39:08 +0300 Message-ID: Subject: Re: Allow distributed SQL query execution over explicit set of partitions To: dev@ignite.apache.org Content-Type: multipart/alternative; boundary=f40304361f3836b2f7054671d487 archived-at: Thu, 19 Jan 2017 12:39:56 -0000 --f40304361f3836b2f7054671d487 Content-Type: text/plain; charset=UTF-8 Agree, lets remove everything related to partition ranges. Looks like unnecessary complication. Sergi 2017-01-19 10:01 GMT+03:00 Vladimir Ozerov : > Several side notes about API. > > 1) I would avoid ranges even in this form.for the sake of simplicity. > Ignite do not have any notion of "partition range" in affinity API, so I do > not understand how users are going to work on ranges unless they have some > very special custom affinity function, which is rather unlikely case. > > 2) The fact that this property is ignored in REPLICATED cache is confusing. > REPLICATED cache still divides partitions into primaries and backups. If I > have very large data set and want to execute some query, I would definitely > expect that Ignite will take advantage of distributed computing and spread > the load between nodes. I understand that currently SQL queries do not work > this way, but this is clear disadvantage for certain scenarios, which we > may improve in future. I would remove this paragraph from docs. > > 3) We already have ScanQuery.partition getter/setter. We need to make sure > that they are "merged" somehow. For instance, we may deprecate two methods > in ScanQuery class, and advise users to use Query.partitions, with > clarification - only single partition is supported for ScanQuery at the > moment. > > 4) What should happen if "partitions" are defined and "local" flag is set? > > As per distributed joins - how are we going to execute them when partitions > are set explicitly? As far as I understand, partitions should apply only to > map step and only for the cache query was created from, This way > distributed join execution should effectively ignore partitions? > > Vladimir. > > > On Thu, Jan 19, 2017 at 1:04 AM, Alexei Scherbakov < > alexey.scherbakoff@gmail.com> wrote: > > > I mean distributed joins. > > > > 2017-01-19 0:10 GMT+03:00 Alexei Scherbakov < > alexey.scherbakoff@gmail.com> > > : > > > > > Guys, > > > > > > I've finished adding API changes and implemented proper nodes routing. > > > > > > Currently it doesn't work with distributed queries.But I think this > > > feature should be compatible with it. > > > > > > Could anyone take a look at current branch state while I'm looking > deeper > > > into dsitributed queries code? > > > > > > Issue: https://issues.apache.org/jira/browse/IGNITE-4523 > > > PR: https://github.com/apache/ignite/pull/1418 > > > > > > > > > > > > 2017-01-13 15:55 GMT+03:00 Alexei Scherbakov < > > alexey.scherbakoff@gmail.com > > > >: > > > > > >> OK, let's do it this way. > > >> > > >> > > >> > > >> > > >> > > >> 2017-01-13 13:27 GMT+03:00 Sergi Vladykin : > > >> > > >>> Internally we still use int[] when we send partitions (see > > >>> GridH2QueryRequest.parts). It looks like we only do more work with > > >>> PartitionSet. > > >>> > > >>> I like the idea of bitset for partitions, but > > >>> > > >>> 1. We have to change internals first to use it, otherwise the > > >>> optimization > > >>> makes no sense. > > >>> 2. We will need to have a method SqlQuery.setPartitions(int... parts) > > for > > >>> usability reasons anyways. > > >>> > > >>> Thus I suggest for now to go the straightforward way with int[] and > > >>> create > > >>> a separate ticket describing the optimization with bitset. > > >>> > > >>> Sergi > > >>> > > >>> 2017-01-13 13:06 GMT+03:00 Alexei Scherbakov < > > >>> alexey.scherbakoff@gmail.com>: > > >>> > > >>> > PartitionSet hides internal implementation of int array. > > >>> > > > >>> > This allows as to efficiently represent contiguous range of > > partitions > > >>> and > > >>> > defines clear API for ordered iteration over partitions and > > containment > > >>> > check. > > >>> > > > >>> > Even better to go with compressed bitmap, as I mentioned in ticket > > >>> comment. > > >>> > This will allow us to minimize heap footprint for this object. > > >>> > > > >>> > Moreover, it will be useful to create reusable compressed bitmap > > >>> > implementation in Ignite and use it in other cases, on example, for > > >>> > replacing H2's IntArray and Set. > > >>> > > > >>> > Should I create a ticket for this ? > > >>> > > > >>> > . > > >>> > > > >>> > 2017-01-13 1:01 GMT+03:00 Dmitriy Setrakyan >: > > >>> > > > >>> > > On Thu, Jan 12, 2017 at 6:12 AM, Sergi Vladykin < > > >>> > sergi.vladykin@gmail.com> > > >>> > > wrote: > > >>> > > > > >>> > > > I looked at the code. The PartitionSet concept looks > > >>> overengineered to > > >>> > > me, > > >>> > > > why wouldn't we just go with int[]? > > >>> > > > > > >>> > > > > >>> > > Agree. > > >>> > > > > >>> > > > > >>> > > > > > >>> > > > Sergi > > >>> > > > > > >>> > > > 2017-01-12 15:18 GMT+03:00 Alexei Scherbakov < > > >>> > > alexey.scherbakoff@gmail.com > > >>> > > > >: > > >>> > > > > > >>> > > > > Done. > > >>> > > > > > > >>> > > > > 2017-01-11 20:39 GMT+03:00 Dmitriy Setrakyan < > > >>> dsetrakyan@apache.org > > >>> > >: > > >>> > > > > > > >>> > > > > > Alexey, > > >>> > > > > > > > >>> > > > > > I am not sure I am seeing the API changes documented in the > > >>> ticket. > > >>> > > Can > > >>> > > > > you > > >>> > > > > > please either document them or add GIT links for the new > > >>> classes? > > >>> > > > > > > > >>> > > > > > D. > > >>> > > > > > > > >>> > > > > > On Wed, Jan 11, 2017 at 9:29 AM, Alexei Scherbakov < > > >>> > > > > > alexey.scherbakoff@gmail.com> wrote: > > >>> > > > > > > > >>> > > > > > > Guys, > > >>> > > > > > > > > >>> > > > > > > I've just submitted a PR for > > >>> > > > > > > https://issues.apache.org/jira/browse/IGNITE-4523. > > >>> > > > > > > > > >>> > > > > > > Please review API changes while waiting for TC results. > > >>> > > > > > > > > >>> > > > > > > -- > > >>> > > > > > > > > >>> > > > > > > Best regards, > > >>> > > > > > > Alexei Scherbakov > > >>> > > > > > > > > >>> > > > > > > > >>> > > > > > > >>> > > > > > > >>> > > > > > > >>> > > > > -- > > >>> > > > > > > >>> > > > > Best regards, > > >>> > > > > Alexei Scherbakov > > >>> > > > > > > >>> > > > > > >>> > > > > >>> > > > >>> > > > >>> > > > >>> > -- > > >>> > > > >>> > Best regards, > > >>> > Alexei Scherbakov > > >>> > > > >>> > > >> > > >> > > >> > > >> -- > > >> > > >> Best regards, > > >> Alexei Scherbakov > > >> > > > > > > > > > > > > -- > > > > > > Best regards, > > > Alexei Scherbakov > > > > > > > > > > > -- > > > > Best regards, > > Alexei Scherbakov > > > --f40304361f3836b2f7054671d487--