mirror of
https://github.com/MarginaliaSearch/MarginaliaSearch.git
synced 2025-02-24 05:18:58 +00:00
![]() Enhanced scoring logic to add bonuses when the query matches single-word anchor (atag) spans exactly. Implemented this by adding conditions in `IndexResultScoreCalculator.java` and creating a new method `containsRangeExact` in `DocumentSpan.java` to check for exact span matches. |
||
---|---|---|
.. | ||
java/nu/marginalia/index/forward | ||
test/nu/marginalia/index/forward | ||
build.gradle | ||
readme.md |
Forward Index
The forward index contains a mapping from document id to various forms of document metadata.
In practice, the forward index consists of two files, an id
file and a data
file.
The id
file contains a list of sorted document ids, and the data
file contains
metadata for each document id, in the same order as the id
file, with a fixed
size record containing data associated with each document id.
Each record contains a binary encoded DocumentMetadata object, as well as a HtmlFeatures bitmask.
Unlike the reverse index, the forward index is not split into two tiers, and the data is in the same order as it is in the source data, and the cardinality of the document IDs is assumed to fit in memory, so it's relatively easy to construct.
Central Classes
- ForwardIndexConverter constructs the index.
- ForwardIndexReader interrogates the index.