Class Lucene90NormsFormat
Encodes normalization values by encoding each value with the minimum number of bytes needed to represent the range (which can be zero).
Files:
.nvd: Norms data.nvm: Norms metadata
-
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
- Header -->
IndexHeader - Entry --> FieldNumber, DocsWithFieldAddress, DocsWithFieldLength, NumDocsWithField, BytesPerNorm, NormsAddress
- FieldNumber -->
Int32 - DocsWithFieldAddress -->
Int64 - DocsWithFieldLength -->
Int64 - NumDocsWithField -->
Int32 - BytesPerNorm -->
byte - NormsAddress -->
Int64 - Footer -->
CodecFooter
FieldNumber 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.
- Header -->
-
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
- Header -->
IndexHeader - DocsWithFieldData -->
Bit set of MaxDoc bits - NormsData -->
byteNumDocsWithField * BytesPerValue - Footer -->
CodecFooter
- Header -->
- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionnormsConsumer(SegmentWriteState state) Returns aNormsConsumerto write norms to the index.normsProducer(SegmentReadState state) Returns aNormsProducerto read norms from the index.
-
Constructor Details
-
Lucene90NormsFormat
public Lucene90NormsFormat()Sole Constructor
-
-
Method Details
-
normsConsumer
Description copied from class:NormsFormatReturns aNormsConsumerto write norms to the index.- Specified by:
normsConsumerin classNormsFormat- Throws:
IOException
-
normsProducer
Description copied from class:NormsFormatReturns aNormsProducerto 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.
- Specified by:
normsProducerin classNormsFormat- Throws:
IOException
-