Hello,
I’m a new user of Ferret, so this might be a silly question. I was
wondering, where can I find details about search memory usage? I read
the O’Reilly booklet + googled but couldn’t find much info. There is
a good explanation of how memory is used at indexing time [bound by,
amongst other things, :max_buffer_memory and :max_buffered_docs]. But
how does it work at search time - do the same options apply?
Will parts of the index be cached as they are accessed? How about
search results, do they get cached until :max_buffer_memory and/or
:max_buffered_docs is reached? I understand that the OS will perform
page caching - but that is beyond my control. I’m more interested in
Ferret’s memory behavior.
In case it matters, this is because I’m building a server task that
searches across many indexes. Ideally, the most used indexes will
remain cached in memory. When a request comes in for an index not
already in memory, I’ll swap out the least recently used index and
replace it with one that can satisfy the incoming request. I’m bound
by how much memory I can use [this is a 32bit task], and so it would
be good if I can bound each index’s memory usage as well.
Thanks in advance for any info,
-rr-