[ 
https://issues.apache.org/jira/browse/HIVE-9153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14251407#comment-14251407
 ] 

Rui Li commented on HIVE-9153:
------------------------------

I used our cluster B to test this. Results show that CombineHiveInputFormat 
still performs much better than HiveInputFormat for spark. The test query is 
{code}select count(*) from store_sales where ss_sold_date_sk is not null;{code}
With CombineHiveInputFormat spark spawns 1252 mappers and the query finishes in 
about 180s, while HiveInputFormat requires 13559 mappers and the query finishes 
in about 700s.
I didn't find why Tez uses HiveInputFormat as default. But for Tez, 
HiveInputFormat spawns 332 mappers while CombineHiveInputFormat spawns 1252. So 
I think Tez has its own way to combine the splits. With 332 mappers, Tez 
finishes the query in about 90s, and with 1252 mappers, it took about 120s.

> Evaluate CombineHiveInputFormat versus HiveInputFormat [Spark Branch]
> ---------------------------------------------------------------------
>
>                 Key: HIVE-9153
>                 URL: https://issues.apache.org/jira/browse/HIVE-9153
>             Project: Hive
>          Issue Type: Sub-task
>          Components: Spark
>    Affects Versions: spark-branch
>            Reporter: Brock Noland
>            Assignee: Rui Li
>
> The default InputFormat is {{CombineHiveInputFormat}} and thus HOS uses this. 
> However, Tez uses {{HiveInputFormat}}. Since tasks are relatively cheap in 
> Spark, it might make sense for us to use {{HiveInputFormat}} as well. We 
> should evaluate this on a query which has many input splits such as {{select 
> count(\*) from store_sales where something is not null}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to