NAME

Hailo::Storage::DBD::SQLite - A storage backend for Hailo using DBD::SQLite

SYNOPSIS

As a module:

my $hailo = Hailo->new( train_file => 'hailo.trn', storage_class => 'SQLite', storage_args => { cache_size > 102400, # 100MB page cache }, );

From the command line:

hailo --train hailo.trn --storage SQLite --storage-args cache_size=102400

See Hailo's documentation for other non-MySQL specific options.

DESCRIPTION

This backend maintains information in an SQLite database. It is the default storage backend.

For some example numbers, I have a 2nd-order database built from a ~210k line (7.4MB) IRC channel log file. With the default "storage_args" in cache_size, it took my laptop (Core 2 Duo 2.53 GHz, Intel X25-M hard drive) 8 minutes and 20 seconds (~420 lines/sec) to create the 102MB database. Furthermore, it could generate about 90 replies per second from it.

ATTRIBUTES

storage_args

This is a hash reference which can have the following keys:

'cache_size', the size of the page cache used by SQLite. See SQLite's documentation for more information. Setting this value higher than the default can be beneficial, especially when disk IO is slow on your machine.

AUTHOR

Ævar Arnfjörð Bjarmason <avar@cpan.org>

Hinrik Örn Sigurðsson, hinrik.sig@gmail.com

LICENSE AND COPYRIGHT

Copyright 2010 Ævar Arnfjörð Bjarmason and Hinrik Örn Sigurðsson

This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself.