:: EGOTHOR

Chapter 1. Architecture

Table of Contents

Design
Notes
Parser

Design

Terminology. 

  • A Document is a tree structure of fields (FTField) which can be indexed. A Document also contains a flat structure of fields which are not indexed. These fields will be called metadata (DocMetadata).

  • A Barrel is a standalone fulltext index that cannot be modified except by denoting documents as removed. A Barrel that is constructed for n document(s) is termed a "barrel of size n".

  • A BarrelReader can decompose the Barrel structure to its core structures (see below).

  • A BarrelReader can be made persistent by use of a BarrelWriter. The final product is a Barrel.

  • A Tanker is the dynamic version of a Barrel.

  • A Flotilla is a set of Tankers.

Example 1.1. Barrel, BarrelReader, BarrelWriter

Speaking trivially, any document can be transformed to a Barrel (of size 1) or directly to a BarrelReader. That structure can be stored to disc or pipe or even a network socket by a BarrelWriter.

A Tanker uses an array to store references to its Barrels. When the array is full, or the Tanker thinks that it would be helpful to execute the reorganization process, the process is started and some of the Barrels are merged (which Barrels those are depends on the algorithm (dynamizer) used to process the merger) to a new Barrel. The original (source) Barrels are then replaced by the newly produced Barrel.

Prev Up Next
The Theory Behind ::egothor Home Notes
© 2003-2004 Egothor Developers