Hi

 

I agree with you, if they are collocated, would it be better to use on join 
query OR use 2 individual queries, which one gives us the best results, 
assuming that we have used the right indexes. Assume we have huge data in both 
the tables, around 100 millions

 

In our case, we do not have any option to collocate, since we d

 

Also, how do I set setDistributedJoins(true) on sqlline.sh prompt.

 

Regards, Naveen

91-9561721495

 

From: Alexey Kukushkin [mailto:[email protected]] 
Sent: Friday, November 24, 2017 6:30 PM
To: [email protected]
Subject: Re: SQL Join not giving results

 

Hi,

 

Your data is not collocated explains why your JOIN query gets no data. By 
default distributed joins are disabled since it really negatively impacts 
performance. Please do setDistributedJoins(true) on your JOIN SqlQuery and try 
again.

But I really encourage you to refactor your data model to make the data 
colocated. Ignite is about performance and data colocation is a competitive 
advantage over most other systems that do not support it.

 

On Fri, Nov 24, 2017 at 3:53 PM, Naveen <[email protected]> wrote:

Hi 

 

I am using Ignite 2.3, cluster with 2 servers, one ignite node running on each 
server, using the ignite native persistence. 

 

If we see the below queries, query on a single table works fine, returns the 
data, but when I join the query it does not seems to be working, it says no 
rows selected. 

 

jdbc:ignite:thin://127.0.0.1> select Party_id from "Account".Account where 
PARTY_ID='P100000001';

+--------------------------------+

|            PARTY_ID            |

+--------------------------------+

| P100000001                     |

+--------------------------------+

1 row selected (0.034 seconds)

0: jdbc:ignite:thin://127.0.0.1> select party_id from "Customer".Customer where 
PARTY_ID='P100000001';

+--------------------------------+

|            PARTY_ID            |

+--------------------------------+

| P100000001                     |

+--------------------------------+

1 row selected (0.019 seconds)

0: jdbc:ignite:thin://127.0.0.1> select A.ACCOUNT_ID,P.ACCOUNT_ID_LIST from 
"Account".Account A, "Customer".Customer P where P.PARTY_ID='P100000001' and 
A.PARTY_ID = P.PARTY_ID;

+--------------------------------+--------------------------------+

|           ACCOUNT_ID           |        ACCOUNT_ID_LIST         |

+--------------------------------+--------------------------------+

+--------------------------------+--------------------------------+

No rows selected (0.016 seconds)

0: jdbc:ignite:thin://127.0.0.1>

 

Looks like, we need to set districted joins, which I was trying to set on sql 
command prompt, but I could not do it. 

 

My question is, first I wanted to make this work. 

Second, the data I am trying to retrieve is not collocated, so does it have any 
performance impact if run this. 

If there is any impact, how can I minimize the impact, not thru affinity keys.

 

Thakns

 





 

-- 

Best regards,

Alexey

Reply via email to