Lucy::Search::PolySearcher - Aggregate results from multiple Searchers.
my $schema = MySchema->new; for my $index (@index_paths) { push @searchers, Lucy::Search::IndexSearcher->new( index => $index ); } my $poly_searcher = Lucy::Search::PolySearcher->new( schema => $schema, searchers => \@searchers, ); my $hits = $poly_searcher->hits( query => $query );
The primary use for PolySearcher is to aggregate results from several indexes on a single machine.
my $poly_searcher = Lucy::Search::PolySearcher->new( schema => $schema, searchers => \@searchers, );
Create a new PolySearcher.
schema - A Schema.
searchers - An array of Searchers.
my $int = $poly_searcher->doc_max();
Return the maximum number of docs in the collection represented by the Searcher, which is also the highest possible internal doc id. Documents which have been marked as deleted but not yet purged are included in this count.
my $int = $poly_searcher->doc_freq( field => $field, # required term => $term, # required );
Return the number of documents which contain the term in the given field.
field - Field name.
term - The term to look up.
$poly_searcher->collect( query => $query, # required collector => $collector, # required );
Iterate over hits, feeding them into a Collector.
query - A Query.
collector - A Collector.
my $hit_doc = $poly_searcher->fetch_doc($doc_id);
Retrieve a document. Throws an error if the doc id is out of range.
doc_id - A document id.
Lucy::Search::PolySearcher isa Lucy::Search::Searcher isa Clownfish::Obj.
To install Lucy, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Lucy
CPAN shell
perl -MCPAN -e shell install Lucy
For more information on module installation, please visit the detailed CPAN module installation guide.