La base de données vectorielle Qdrant connaît une période de stabilisation et d’amélioration significative de ses performances. Cette startup, initialement fondée à Berlin en 2021 et maintenant basée à New York, s’est récemment distinguée sur la scène de l’IA générative. Qdrant développe et propose une base de données et un moteur de recherche vectorielle open source, codés en Rust. Ayant réussi à lever 37,8 millions de dollars, elle est devenue une référence pour les ingénieurs développant des applications de type RAG (Recherche de Réponses Automatisées). Cependant, malgré ses avancées, les entreprises privilégient souvent leurs fournisseurs habituels tels que MongoDB, Elastic, Oracle, Google Cloud ou AWS, jugeant que les SGBD spécialisés comme Qdrant ne sont pas encore prêts pour une production à grande échelle.
Remplacement de RocksDB par un moteur de stockage maison
L’une des initiatives les plus notables de Qdrant dans sa quête de stabilité et de performance est l’abandon de RocksDB au profit d’un moteur de stockage développé en interne. RocksDB, une technologie initialement développée par Meta et largement adoptée grâce à sa capacité à gérer des lectures et écritures aléatoires, se révélait insuffisante pour les besoins spécifiques de Qdrant. Les ingénieurs de la startup ont identifié un problème critique lié au processus de compactage des données sur disque, générant des pics de latence aléatoires et des erreurs de temporisation lors de charges d’écriture élevées.
Pour remédier à ces goulets d’étranglement, Qdrant a mis au point un backend de stockage optimisé pour la gestion de vecteurs. Ce backend est divisé en quatre couches séparées : la Data Layer, la Mask Layer, la Region Layer et la Tracker Layer, chacune jouant un rôle précis pour assurer des performances constantes et éviter les ralentissements observés avec RocksDB. Cette approche permet à Qdrant de mieux contrôler le flux de données et de garantir une stabilité accrue, essentielle pour les applications critiques. En abandonnant RocksDB pour un moteur de stockage mieux adapté à ses besoins, Qdrant affiche une volonté d’innover et de se détacher des solutions génériques au profit d’optimisations sur mesure.
Compression du graphe de vecteurs
Une autre amélioration majeure concerne la réduction de l’empreinte mémoire des vecteurs, essentielle pour rendre la technologie plus viable à grande échelle. Qdrant a adopté une technique de compression nommée « encodage Delta » pour son implémentation de l’algorithme Hierarchical Navigable Small Worlds (HNSW). Contrairement aux méthodes de décompression traditionnelles comme lz4 ou gzip, l’encodage Delta permet de compresser les données en ne stockant que les différences entre les valeurs successives, réduisant ainsi l’utilisation des ressources CPU. Cette approche a permis à la startup de réduire de 30 % l’empreinte mémoire de son graphe HNSW, sans affecter notablement les performances globales.
De plus, Qdrant a ajouté la capacité de filtrer les vecteurs par noms, offrant une flexibilité accrue pour le tri de collections de vecteurs comprenant différents types de données, comme des images et du texte. Ces améliorations rendent la technologie plus adaptable et efficace pour une variété d’applications. En réduisant l’empreinte mémoire et en optimisant l’utilisation des ressources, Qdrant se positionne comme une solution prometteuse pour les entreprises cherchant à intégrer des bases de données vectorielles à grande échelle.
Prise en charge des GPU pour accélérer l’indexation
L’indexation est un autre domaine où Qdrant innove pour améliorer ses performances. Dans des scénarios de recherche sémantique où la mise à jour fréquente des bases de connaissances est cruciale, la rapidité de l’indexation devient un facteur déterminant. Qdrant a donc introduit l’indexation via GPU, basée sur l’API Vulkan, compatible avec les GPU de Nvidia, AMD et Intel. Les GPU, particulièrement adaptés au calcul vectoriel, permettent une accélération significative des processus d’indexation.
Selon Qdrant, cette méthode permet d’obtenir des vitesses d’indexation jusqu’à dix fois supérieures par rapport à celles basées sur le CPU, pour un coût matériel similaire. Toutefois, des tests montrent que l’augmentation des performances n’est pas toujours proportionnelle au coût, suggérant une amélioration de cinq fois la rapidité pour un budget 2,7 fois supérieur avec une carte Nvidia T4 comparée à une instance CPU de huit cœurs. Cette innovation offre des perspectives intéressantes pour les entreprises nécessitant des mises à jour rapides et fréquentes de leurs bases de données. En exploitant les capacités des GPU, Qdrant met en avant une solution pionnière pour répondre aux exigences accrues des applications modernes en IA et en recherche sémantique.
Modes de Protection et Optimisations
Pour assurer une stabilité maximale et éviter les perturbations causées par des « voisins bruyants » (une situation où des charges de travail concurrentes impactent les ressources mutualisées dans une architecture multi-tenant), Qdrant propose un mode « strict ». Ce mode limite les opérations intensives telles que le filtrage non indexé et la taille des lots pour prévenir les surcharges du système. Des mesures de protection supplémentaires, comme des restrictions sur la taille des données et des délais d’exécution, garantissent des performances optimales même pour des applications exigeantes.
Ces initiatives démontrent la volonté de Qdrant de s’affirmer comme un acteur sérieux et viable dans le domaine des bases de données vectorielles, en répondant aux besoins spécifiques des entreprises et en optimisant des processus clés pour des performances accrues. Les améliorations spécifiques, telles que la réduction de l’empreinte mémoire et l’accélération de l’indexation, mettent Qdrant en position favorable pour concurrencer les solutions traditionnelles tout en offrant des capacités adaptées aux applications modernes de l’IA et de la recherche sémantique. La stratégie de Qdrant repose sur une compréhension fine des besoins techniques des applications modernes et sur la mise en œuvre de solutions spécifiques pour répondre à ces nécessités.
Cohésion et Vue d’Ensemble
Qdrant, en se dotant de ces nouveaux outils et en peaufinant ses mécanismes internes, s’efforce de répondre aux défis posés par la croissance rapide des volumes de données et la complexité accrue des opérations de recherche et de gestion des vecteurs. Ses choix technologiques, bien que nécessitant des ajustements et des validations additionnelles, montrent une orientation vers la performance et la scalabilité, éléments indispensables pour une adoption large et durable dans les secteurs de l’IA et de la recherche. En conclusion, la démarche de Qdrant constitue un exemple de l’évolution rapide et nécessaire des bases de données vectorielles pour s’adapter aux besoins contemporains des entreprises. Les mesures prises pour surmonter les limitations de technologies existantes et les innovations apportées témoignent d’une volonté claire de s’imposer comme une solution de choix pour les développeurs et ingénieurs en quête de performances efficaces et stables à grande échelle.