1) there are 2 fields - varchar 'text' and int 'value'. An index has been created for them:
CREATE INDEX idx_index_value_and_text ON index_test (value, text)
Writing:
select * from index_test r where r.text = 'some value'
The analyzer says:
Index Scan using idx_index_value_and_text on index_test
Question: how can he search by index if the first column is not specified? In terms of B-Tree - what is a composite index: a single tree, the values of the nodes of which are concatenation of the rows of values of the fields it contains?
2) This search, depending on the distribution of column values, has different types: Bitmap Heap Scan and Bitmap Index Scan, or Index Scan if the distribution is sufficiently even. What do Bitmap-types mean, how does Bitmap Index Scan differ from Index Scan? Also, is there Postgres Index Range Scan?