public class MappedDataStoreFactory extends Object implements DataStoreFactory
Builder for a data store that is backed by a java.nio.MappedByteBuffer. This has a limitation that the total size of the mapped buffer and therefore the hash table can not exceed 2 gigs.
The data store file has the following structure.
 file: header, hash table, nameArray, nameTable, hitTable
 header:
   int hashTablePos, // byte offset in file
   int hitTablePos,  // byte offset in file
   int nameArrayPos, // byte offset in file
   int nameTablePos, // byte offset in file
   int wordLength,
   int serializedPackingLength,
   byte[] serializedPacking
   hash table:
     int hashTableLength,
     int[hashTableLength] hits // index into hitTable
  nameArray:
    int nameArrayLength,
    int[nameArrayLength] nameArray // byte offset into nameTable
  nameTable:
    int nameTableSize, // size in bytes
    (short nameLength, char[nameLength] name)[nameTableSize] names
  hitTable:
    int hitTableSize, // size in bytes
    hitTableRecord[hitTableSize] hits
  hitTableRecord:
    int hitCount,
    hitRecord[hitCount] hit
  hit:
    int seqIndex, // index into nameArray
    int offset    // offset into the sequence
 
 | Constructor and Description | 
|---|
| MappedDataStoreFactory() | 
| Modifier and Type | Method and Description | 
|---|---|
| DataStore | buildDataStore(File storeFile,
                            SequenceDB seqDB,
                            Packing packing,
                            int wordLength,
                            int threshold)Build a new DataStore. | 
| DataStore | getDataStore(File storeFile)Get a pre-built data store associated with a file. | 
public MappedDataStoreFactory()
public DataStore getDataStore(File storeFile) throws IOException
DataStoreFactorygetDataStore in interface DataStoreFactorystoreFile - the File to map in as a data storeIOException - if the file could not be mappedpublic DataStore buildDataStore(File storeFile, SequenceDB seqDB, Packing packing, int wordLength, int threshold) throws IllegalAlphabetException, IOException, BioException
DataStoreFactorybuildDataStore in interface DataStoreFactorystoreFile - the file to store the data storeseqDB - the SequenceDB to store in the data storepacking - the Packing used to bit-encode the sequenceswordLength - the number of symbols per wordthreshold - the number of times a word must appear to be ignoredIllegalAlphabetException - if the packing does not agree with
         the sequencesBioException - if there is a problem building the data storeIOExceptionCopyright © 2014 BioJava. All rights reserved.