Introduction

When matching a really large set of descriptors by classical brute-force matching, it is impossible to get a low latency with a high number of requests per second. Therefore, it is required to use approximation techniques that exchange some accuracy for massive speed. These techniques speed up the matching by preprocessing the data into an efficient index.

Luna Index Module (LIM) is designed to build efficient indices on a set of descriptors and perform matching on it. LIM consists of following components:

LIM has the following applicability limitations:

  1. Index becomes outdated as soon as the new objects are actively created (or deleted) in the Luna Platform

  2. Index building is quite slow process, so it is not supposed to be done frequently

  3. Index building takes a lot of resources for a long time

  4. Matcher still searches against the outdated version of the index until it is rebuild