-
-
16 Apr 2012 21:20:13 UTC
- Distribution: KinoSearch
- Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Issues (5)
- Testers (535 / 132 / 8)
- Kwalitee
Bus factor: 0- 85.27% Coverage
- License: perl_5
- Activity
24 month- Tools
- Download (852.87KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
and 1 contributors- Marvin Humphrey <marvin at rectangular dot com>
- Dependencies
- JSON::XS
- Lingua::Stem::Snowball
- Lingua::StopWords
- Parse::RecDescent
- and possibly others
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
KinoSearch::Plan::Architecture - Configure major components of an index.
DEPRECATED
The KinoSearch code base has been assimilated by the Apache Lucy project. The "KinoSearch" namespace has been deprecated, but development continues under our new name at our new home: http://lucy.apache.org/
SYNOPSIS
package MyArchitecture; use base qw( KinoSearch::Plan::Architecture ); use KSx::Index::ZlibDocWriter; use KSx::Index::ZlibDocReader; sub register_doc_writer { my ( $self, $seg_writer ) = @_; my $doc_writer = KSx::Index::ZlibDocWriter->new( snapshot => $seg_writer->get_snapshot, segment => $seg_writer->get_segment, polyreader => $seg_writer->get_polyreader, ); $seg_writer->register( api => "KinoSearch::Index::DocReader", component => $doc_writer, ); $seg_writer->add_writer($doc_writer); } sub register_doc_reader { my ( $self, $seg_reader ) = @_; my $doc_reader = KSx::Index::ZlibDocReader->new( schema => $seg_reader->get_schema, folder => $seg_reader->get_folder, segments => $seg_reader->get_segments, seg_tick => $seg_reader->get_seg_tick, snapshot => $seg_reader->get_snapshot, ); $seg_reader->register( api => 'KinoSearch::Index::DocReader', component => $doc_reader, ); } package MySchema; use base qw( KinoSearch::Plan::Schema ); sub architecture { shift; return MyArchitecture->new(@_); }
DESCRIPTION
By default, a KinoSearch index consists of several main parts: lexicon, postings, stored documents, deletions, and highlight data. The readers and writers for that data are spawned by Architecture. Each component operates at the segment level; Architecture's factory methods are used to build up SegWriter and SegReader.
CONSTRUCTORS
new()
my $arch = KinoSearch::Plan::Architecture->new;
Constructor. Takes no arguments.
METHODS
register_doc_writer(writer)
Spawn a DataWriter and register() it with the supplied SegWriter, adding it to the SegWriter's writer stack.
writer - A SegWriter.
register_doc_reader(reader)
Spawn a DocReader and register() it with the supplied SegReader.
reader - A SegReader.
INHERITANCE
KinoSearch::Plan::Architecture isa KinoSearch::Object::Obj.
COPYRIGHT AND LICENSE
Copyright 2005-2011 Marvin Humphrey
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Module Install Instructions
To install KSx::Simple, copy and paste the appropriate command in to your terminal.
cpanm KSx::Simple
perl -MCPAN -e shell install KSx::Simple
For more information on module installation, please visit the detailed CPAN module installation guide.