Payload indexing #646
Replies: 1 comment 4 replies
-
The first thing I notice in the info - Other possible reasons for the observed speed are related to query planning and approaches to combining vector & scalar searches. In the first step, the query planner tries to estimate what would be the cardinality of the filtering condition (how many points satisfy the given criteria). If the expected cardinality is too high (above the threshold), the query planner will decide to use the vector index. In this case, search speed should be comparable with regular HNSW retrieval and no filters. If the expected cardinality is below the threshold - the query planner will attempt to retrieve points from ids first and vector-based reranking later. Retrieving ids from the index is, on its own, might go with several different scenarios. If a condition on the indexed field could be used to select most of the points, the query planner would prefer to use it and filter out the rest of the points using all other conditions. Unfortunately, it is not always possible to detect this primary condition in the query, so some changes in query structure might help if it is the case. Additionally, in the next release of Qdrant there will be a significant improvement in a filtering speed: #461 Overall, there are several opportunities to improve the performance, but it would require some additional examination of the data and queries you have. |
Beta Was this translation helpful? Give feedback.
-
Hi,
my question regarding payload fields index, it's seems like in certain scenarios it's does not improve ANN search time with given set of filters.
Here's a vector collection data, respective payload schema and NHSW config,
I've made a simple experiment to compare response time of collection with and without payload attributes index and have not seen any difference. Requests are sent through
collections/{collection_name}/points/search
method, about 20 additional filters were included, response is limited to 2048 objects without vectors and with some of payload fields.Any feedback on this behaviour would be appreciated,
@generall @orsk-moscow
Best regards,
Alexey, компания Звук
Beta Was this translation helpful? Give feedback.
All reactions