Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9012189
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 16, 20262026-06-16T02:56:02+00:00 2026-06-16T02:56:02+00:00

I have a Lucene.net index with 10 fields, some stored and some indexed, with

  • 0

I have a Lucene.net index with 10 fields, some stored and some indexed, with 460 million documents. The index is about 250GB. I’m using Lucene.net 3.0.3 and every time I do a search I easily eat up 2GB+ in RAM, which causes my 32 bit application to get out of memory exceptions. I unfortunately cannot run the app as a 64 bit process due to other 32 bit dependencies.

As far as I know I’m following Lucene best practices:

  • One open index writer that writes documents in batches

  • A shared reader that doesn’t close and reopen itself across searches

  • The index searcher has a termInfosIndexDivisor set to 4, which didn’t seem to make a difference. I even tried setting it to something huge like 1000 but didn’t notice any memory changes.

  • Fields that do not need to be subsearched aren’t analyzed (i.e. full string searching only) and fields that don’t need to be retrieved back from the search aren’t stored.

  • I’m using the default StandardAnalyzer for both indexing and searching.

  • If I prune the data and make a smaller index, then things do work. When I have an index that is around 50GB in size I can search it with only about 600MB of RAM

However, I do have a sort applied on one of the fields, but even without the sort the memory usage is huge for any search. I don’t particularly care about document score, more that the document exists in my index, but I’m not sure if somehow ignoring the score calculation will help with the memory usage.

I recently upgraded from Lucene.net 2.9.4 to Lucene.net 3.0.3 thinking that that might help, but the memory usage looks about the same between the two versions.

Frankly I’m not sure if this index is just too large for a single machine to feasbily search or not. Most examples I find talk about indexes 20-30GB in size or less so maybe this isn’t possible, but I wanted to at least ask.

If anyone has any suggestions on what I can do to make this useable that would be great. I am willing to sacrifice search speed for memory usage if possible.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-16T02:56:03+00:00Added an answer on June 16, 2026 at 2:56 am

    You CAN run the app in 64 bit – make a separate process for the lucene part, use remoting to communicate with it (or WCF). Finished. Standard Approach.

    You think about Splitting it already, so heck, Isolate it and put it on 64 bit.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a single XML file that I want to index using Lucene.NET. The
All of my Lucene.net (2.9.2) documents have two fields: categoryid bodytext bodytext is the
I have a Lucene.net index where one of the fields receives many entries that
I have a Lucene indexed corpus of more than 1 million documents. I am
I have a Lucene index that contains documents that have a type field, this
I have some code using Lucene that leaves the default conjunction operator as OR,
I have built a Lucene.net index of books. All is working well but I
I want to find the top 1000 documents in a Lucene.NET index that match
I have a fairly large Lucene.net index (created with the latest version - 2.9).
I use Lucene.net to index content and documents etc.. on our CMS. This has

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.