You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Rui Li (JIRA)" <ji...@apache.org> on 2014/12/18 10:11:14 UTC
[jira] [Commented] (HIVE-9153) Evaluate CombineHiveInputFormat
versus HiveInputFormat [Spark Branch]
[ 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)