I don't understand how the search indexer consumes so much resources, I was able to make something faster by following the ntfs journal and just keeping a full listing of files in sqlite.
For me it has maybe a 10% success rate for searching strings within files. Yet it takes minutes to search for file names even when spelled exactly. Finding files by name is the primary use-case, maybe optimize for that first.