The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Plucene::Index::Writer - write an index.

SYNOPSIS

        my $writer = Plucene::Index::Writer->new($path, $analyser, $create);

        $writer->add_document($doc);
        $writer->add_indexes(@dirs);

        $writer->optimize; # called before close
        
        my $doc_count = $writer->doc_count;

DESCRIPTION

This is the writer class.

If an index will not have more documents added for a while and optimal search performance is desired, then the optimize method should be called before the index is closed.

METHODS

new

        my $writer = Plucene::Index::Writer->new($path, $analyser, $create);

This will create a new Plucene::Index::Writer object.

The third argument to the constructor determines whether a new index is created, or whether an existing index is opened for the addition of new documents.

doc_count

        my $doc_count = $writer->doc_count;

add_document

        $writer->add_document($doc);
        

optimize

        $writer->optimize;

Merges all segments together into a single segment, optimizing an index for search.

add_indexes

        $writer->add_indexes(@dirs);

Merges all segments from an array of indexes into this index.

This may be used to parallelize batch indexing. A large document collection can be broken into sub-collections. Each sub-collection can be indexed in parallel, on a different thread, process or machine. The complete index can then be created by merging sub-collection indexes with this method.

After this completes, the index is optimized.