KinoSearch::Search::PoUseraContributed PerlKinoSearch::Search::PolySearcher(3)NAMEKinoSearch::Search::PolySearcher - Aggregate results from multiple
Searchers.
SYNOPSIS
my $schema = MySchema->new;
for my $server_name (@server_names) {
push @searchers, KSx::Remote::SearchClient->new(
peer_address => "$server_name:$port",
password => $pass,
schema => $schema,
);
}
my $poly_searcher = KinoSearch::Search::PolySearcher->new(
schema => $schema,
searchers => \@searchers,
);
my $hits = $poly_searcher->hits( query => $query );
DESCRIPTION
The primary use for PolySearcher is to aggregate results from several
remote Searchers via KSx::Remote::SearchClient, diffusing the cost of
searching a large corpus over multiple machines. It is also possible
to aggregate results from multiple Searchers on a single machine.
CONSTRUCTORS
new( [labeled params] )
my $poly_searcher = KinoSearch::Search::PolySearcher->new(
schema => $schema,
searchers => \@searchers,
);
· schema - A Schema.
· searchers - An array of Searchers.
METHODS
hits( [labeled params] )
Return a Hits object containing the top results.
· query - Either a Query object or a query string.
· offset - The number of most-relevant hits to discard, typically
used when "paging" through hits N at a time. Setting "offset" to
20 and "num_wanted" to 10 retrieves hits 21-30, assuming that 30
hits can be found.
· num_wanted - The number of hits you would like to see after
"offset" is taken into account.
· sort_spec - A KinoSearch::Search::SortSpec, which will affect how
results are ranked and returned.
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.
doc_freq( [labeled params] )
Return the number of documents which contain the term in the given
field.
· field - Field name.
· term - The term to look up.
fetch_doc(doc_id)
Retrieve a document. Throws an error if the doc id is out of range.
· doc_id - A document id.
get_schema()
Accessor for the object's "schema" member.
INHERITANCEKinoSearch::Search::PolySearcher isa KinoSearch::Search::Searcher isa
KinoSearch::Object::Obj.
COPYRIGHT AND LICENSE
Copyright 2005-2010 Marvin Humphrey
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
perl v5.14.12011-06-2KinoSearch::Search::PolySearcher(3)