Domanda

So che questa domanda è stata chiesta ancora e ancora in Stackoverflow e Google, ma scopro che tutte le risposte non possono soddisfarmi.La maggior parte delle soluzioni supporta che l'intero indice può adattarsi in memoria, allora possiamo memorizzarlo sul disco con serializzazione Java.Quando è necessario l'indice, dobbiamo caricare l'intero indice nella memoria.Soluzioni come questa: Soluzione 1 , Soluzione 2 .Ma come sappiamo, questa ipotesi non è sempre vera, quindi cosa dovrei fare per memorizzare l'indice del documento invertito sul disco quando non si adatta alla memoria?

Lo apprezzerò se puoi darmi la soluzione in Java.

È stato utile?

Soluzione

Proverei jdbm3 Questo supporta le collezioni Tree e Hash e l'unico requisito è che ogni tasto o voceadattarsi alla memoria.

Se hai voci super grandi, suggerisco di memorizzare ciascuno come file che possono essere mappati in memoria per estrarre porzioni dei dati.Nella tabella di ricerca è possibile memorizzare i tasti per i nomi dei file.(O effettuare i file dei file i tasti)

Altri suggerimenti

Un aggiornamento dopo alcuni anni.

JDBM3 non è più supportato. Mapdb è la sua sostituzione. Ha diversi maggio per memorizzare dati (mappe di memoria, ecc ...) che soddisfano il tuo requisito.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top