Heikki Linnakangas wrote:
>> * GIT (Grouped Index Tuple) indexes, which achieve index space savings
>> in btrees by having a single index tuple represent multiple heap tuples
>> [...]
>> Another issue is that we'd need to check how much of the use-case for
>> GIT has been taken over by HOT.
>
> There is, however, a ton of overlap with index-only scans, and the
> possibility to return keys from indexes, as you pointed out.
One use case that I think GIT would help a lot with are my
large address tables that are clustered by zip-code but
often queried by State, City, County, School District,
Police Beat, etc.
I imagine a GIT index on "state" would just occupy
a couple pages at most regardless of how large the
table gets. And likewise, even an index on City
would be orders of magnitude smaller than the existing
ones; since all records for any given city are all
on the same few disk pages.
Or am I misunderstanding how GIT works.