KinoSearch1::Searcher - execute searches
my $analyzer = KinoSearch1::Analysis::PolyAnalyzer->new( language => 'en', ); my $searcher = KinoSearch1::Searcher->new( invindex => $invindex, analyzer => $analyzer, ); my $hits = $searcher->search( query => 'foo bar' );
Use the Searcher class to perform queries against an invindex.
my $searcher = KinoSearch1::Searcher->new( invindex => $invindex, analyzer => $analyzer, );
Constructor. Takes two labeled parameters, both of which are required.
my $hits = $searcher->search( query => $query, # required filter => $filter, # default: undef (no filtering) );
Process a search and return a Hits object. search() expects labeled hash-style parameters.
When a Searcher is created, a small portion of the invindex is loaded into memory. For large document collections, this startup time may become noticeable, in which case reusing the searcher is likely to speed up your search application. Caching a Searcher is especially helpful when running a high-activity app under mod_perl.
Searcher objects always represent a snapshot of an invindex as it existed when the Searcher was created. If you want the search results to reflect modifications to an invindex, you must create a new Searcher after the update process completes.
Copyright 2005-2010 Marvin Humphrey
See KinoSearch1 version 1.01.