You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@carbondata.apache.org by "Jarck (JIRA)" <ji...@apache.org> on 2017/03/10 02:40:38 UTC

[jira] [Created] (CARBONDATA-754) order by query's performance is very bad

Jarck created CARBONDATA-754:
--------------------------------

             Summary: order by query's performance is very bad
                 Key: CARBONDATA-754
                 URL: https://issues.apache.org/jira/browse/CARBONDATA-754
             Project: CarbonData
          Issue Type: Improvement
          Components: core, spark-integration
            Reporter: Jarck
            Assignee: Jarck


currently the order by dimension query's performance is very bad if there is no filter or filtered data is still to large. 
if I was not  wrong, it read all  related data in carbon scan physical level,  decode the sort dimension's data  and sort all of them in spark sql sort physical  plan.

I think we can optimize as below:

1. push down sort (+limit) to carbon scan 

2. leverage the dimension's stored by nature order feature in blocklet level to get a sorted data in each partition

3. implements merge-sort/TopN in the spark's sort physical plan

actually I haveI optimized for  "order by only 1 dimension + limit" base on branch 0.2. The performance is much better.
sort by 1 dimension +limit 10000  in 100 million data , it only take less than 1 second to get  and print the result.





1. push down






--
This message was sent by Atlassian JIRA
(v6.3.15#6346)