Mysql
 sql >> Database >  >> RDS >> Mysql

Crea l'indice Lucene nel database usando JdbcDirectory

Ho creato la mia implementazione JdbcDirectory, anche se farebbe affidamento su JEE6 per sfruttare @Singleton annotazione. Il codice stesso non è troppo banale da incollare in un post di StackOverflow e presenta ancora alcune limitazioni. La parte fondamentale è che non puoi eseguire più operazioni su una singola transazione utilizzando più thread a causa della semantica di blocco del database.

https://github.com/trajano/doxdb/tree/jdbc-directory-example/doxdb-ejb/src/main/java/net/trajano/doxdb/search/lucene

Osservando la tua implementazione, sembra che tu stia conservando anche i "file" eliminati probabilmente perché avrebbe meno frammentazione nell'archivio del database, mentre il mio avevo rimosso il record stesso.

Ho taggato una versione con cui sto lavorando che sembra abbastanza stabile per i miei carichi di prova. Sentiti libero di fare commenti o suggerimenti su di esso.