public class Lucene80NormsFormat extends NormsFormat
Encodes normalization values by encoding each value with the minimum number of bytes needed to represent the range (which can be zero).
Files:
The Norms metadata or .nvm file.
For each norms field, this stores metadata, such as the offset into the Norms data (.nvd)
Norms metadata (.dvm) --> Header,<Entry>NumFields,Footer
IndexHeaderInt32Int64Int64Int32byteInt64CodecFooterFieldNumber of -1 indicates the end of metadata.
NormsAddress is the pointer to the start of the data in the norms data (.nvd), or the singleton value when BytesPerValue = 0. If BytesPerValue is different from 0 then there are NumDocsWithField values to read at that offset.
DocsWithFieldAddress is the pointer to the start of the bit set containing documents that have a norm in the norms data (.nvd), or -2 if no documents have a norm value, or -1 if all documents have a norm value.
DocsWithFieldLength is the number of bytes used to encode the set of documents that have a norm.
The Norms data or .nvd file.
For each Norms field, this stores the actual per-document data (the heavy-lifting)
Norms data (.nvd) --> Header,< Data >NumFields,Footer
IndexHeaderBit set of MaxDoc bitsbyteNumDocsWithField * BytesPerValueCodecFooter| Modifier and Type | Field and Description |
|---|---|
private static java.lang.String |
DATA_CODEC |
private static java.lang.String |
DATA_EXTENSION |
private static java.lang.String |
METADATA_CODEC |
private static java.lang.String |
METADATA_EXTENSION |
(package private) static int |
VERSION_CURRENT |
(package private) static int |
VERSION_START |
| Constructor and Description |
|---|
Lucene80NormsFormat()
Sole Constructor
|
| Modifier and Type | Method and Description |
|---|---|
NormsConsumer |
normsConsumer(SegmentWriteState state)
Returns a
NormsConsumer to write norms to the
index. |
NormsProducer |
normsProducer(SegmentReadState state)
Returns a
NormsProducer to read norms from the index. |
private static final java.lang.String DATA_CODEC
private static final java.lang.String DATA_EXTENSION
private static final java.lang.String METADATA_CODEC
private static final java.lang.String METADATA_EXTENSION
static final int VERSION_START
static final int VERSION_CURRENT
public NormsConsumer normsConsumer(SegmentWriteState state) throws java.io.IOException
NormsFormatNormsConsumer to write norms to the
index.normsConsumer in class NormsFormatjava.io.IOExceptionpublic NormsProducer normsProducer(SegmentReadState state) throws java.io.IOException
NormsFormatNormsProducer to read norms from the index.
NOTE: by the time this call returns, it must hold open any files it will need to use; else, those files may be deleted. Additionally, required files may be deleted during the execution of this call before there is a chance to open them. Under these circumstances an IOException should be thrown by the implementation. IOExceptions are expected and will automatically cause a retry of the segment opening logic with the newly revised segments.
normsProducer in class NormsFormatjava.io.IOException