kaxil commented on PR #42376:
URL: https://github.com/apache/airflow/pull/42376#issuecomment-2448318329

   
   
   I was reading about what the recommendation is around Multi-column indexes 
vs single -- and looks like it isn't as simple as I had initially thought that 
the multi-column index with a leading column can remove the need of a separate 
index in all cases!
   
   From https://www.postgresql.org/docs/current/indexes-bitmap-scans.html:
   >In all but the simplest applications, there are various combinations of 
indexes that might be useful, and the database developer must make trade-offs 
to decide which indexes to provide. Sometimes multicolumn indexes are best, but 
sometimes it's better to create separate indexes and rely on the 
index-combination feature. For example, if your workload includes a mix of 
queries that sometimes involve only column x, sometimes only column y, and 
sometimes both columns, you might choose to create two separate indexes on x 
and y, relying on index combination to process the queries that use both 
columns. You could also create a multicolumn index on (x, y). This index would 
typically be more efficient than index combination for queries involving both 
columns, but as discussed in [Section 
11.3](https://www.postgresql.org/docs/current/indexes-multicolumn.html), it 
would be almost useless for queries involving only y, so it should not be the 
only index. A combination of the multicolumn index
  and a separate index on y would serve reasonably well. For queries involving 
only x, the multicolumn index could be used, though it would be larger and 
hence slower than an index on x alone. The last alternative is to create all 
three indexes, but this is probably only reasonable if the table is searched 
much more often than it is updated and all three types of query are common. If 
one of the types of query is much less common than the others, you'd probably 
settle for creating just the two indexes that best match the common types.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to