You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Dooyoung Hwang (JIRA)" <ji...@apache.org> on 2018/09/06 07:46:00 UTC

[jira] [Created] (SPARK-25353) Refactoring executeTake(n: Int) in SparkPlan

Dooyoung Hwang created SPARK-25353:
--------------------------------------

             Summary: Refactoring executeTake(n: Int) in SparkPlan
                 Key: SPARK-25353
                 URL: https://issues.apache.org/jira/browse/SPARK-25353
             Project: Spark
          Issue Type: Sub-task
          Components: SQL
    Affects Versions: 2.3.1
            Reporter: Dooyoung Hwang


In some cases, executeTake in SparkPlan could deserialize more than necessary.

For example, df.limit(1000).collect() is executed.
  +- executeTake in SparkPlan is called with arg 1000.
      +- If total rows count from partitions is 2000, executeTake deserialize them and create array of InternalRow whose size is 2000.
      +- Slice the first 1000 rows, and return them. 1000 rows in the rear are not used.

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org