Re: Performant queries on table with many boolean columns - Mailing list pgsql-performance

From Teodor Sigaev
Subject Re: Performant queries on table with many boolean columns
Date
Msg-id 5718A59D.4090706@sigaev.ru
Whole thread Raw
In response to Re: Performant queries on table with many boolean columns  ("David G. Johnston" <david.g.johnston@gmail.com>)
Responses Re: Performant queries on table with many boolean columns
List pgsql-performance
>     looks like a deal for contrib/bloom index in upcoming 9.6 release
> ​Curious, it doesn't look like it will work with booleans out of the box.
> http://www.postgresql.org/docs/devel/static/bloom.html

There is no rocket science here:
# create table x (v bool);
# create index i on x using bloom ((v::int4));
# set enable_seqscan=off; --because of empty table
# explain select * from x where v::int4 = 1;
                             QUERY PLAN
------------------------------------------------------------------
  Bitmap Heap Scan on x  (cost=25.08..35.67 rows=14 width=1)
    Recheck Cond: ((v)::integer = 1)
    ->  Bitmap Index Scan on i  (cost=0.00..25.07 rows=14 width=0)
          Index Cond: ((v)::integer = 1)

Or cast it to "char" type (with quoting!)

--
Teodor Sigaev                                   E-mail: teodor@sigaev.ru
                                                    WWW: http://www.sigaev.ru/


pgsql-performance by date:

Previous
From: "Sven Kerkling"
Date:
Subject: Performance problems with postgres and null Values?
Next
From: "David G. Johnston"
Date:
Subject: Re: Performant queries on table with many boolean columns