Marvin Humphrey > KinoSearch-0.30_03 > KinoSearch::Index::DataWriter

Download:
KinoSearch-0.30_03.tar.gz

Annotate this POD

CPAN RT

Open  7
View Bugs
Report a bug
Source   Latest Release: KinoSearch-0.30_07

NAME ^

KinoSearch::Index::DataWriter - Write data to an index.

SYNOPSIS ^

    # Abstract base class.

DESCRIPTION ^

DataWriter is an abstract base class for writing index data, generally in segment-sized chunks. Each component of an index -- e.g. stored fields, lexicon, postings, deletions -- is represented by a DataWriter/DataReader pair.

Components may be specified per index by subclassing Architecture.

CONSTRUCTORS ^

new( [labeled params] )

    my $writer = MyDataWriter->new(
        snapshot   => $snapshot,      # required
        segment    => $segment,       # required
        polyreader => $polyreader,    # required
    );

METHODS ^

merge_segment( [labeled params] )

Move content from an existing segment into the one currently being written.

The default implementation calls add_segment() then delete_segment().

metadata()

Arbitrary metadata to be serialized and stored by the Segment. The default implementation supplies a Hash with a single key-value pair for "format".

get_snapshot()

Accessor for "snapshot" member var.

get_segment()

Accessor for "segment" member var.

get_polyreader()

Accessor for "polyreader" member var.

get_schema()

Accessor for "schema" member var.

get_folder()

Accessor for "folder" member var.

ABSTRACT METHODS ^

add_inverted_doc( [labeled params] )

Process a document, previously inverted by inverter.

add_segment( [labeled params] )

Add content from an existing segment into the one currently being written.

delete_segment(reader)

Remove a segment's data.

finish()

Complete the segment: close all streams, store metadata, etc.

format()

Every writer must specify a file format revision number, which should increment each time the format changes. Responsibility for revision checking is left to the companion DataReader.

INHERITANCE ^

KinoSearch::Index::DataWriter isa KinoSearch::Obj.

COPYRIGHT ^

Copyright 2005-2009 Marvin Humphrey

LICENSE, DISCLAIMER, BUGS, etc. ^

See KinoSearch version 0.30.