There is a constructor in the RAMDirectory that already does that. http://lucene.apache.org/java/2_2_0/api/org/apache/lucene/store/RAMDirectory.html
I don't think that worth modify the internal Lucene's code to achieve a extra bit of performance... What would you do on next version? Modify it again? On Nov 27, 2007 11:36 AM, Haroldo Nascimento <[EMAIL PROTECTED]> wrote: > You can serialize this object RAMDirectory em disk. When start the > application , it read the file .ser and load the object in memory. > The time of load of file .ser is much fast. > You need change any classes of Lucece: Add the "implements Serialzable" in > any classes. > > > > > On Nov 27, 2007 4:28 AM, Chhabra, Kapil <[EMAIL PROTECTED]> wrote: > > > > one can improve search performance by using a RAMDirectory created > > from an underlying FSDirectory using one of the parameterised > > constructors. Is this correct? > > Absolutly > > > > > Will a FSDirectory not automatically load the index into memory > > provided enough RAM is available? > > Not all index files are loaded in the RAM if you are using the > > FSDirectory. Though at the same time, queries are cached. > > > > > Do I have to explicitly use a RAMDirectory? > > If you want to load the comeplte index in the memory, yes. This increase > > the performance a lot as it drastically reduces the number of disk IO. > > Obviously at the cost of the RAM. If you have enough RAM available to > > accommodate the complete index, you can go ahead with this. > > > > Regards, > > kapilChhabra > > > > -----Original Message----- > > From: Hardy Ferentschik [mailto:[EMAIL PROTECTED] > > Sent: Tuesday, November 27, 2007 12:25 PM > > To: java-user@lucene.apache.org > > Subject: RAMDirectory vs FSDirectory > > > > Hi there, > > > > I am using currently a FSDirectory to build my index. The reason for > > using a file system based index is that a full index rebuild takes > > around 30 minutes and I want to keep a persistent index. > > In 'Lucene in Action' I've read that one can improve search performance > > by using a RAMDirectory created from an underlying FSDirectory using one > > of the parameterised constructors. Is this correct? Will a FSDirectory > > not automatically load the index into memory provided enough RAM is > > available? > > Do I have to explicitly use a RAMDirectory? > > > > --Hardy > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]