GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
KinoSearch1::Searcher(3) User Contributed Perl Documentation KinoSearch1::Searcher(3)

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.

  • invindex - can be either a path to an invindex, or a KinoSearch1::Store::InvIndex object.
  • analyzer - An object which subclasses KinoSearch1::Analysis::Analyer, such as a PolyAnalyzer. This must be identical to the Analyzer used at index-time, or the results won't match up.
    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.

  • query - Can be either an object which subclasses KinoSearch1::Search::Query, or a query string. If it's a query string, it will be parsed using a QueryParser and a search will be performed against all indexed fields in the invindex. For more sophisticated searching, supply Query objects, such as TermQuery and BooleanQuery.
  • filter - Must be a KinoSearch1::Search::QueryFilter. Search results will be limited to only those documents which pass through the filter.

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.
2022-04-08 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.