Een vectordatabase kan na compaction andere buren retourneren, omdat dezelfde embeddings mogelijk worden gereorganiseerd in een nieuw gebouwde structuur voor benaderende zoekopdrachten.
Voor een lokale RAG-server ziet de verandering er vaak verdacht uit: er zijn niet bewust opnieuw embeddings gemaakt, maar een bekende zoekopdracht retourneert na onderhoud een iets andere top-k-lijst. Het belangrijkste onderscheid is dat tussen de vectorwaarden en de ANN-index die daarin zoekt. Compaction kan het eerste behouden en tegelijkertijd het tweede opnieuw opbouwen.
Compaction kan meerdere zoeksegmenten vervangen door een nieuwe index
Een vectordatabase verzamelt vaak afzonderlijke segmenten wanneer documenten worden toegevoegd, bijgewerkt en verwijderd. Compaction consolideert deze onderdelen, zodat het systeem minder structuren hoeft te doorzoeken en minder verouderde data hoeft mee te dragen.
Qdrant biedt optimalisaties die zich richten op het aantal en de grootte van segmenten, in plaats van de verzameling te behandelen als één permanent vaste graaf. Wanneer compaction een groter geoptimaliseerd segment maakt, kan de fysieke zoekstructuur opnieuw worden opgebouwd, ook al zijn de logische vectoren ongewijzigd.
Dat onderscheid is belangrijk voor een private RAG-index: de embeddings kunnen voor en na het onderhoud exact dezelfde numerieke waarden hebben, terwijl de benaderende zoekgraaf die ze met elkaar verbindt anders is.
Benaderend zoeken naar dichtstbijzijnde buren is afhankelijk van de graaftopologie
HNSW vergelijkt een zoekopdracht niet met elke vector. Het navigeert door een gelaagde graaf en volgt een beperkte verzameling veelbelovende verbindingen. Daardoor beïnvloedt de route door de graaf welke kandidaten worden onderzocht.
Elasticsearch legt uit dat segmentfusies mogelijk HNSW-grafen opnieuw moeten berekenen. Een opnieuw opgebouwde graaf kan dezelfde vectoren anders met elkaar verbinden, omdat de constructievolgorde, verwijderingsstatus en graafheuristieken invloed hebben op de verbindingen.
Als twee kandidaten zeer vergelijkbare afstanden hebben, kan een kleine verandering in de topologie ervoor zorgen dat de ene kandidaat in de kandidatenverzameling terechtkomt terwijl de andere nooit wordt bezocht. Het resultaat is een andere verzameling benaderende buren, zonder dat het embeddingmodel is gewijzigd.
Zoekparameters bepalen hoeveel van de nieuwe graaf wordt verkend
Na compaction doorzoekt de database mogelijk één grotere graaf in plaats van meerdere kleinere. Dezelfde top-k-aanvraag kan daardoor een ander kandidatenlandschap doorlopen, zelfs wanneer het geconfigureerde zoekbudget ongewijzigd lijkt.
Weaviate documenteert de afweging tussen ef en zoekkwaliteit bij HNSW: een grotere kandidatenlijst verbetert doorgaans de recall, maar vereist meer werk. Rond een rangschikkingsgrens maken geringe zoekinspanningen de resultaten gevoeliger voor de constructie van de graaf.
Een nuttige diagnose is om benaderende resultaten te vergelijken met een zoekopdracht met een hoge ef-waarde of met exact zoeken op een kleine testverzameling. Als de exacte buren stabiel blijven terwijl de ANN-buren veranderen, heeft compaction het ophaalpad gewijzigd en niet de vectoren.
Verwijderingen en updates bepalen welke knooppunten de heropbouw overleven
Voor compaction kunnen verwijderde of vervangen records fysiek nog bestaan, met tombstones of administratie op segmentniveau. Zoekopdrachten filteren deze records eruit, maar hun historische aanwezigheid kan invloed hebben op de graaf die eerder is opgebouwd.
Milvus legt uit dat HNSW naast onbewerkte vectoren een expliciete graafstructuur opslaat. Wanneer de index opnieuw wordt opgebouwd nadat verouderde records zijn verwijderd, ontstaat een graaf op basis van de overgebleven verzameling.
Dat kan de lokale connectiviteit rond een huishoudelijk document veranderen, zelfs als dat document zelf nooit is bewerkt. Een notitie kan een nabijgelegen verbindingsknooppunt krijgen of verliezen, waardoor de ANN-wandeling een ander gebied als eerste bereikt.
Gelijkheden en bijna-gelijkheden kunnen omslaan, zelfs wanneer de afstanden niet veranderen
Veel private corpora bevatten bijna-duplicaten: herhaalde handleidingen, bestanden met verschillende versies, fotobijschriften, gekopieerde notities of tekstfragmenten met dezelfde standaardtekst. Hun cosinus- of inner-product-scores kunnen vrijwel niet van elkaar te onderscheiden zijn.
De HNSW-uitleg van Pinecone laat zien hoe graafnavigatie het aantal onderzochte vectoren beperkt. Wanneer twee items dicht bij de grens liggen, kan een ander kandidaatpad of een andere volgorde bij gelijke scores de geretourneerde top-k veranderen zonder een betekenisvol semantisch verschil.
Toepassingen moeten rang 7 versus rang 8 bij een buur daarom niet behandelen als een blijvende identiteitsclaim. Sla stabiele document-ID's op en vergelijk de werkelijke afstanden wanneer deterministisch gedrag belangrijk is.
Exact zoeken vormt de grens tussen datadrift en ANN-drift
De duidelijkste scheiding ontstaat door een kleine reproduceerbare reeks zoekopdrachten te bewaren en vóór het onderhoud de embeddings, afstandsmaat, exacte top-k, benaderende top-k, indexinstellingen en databaseversie vast te leggen.
De bespreking van veranderingen in het embeddingdomein bij private retrieval door ZimaSpace behandelt een andere foutklasse: de vectorruimte zelf verandert. Compaction moet afzonderlijk worden gediagnosticeerd, omdat het benaderende ophalen kan wijzigen terwijl die ruimte intact blijft.
De gids van ZimaSpace over documentzoekopdrachten en RAG-workflows biedt de toepassingscontext: een stabiele documentidentiteit en evaluatie zijn belangrijk, ook wanneer de ANN-laag benaderend mag zijn.
Als de exacte resultaten veranderen, controleer dan vectoren, filters, normalisatie, metriek of dataversies. Als de exacte resultaten gelijk blijven maar de ANN-resultaten veranderen, ligt de oorzaak bij het opnieuw opbouwen van de index, de zoekinspanning, de afhandeling van gelijke scores of de segmentindeling.
Van compaction wordt daarom niet verwacht dat deze de volgorde van buren in een benaderende index byte voor byte hetzelfde houdt. Voor een deterministische rangschikking zijn striktere zoekinstellingen of regels voor gelijke scores op applicatieniveau nodig.
Veelgestelde vragen
Verandert compaction de embeddingvectoren?
Niet op zichzelf. Normale compaction of het samenvoegen van segmenten reorganiseert de opslag en indexen. Embeddings veranderen alleen als de toepassing opnieuw embeddings maakt, opnieuw kwantiseert, opnieuw normaliseert of de vectorwaarden op een andere manier herschrijft.
Moeten exacte dichtstbijzijnde buren na compaction hetzelfde blijven?
Ja, wanneer de overgebleven vectoren, metriek en numerieke representatie ongewijzigd zijn, afgezien van echte gelijke scores of implementatiedetails met drijvende komma.
Kan het opnieuw opbouwen van HNSW exact dezelfde oude rangschikking reproduceren?
Niet altijd. HNSW is benaderend en de graafconstructie kan gevoelig zijn voor de invoegvolgorde, randomisatie, verwijderingen en implementatiedetails. Voor een exacte rangschikking is een uitputtende of anderszins deterministische vergelijking nodig.
Tech & AI HUB
Meer om te lezen

Runtime-status versus persistente status in Home Assistant: wat moet een herstart overleven?
Home Assistant bewaart niet elke actuele waarde; configuratie, registers, geselecteerde herstelde statussen, geschiedenis en implementatiegegevens spelen verschillende rollen bij het herstarten.

Hoe verifieert Home Assistant lokale en externe sessies?
Lokale en externe Home Assistant-sessies gebruiken hetzelfde identiteitsmodel aan de serverzijde; externe toegang verandert de route en de TLS-grens, niet de kern van de...

Waarom kunnen geschiedenisquery's van Home Assistant trager worden naarmate de Recorder-gegevens groeien?
Groei van de recorder kan de kosten van geschiedenisquery's verhogen wanneer het aangevraagde bereik meer rijen omvat, cachemissers toenemen of opslag- en indexbewerkingen trager...

