Re: CLUSTER and indisclustered
От | Hannu Krosing |
---|---|
Тема | Re: CLUSTER and indisclustered |
Дата | |
Msg-id | 1028726966.13418.12.camel@taru.tm.ee обсуждение исходный текст |
Ответ на | Re: CLUSTER and indisclustered (Hannu Krosing <hannu@tm.ee>) |
Ответы |
Re: CLUSTER and indisclustered
|
Список | pgsql-hackers |
On Wed, 2002-08-07 at 06:46, Hannu Krosing wrote: > On Wed, 2002-08-07 at 10:12, Tom Lane wrote: > > Curt Sampson <cjs@cynic.net> writes: > > > On Wed, 7 Aug 2002, Tom Lane wrote: > > >> Also, the main downside of this approach is that the bitmap could > > >> get large --- but you could have some logic that causes you to fall > > >> back to plain sequential scan if you get too many index hits. > > > > > Well, what I was thinking of, should the list of TIDs to fetch get too > > > long, was just to break it down in to chunks. > > > > But then you lose the possibility of combining multiple indexes through > > bitmap AND/OR steps, which seems quite interesting to me. If you've > > visited only a part of each index then you can't apply that concept. > > When the tuples are small relative to pagesize, you may get some > "compression" by saving just pages and not the actual tids in the the > bitmap. Now I remembered my original preference for page bitmaps (vs. tuple bitmaps): one can't actually make good use of a bitmap of tuples because there is no fixed tuples/page ratio and thus no way to quickly go from bit position to actual tuple. You mention the same problem but propose a different solution. Using page bitmap, we will at least avoid fetching any unneeded pages - essentially we will have a sequential scan over possibly interesting pages. If we were to use page-bitmap index for something with only a few values like booleans, some insert-time local clustering should be useful, so that TRUEs and FALSEs end up on different pages. But I guess that CLUSTER support for INSERT will not be touched for 7.3 as will real bitmap indexes ;) --------------- Hannu
В списке pgsql-hackers по дате отправления: