it.unimi.di.mg4j.index
Class MemoryMappedIndex

java.lang.Object
  extended by it.unimi.di.mg4j.index.Index
      extended by it.unimi.di.mg4j.index.BitStreamIndex
          extended by it.unimi.di.mg4j.index.MemoryMappedIndex
All Implemented Interfaces:
Serializable

public class MemoryMappedIndex
extends BitStreamIndex

A local memory-mapped bitstream index.

Memory-mapped indices are created by mapping the index file into memory using a MappedByteBuffer. The main advantage over an InMemoryIndex is that only the most frequently used parts of the index will be loaded in core memory.

Since:
1.2
Author:
Sebastiano Vigna
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class it.unimi.di.mg4j.index.BitStreamIndex
BitStreamIndex.PropertyKeys
 
Nested classes/interfaces inherited from class it.unimi.di.mg4j.index.Index
Index.EmptyIndexIterator, Index.UriKeys
 
Field Summary
protected  ByteBufferInputStream index
          The byte buffer containing the index.
 
Fields inherited from class it.unimi.di.mg4j.index.BitStreamIndex
bufferSize, countCoding, DEFAULT_BUFFER_SIZE, DEFAULT_FIXED_QUANTUM, DEFAULT_HEIGHT, DEFAULT_QUANTUM, FIXED_POINT_BITS, FIXED_POINT_MULTIPLIER, frequencyCoding, height, offsets, pointerCoding, positionCoding, quantum, readerConstructor
 
Fields inherited from class it.unimi.di.mg4j.index.Index
field, hasCounts, hasPayloads, hasPositions, keyIndex, maxCount, numberOfDocuments, numberOfOccurrences, numberOfPostings, numberOfTerms, payload, prefixMap, properties, singletonSet, sizes, termMap, termProcessor
 
Constructor Summary
MemoryMappedIndex(ByteBufferInputStream index, int numberOfDocuments, int numberOfTerms, long numberOfPostings, long numberOfOccurrences, int maxCount, Payload payload, CompressionFlags.Coding frequencyCoding, CompressionFlags.Coding pointerCoding, CompressionFlags.Coding countCoding, CompressionFlags.Coding positionCoding, int quantum, int height, TermProcessor termProcessor, String field, Properties properties, StringMap<? extends CharSequence> termMap, PrefixMap<? extends CharSequence> prefixMap, IntList sizes, LongList offsets)
           
 
Method Summary
 InputBitStream getInputBitStream(int bufferSizeUnused)
          Returns an input bit stream over the index.
 ByteBufferInputStream getInputStream()
          Returns an input stream over the index.
 
Methods inherited from class it.unimi.di.mg4j.index.BitStreamIndex
featureName, gaussianGolombModulus, getConstructor, getReader, golombModulus, quantumSigma, toString
 
Methods inherited from class it.unimi.di.mg4j.index.Index
documents, documents, documents, getEmptyIndexIterator, getEmptyIndexIterator, getEmptyIndexIterator, getEmptyIndexIterator, getInstance, getInstance, getInstance, getInstance, getInstance, getReader, getTermProcessor, keyIndex
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

index

protected final ByteBufferInputStream index
The byte buffer containing the index.

Constructor Detail

MemoryMappedIndex

public MemoryMappedIndex(ByteBufferInputStream index,
                         int numberOfDocuments,
                         int numberOfTerms,
                         long numberOfPostings,
                         long numberOfOccurrences,
                         int maxCount,
                         Payload payload,
                         CompressionFlags.Coding frequencyCoding,
                         CompressionFlags.Coding pointerCoding,
                         CompressionFlags.Coding countCoding,
                         CompressionFlags.Coding positionCoding,
                         int quantum,
                         int height,
                         TermProcessor termProcessor,
                         String field,
                         Properties properties,
                         StringMap<? extends CharSequence> termMap,
                         PrefixMap<? extends CharSequence> prefixMap,
                         IntList sizes,
                         LongList offsets)
Method Detail

getInputBitStream

public InputBitStream getInputBitStream(int bufferSizeUnused)
Description copied from class: BitStreamIndex
Returns an input bit stream over the index.

Specified by:
getInputBitStream in class BitStreamIndex
Parameters:
bufferSizeUnused - a suggested buffer size.
Returns:
an input bit stream over the index.

getInputStream

public ByteBufferInputStream getInputStream()
Description copied from class: BitStreamIndex
Returns an input stream over the index.

Specified by:
getInputStream in class BitStreamIndex
Returns:
an input stream over the index.