You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hive.apache.org by bharath v <bh...@gmail.com> on 2010/02/03 11:07:04 UTC

Converting multiple joins into a single multi-way join

Hi ,

Can anyone give me an example in which there is an optimization of
"Converting multiple joins into a single multi-way join" .. i.e., reducing
the number of map-reduce jobs .
I read this from hive's design document but I couldn't find any example .
Can anyone point me to the same??

Kindly help,

Thanks

Re: Converting multiple joins into a single multi-way join

Posted by bharath v <bh...@gmail.com>.
Thanks for your reply  Zheng ,


If no. of tables = no. of cols to be joined .. we can do it in one shot !

Got it!


On Thu, Feb 4, 2010 at 3:05 AM, Zheng Shao <zs...@gmail.com> wrote:

> https://issues.apache.org/jira/browse/HIVE-591
>
> On Wed, Feb 3, 2010 at 1:34 PM, Zheng Shao <zs...@gmail.com> wrote:
> > See ql/src/test/queries/clientpositive/uniquejoin.q
> >
> >
> > FROM UNIQUEJOIN PRESERVE T1 a (a.key), PRESERVE T2 b (b.key), PRESERVE
> > T3 c (c.key)
> > SELECT a.key, b.key, c.key;
> >
> > FROM UNIQUEJOIN T1 a (a.key), T2 b (b.key), T3 c (c.key)
> > SELECT a.key, b.key, c.key;
> >
> > FROM UNIQUEJOIN T1 a (a.key), T2 b (b.key-1), T3 c (c.key)
> > SELECT a.key, b.key, c.key;
> >
> > FROM UNIQUEJOIN PRESERVE T1 a (a.key, a.val), PRESERVE T2 b (b.key,
> > b.val), PRESERVE T3 c (c.key, c.val)
> > SELECT a.key, a.val, b.key, b.val, c.key, c.val;
> >
> > FROM UNIQUEJOIN PRESERVE T1 a (a.key), T2 b (b.key), PRESERVE T3 c
> (c.key)
> > SELECT a.key, b.key, c.key;
> >
> > FROM UNIQUEJOIN PRESERVE T1 a (a.key), T2 b(b.key)
> > SELECT a.key, b.key;
> >
> >
> > Zheng
> >
> > On Wed, Feb 3, 2010 at 2:07 AM, bharath v
> > <bh...@gmail.com> wrote:
> >>
> >> Hi ,
> >>
> >> Can anyone give me an example in which there is an optimization of
> >> "Converting multiple joins into a single multi-way join" .. i.e.,
> reducing
> >> the number of map-reduce jobs .
> >> I read this from hive's design document but I couldn't find any example
> .
> >> Can anyone point me to the same??
> >>
> >> Kindly help,
> >>
> >> Thanks
> >>
> >
> >
> >
> > --
> > Yours,
> > Zheng
> >
>
>
>
> --
> Yours,
> Zheng
>

Re: Converting multiple joins into a single multi-way join

Posted by Zheng Shao <zs...@gmail.com>.
https://issues.apache.org/jira/browse/HIVE-591

On Wed, Feb 3, 2010 at 1:34 PM, Zheng Shao <zs...@gmail.com> wrote:
> See ql/src/test/queries/clientpositive/uniquejoin.q
>
>
> FROM UNIQUEJOIN PRESERVE T1 a (a.key), PRESERVE T2 b (b.key), PRESERVE
> T3 c (c.key)
> SELECT a.key, b.key, c.key;
>
> FROM UNIQUEJOIN T1 a (a.key), T2 b (b.key), T3 c (c.key)
> SELECT a.key, b.key, c.key;
>
> FROM UNIQUEJOIN T1 a (a.key), T2 b (b.key-1), T3 c (c.key)
> SELECT a.key, b.key, c.key;
>
> FROM UNIQUEJOIN PRESERVE T1 a (a.key, a.val), PRESERVE T2 b (b.key,
> b.val), PRESERVE T3 c (c.key, c.val)
> SELECT a.key, a.val, b.key, b.val, c.key, c.val;
>
> FROM UNIQUEJOIN PRESERVE T1 a (a.key), T2 b (b.key), PRESERVE T3 c (c.key)
> SELECT a.key, b.key, c.key;
>
> FROM UNIQUEJOIN PRESERVE T1 a (a.key), T2 b(b.key)
> SELECT a.key, b.key;
>
>
> Zheng
>
> On Wed, Feb 3, 2010 at 2:07 AM, bharath v
> <bh...@gmail.com> wrote:
>>
>> Hi ,
>>
>> Can anyone give me an example in which there is an optimization of
>> "Converting multiple joins into a single multi-way join" .. i.e., reducing
>> the number of map-reduce jobs .
>> I read this from hive's design document but I couldn't find any example .
>> Can anyone point me to the same??
>>
>> Kindly help,
>>
>> Thanks
>>
>
>
>
> --
> Yours,
> Zheng
>



-- 
Yours,
Zheng

Re: Converting multiple joins into a single multi-way join

Posted by Zheng Shao <zs...@gmail.com>.
See ql/src/test/queries/clientpositive/uniquejoin.q


FROM UNIQUEJOIN PRESERVE T1 a (a.key), PRESERVE T2 b (b.key), PRESERVE
T3 c (c.key)
SELECT a.key, b.key, c.key;

FROM UNIQUEJOIN T1 a (a.key), T2 b (b.key), T3 c (c.key)
SELECT a.key, b.key, c.key;

FROM UNIQUEJOIN T1 a (a.key), T2 b (b.key-1), T3 c (c.key)
SELECT a.key, b.key, c.key;

FROM UNIQUEJOIN PRESERVE T1 a (a.key, a.val), PRESERVE T2 b (b.key,
b.val), PRESERVE T3 c (c.key, c.val)
SELECT a.key, a.val, b.key, b.val, c.key, c.val;

FROM UNIQUEJOIN PRESERVE T1 a (a.key), T2 b (b.key), PRESERVE T3 c (c.key)
SELECT a.key, b.key, c.key;

FROM UNIQUEJOIN PRESERVE T1 a (a.key), T2 b(b.key)
SELECT a.key, b.key;


Zheng

On Wed, Feb 3, 2010 at 2:07 AM, bharath v
<bh...@gmail.com> wrote:
>
> Hi ,
>
> Can anyone give me an example in which there is an optimization of
> "Converting multiple joins into a single multi-way join" .. i.e., reducing
> the number of map-reduce jobs .
> I read this from hive's design document but I couldn't find any example .
> Can anyone point me to the same??
>
> Kindly help,
>
> Thanks
>



-- 
Yours,
Zheng