NAME

KiokuDB::Backend::Files - One file per object backend

SYNOPSIS

    KiokuDB->connect(
        "files:dir=path/to/data",
        serializer => "yaml", # defaults to storable
    );

DESCRIPTION

This backend provides a file based backend using Directory::Transactional to provide ACID semantics.

This is one of the slower backends, and the support for searching is very limited (only a linear scan is supported), but it is suitable for small, simple projects.

ATTRIBUTES

dir

The directory for the backend.

create

If true (defaults to false) the directories will be created at instantiation time.

object_dir

Defaults to all.

root_set_dir

Defaults root.

Root set entries are symlinked into this directory as well.

trie

If true (defaults to false) instead of one flat hierarchy, the files will be put in subdirectories based on their IDs. This is useful if your file system is limited and you have lots of entries in the database.

trie_nybbles

How many hex nybbles to take off of the ID. Defaults to 3, which means up to 4096 subdirectories per directory.

trie_levels

How many subdirectories to use.

Defaults to 2.

VERSION CONTROL

http://github.com/nothingmuch/kiokudb-backend-files

AUTHOR

Yuval Kogman <nothingmuch@woobling.org>

COPYRIGHT

    Copyright (c) 2008, 2009 Yuval Kogman, Infinity Interactive. All
    rights reserved This program is free software; you can redistribute
    it and/or modify it under the same terms as Perl itself.