Hi Venkatesh,

1) Queries which had single level join when run always had this thing in the 
log. "Not invoking CBO because the statement has too few joins".  Can anyone 
confirm this. Join optimization happens only when there are more than 1 join? 
Is there a way around this.
This is true. In early versions Hive didn’t go through CBO for less than 2 
joins.

2) Also, Can CBO automatically do a Map join(without Hive's set auto-convert 
statement) if assesses that one of the table involved is small and could be 
broadcasted?
You don’t need CBO for this but you do need statistics. I believe you also need 
auto-convert statement. Hive will not attempt to convert to map-join without 
this flag.

Regards,
Vineet Garg

On Feb 12, 2019, at 11:48 AM, Venkatesh Selvaraj 
<venkateshselva...@pinterest.com<mailto:venkateshselva...@pinterest.com>> wrote:

Hello All,

I would like to know if anyone of you faced this issue with HIVE CBO and also 
would like to get some directions as to how to go about resolving it.

We are using Hive 1.2.1. When we were evaluating the benefits of Cost based 
Optimization(CBO), we stumbled upon this.

1) Queries which had single level join when run always had this thing in the 
log. "Not invoking CBO because the statement has too few joins".  Can anyone 
confirm this. Join optimization happens only when there are more than 1 join? 
Is there a way around this.

2) Also, Can CBO automatically do a Map join(without Hive's set auto-convert 
statement) if assesses that one of the table involved is small and could be 
broadcasted?

Thanks in advance!!

Regards,
Venkatesh Selvaraj

Reply via email to