Search Postgresql Archives

Re: Gin indexes on intarray is fast when value in array does not exists, and slow, when value exists

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 8, 2016 at 9:43 AM, otar shavadze <oshavadze@xxxxxxxxx> wrote:
I have table with 500 000 rows, I have int[] column "my_array" in this table, this array column contains minimum 1 and maximum 5 different values.

I have GIN index on my_array column:

 "CREATE INDEX idx ON table_name USING GIN(my_array gin__int_ops)"

Then I use this query: "SELECT * FROM  table_name WHERE my_array @> '{3}'::integer[]  ORDER BY id LIMIT 50"

Execution time of this query is approximately 500-1000 ms. Then if I drop gin index "idx", query works extremely fast, less than 20 ms.

Please post the information requested here: https://wiki.postgresql.org/wiki/Slow_Query_Questions

Also, can you show, 

select * from pg_stats where tablename ='table_name' and attname='my_array' \x\g\x

Cheers,

Jeff

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux