Hi
I wanted to query top 20 rows by joining two tables, one table having around 1 lac rows and other table having 5 lac rows. Since I am using ORDER BY in the query so I created compound index with the columns being used in ORDER BY. Initially index size was 939 MB.
Then I ran EXPLAIN(ANALYZE,BUFFERS) for this query which took around 20 secs as it was not using the compound index for this query. So I drop this index and created again. The index size now got reduced to 559 MB.
After this if I ran the EXPLAIN(ANALYZE,BUFFERS) for this query it was using the index and took only 5 secs.
Can you please explain how the index size got reduced after recreating it and how the query started using the index after recreating?
I wanted to query top 20 rows by joining two tables, one table having around 1 lac rows and other table having 5 lac rows. Since I am using ORDER BY in the query so I created compound index with the columns being used in ORDER BY. Initially index size was 939 MB.
Then I ran EXPLAIN(ANALYZE,BUFFERS) for this query which took around 20 secs as it was not using the compound index for this query. So I drop this index and created again. The index size now got reduced to 559 MB.
After this if I ran the EXPLAIN(ANALYZE,BUFFERS) for this query it was using the index and took only 5 secs.
Can you please explain how the index size got reduced after recreating it and how the query started using the index after recreating?
Thanks and Regards
Subramaniam