Normally, the index files that form dictionaries, inverted
files, record info, etc., are stored in the directory where you run
zebraidx. If you wish to store these, possibly large,
files somewhere else, you must add the register
entry to the zebra.cfg file.
Furthermore, the Zebra system allows its file
structures to span multiple file systems, which is useful for
managing very large databases.
The value of the register setting is a sequence
of tokens. Each token takes the form:
The
dir specifies a directory in which index files
will be stored and the
size specifies the maximum
size of all files in that directory. The Zebra indexer system fills
each directory in the order specified and use the next specified
directories as needed.
The
size is an integer followed by a qualifier
code,
b for bytes,
k for kilobytes.
M for megabytes,
G for gigabytes.
For instance, if you have allocated two disks for your register, and
the first disk is mounted
on /d1 and has 2GB of free space and the
second, mounted on /d2 has 3.6 GB, you could
put this entry in your configuration file:
register: /d1:2G /d2:3600M
|
Note that Zebra does not verify that the amount of space specified is
actually available on the directory (file system) specified - it is
your responsibility to ensure that enough space is available, and that
other applications do not attempt to use the free space. In a large
production system, it is recommended that you allocate one or more
file system exclusively to the Zebra register files.