Lu Xugang
Lu Xugang
先通过IndexReader获取StoredFields对象 然后通过StoredFields对象获取Document对象,这个Document就是在索引阶段定义的对象
> 请假一个问题,事先把document排序,然后再add到index中和indexSort有什么区别吗 没有什么区别的
>NumericDocValues 使用BKD 你是说查询topN时候使用 bkd树加速吗?
如果搜索阶段指定的排序规则跟索引阶段的IndexSort相同或者是IndexSort的排序规则子集 就不需要在搜索阶段重新排序了 在[TopFieldCollector](https://github.com/apache/lucene/blob/main/lucene/core/src/java/org/apache/lucene/search/TopFieldCollector.java)的`canEarlyTerminate(Sort searchSort, Sort indexSort)`方法中 会比较两个排序规则。 
> 仓库太大了,我clone了一个g还没结束呢 现在不能分了,因为博客中的链接指向当前仓库的😅,最开始的时候没有想到会一直写下去哈
没有问题,补充下第四点:读取存储域(即.fdx .fdt .fdm索引文件)跟DocValues一样都是根据文档号找域值。
solr我没有实践 Elasticsearch和lucene的问题才能帮到你呀
lucene中有group的模块 但是不知道能不能满足你的需求,es的话 分组 聚合都是自己实现的 并不会基于Lucene的group模块
感谢支持!
> 现在理解为什么是这样的了 > ①cpu一级缓存的大小是32kB(分机器 目前我的机器是32Kb) BLOCK_SHIFT偏移15是32768 B 正好是32KB > ②IntBlockPool 偏移13是8192 因为int是四字节 8192*4= 32768 我问了下社区,回答如下: