This script loads a Bio::DB::GFF database with the features contained in a list of GFF files and/or FASTA
sequence files. You must use the exact variant of GFF described in Bio::DB::GFF. Various command-line
options allow you to control which database to load and whether to allow an existing database to be
overwritten.
This script is similar to load_gff.pl, but is much faster. However, it is hard-coded to use MySQL and
probably only works on Unix platforms due to its reliance on pipes. See bp_load_gff.pl for an
incremental loader that works with all databases supported by Bio::DB::GFF, and bp_bulk_load_gff.pl for a
fast MySQL loader that supports all platforms.
NOTES
If the filename is given as "-" then the input is taken from standard input. Compressed files (.gz, .Z,
.bz2) are automatically uncompressed.
FASTA format files are distinguished from GFF files by their filename extensions. Files ending in .fa,
.fasta, .fast, .seq, .dna and their uppercase variants are treated as FASTA files. Everything else is
treated as a GFF file. If you wish to load -fasta files from STDIN, then use the -f command-line swith
with an argument of '-', as in
gunzip my_data.fa.gz | bp_fast_load_gff.pl -d test -f -
The nature of the load requires that the database be on the local machine and that the indicated user
have the "file" privilege to load the tables and have enough room in /usr/tmp (or whatever is specified
by the \$TMPDIR environment variable), to hold the tables transiently. If your MySQL is version 3.22.6
and was compiled using the "load local file" option, then you may be able to load remote databases with
local data using the --local option.
About maxfeature: the default value is 100,000,000 bases. If you have features that are close to or
greater that 100Mb in length, then the value of maxfeature should be increased to 1,000,000,000. This
value must be a power of 10.
If the list of GFF or fasta files exceeds the kernel limit for the maximum number of command-line
arguments, use the --long_list /path/to/files option.
The adaptor used is dbi::mysqlopt. There is currently no way to change this.