开始

执行处理前的初始化的工作

是否还有文档

包含当前term?

执行处理后的收尾的工作

记录当前文档号到docSeen

记录term在所有文档中的词频totalTermFreq

是否生成了

PackedBlock?

写入到跳表skipList中

term

结束

记录当前文档号docId到docDeltaBuffer

记录在当前文档中的freq到freqBuffer

是否需要

生成Block?

生成

PackedBlock

生成

PackedFreqBlock

记录位置信息position到posDeltaBuffer

记录payload长度到payloadLengthBuffer

记录payload值到payloadBytes

记录偏移信息offset的起始位置到

offsetStartDeltaBuffer

记录偏移信息offset的长度到

offsetLengthBuffer

是否需要

生成Block?

生成

PackedPosBlock

生成

PackedPayBlock

生成

PackedOffsetBlock

处理完一篇文档后的工作

u61_seg0 u61_seg1
u62_seg0 u62_seg1
u63_seg0 u63_seg1
u64_seg0 u64_seg1
u65_seg0 u65_seg1
u66_seg0 u66_seg1
u67_seg0 u67_seg1
u68_seg0 u68_seg1
u69_seg0 u69_seg1
u70_seg0 u70_seg1 u70_seg2
u71_seg0 u71_seg1
u72_seg0 u72_seg1 u72_seg2 u72_seg3 u72_seg4
u73_seg0 u73_seg1
u74_seg0 u74_seg1 u74_seg2 u74_seg3 u74_seg4
u75_seg0 u75_seg1
u76_seg0 u76_seg1 u76_seg2 u76_seg3
u77_seg0 u77_seg1
u78_seg0 u78_seg1
u79_seg0 u79_seg1
u80_seg0 u80_seg1 u80_seg2 u80_seg3
u81_seg0 u81_seg1
u82_seg0 u82_seg1
u83_seg0 u83_seg1 u83_seg2 u83_seg3 u83_seg4
u84_seg0 u84_seg1
u85_seg0 u85_seg1
u86_seg0 u86_seg1
u87_seg0 u87_seg1 u87_seg2 u87_seg3
u88_seg0 u88_seg1

处理position、payload、offset

处理docId、frequency