`
chengqianl
  • 浏览: 51619 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
http://www.cnblogs.com/feng_013/archive/2010/07/22/1783228.html
http://pubs.opengroup.org/onlinepubs/009695399/functions/sysconf.html

Implementors

    博客分类:
  • java
http://eclipse-tools.sourceforge.net/implementors/ eclispe alt+f3
OpenBitSet和OpenBitSetIterator在TermRangeQuery中的运用 在MultiTermQuery 的rewrite方法中,如果    if (pendingTerms.size() >= termCountLimit || docVisitCount >= docCountCutoff)  的就会使用MultiTermQueryWrapperFilter,如果查询出来的term的总数目大于termCountLimit或者docVisitCount是 df ,如果df 大于docCountCutoff 则使用MultiTermQueryWrapperFi ...
OpenBitSet和OpenBitSetIterator 算法的思想是用一个long的数组的index和这个这个数组的某个值的某一位表示一个数,如果是一个long数组,如果不存在重复的情况下,最大可达到64倍的压缩, 算法的实现过程以long OpenBitSet这个类实现的一个上面提到的记录数据的数组 public OpenBitSet(long numBits) {     bits = new long[bits2words(numBits)];  //根据指定的长度创建数组     wlen = bits.length;  //记录数组的长度   } //计算数组的长度,给定 ...
大致的事情就是读取segment.gen文件,从这个文件里面的数据找出segments_x(x是下一个段的名字,是一个36进制的数)这个文件,读segments_x这个文件,因为segment_x记录的索引的segment的元数据信息,读取segment信息后,在分别初始化每个segment的reader对象SegmentReader,SegmentReader会利用内部类CoreReaders,来完成文件的打开和读取, 1 构建FieldInfos,会通过SimpleFSIndexInput对象读取_x.fnm的信息到内存里面,放在list和map里面,map是为了可以利用field的name ...
多个term查询的步骤 分别查找每个term对应的结果 查询步骤 Term :a  -----》tii-------》tis-------》frg  保存结果 --- TermScorer1 Term :b  -----》tii-------》tis-------》frg  保存结果---  TermScorer2 得到结果集分别缓存在TermScorer二个数 ...
Lucene的排序是通过FieldComparator及其子类实现的,以StringOrdValComparator作为例子详细说明lucene的排序的基于缓存FieldCache实现。 思路:用一个数组保存某个filed字段对应的所有的document的最大的一个term。这个数组的index就是docId,值对应所有这个filed所有term的数组的index StringOrdValComparator 类里面的     private String[] lookup; 值为某个filed的所有的term的值 private int[] order;  index为docId,值为 ...
DefaultSkipListReader查找docId MultiLevelSkipListReader public MultiLevelSkipListReader(IndexInput skipStream, int maxSkipLevels, int skipInterval) { /**每个层的文件文件的IndexInput读取对象,是通过定位到每个文件的相对应的skiptable的位置层的位置,clone下就得 ...
document的写入是通过DocFieldProcessorPerThread类做的,实际上在lucene的文件里面(_x.fdx,_x.fdt,_x.fnm)没有document的概念,存储的是filed属性和值,filed的值是存储在_x.fdt文件里面 ,field的属性是存在在_x.fnm,(属性就是是否分词,是否存储等等) 而field的写入是通过DocFieldProcessorPerThread.processDocument实现的,这个方法里面会遍历索引的filed,并创建DocFieldProcessorPerField  实现写入的
摘自org.apache.lucene.index.DocumentsWriter.DefaultIndexingChain.getChain()  注释    /*       This is the current indexing chain:       DocConsumer / DocConsumerPerThread         --> code: DocFieldProcessor / DocFieldProcessorPerThread           --> DocFieldConsumer / DocFieldConsumerPerThread / D ...
最近在学习lucene,看的比较迷糊,所以 就把类图画了
今天看avro ,说zig-zag编码 看了半天终于明白。 value hex 0 00 -1 01 1 02 -2 03 2 04 ... -64 7f 64 80 01 ... 文档上例子如上面,所以继续编码 那么  -3 的编码是05 3的编码是06, 算法是(n << 1) ^ (n >> 31)  来自 http://code.google.com/apis/protocolbuffers/docs/encoding.html#types
乱码的 解决  jboss_home\server\default\deploy\jboss-web.deployer server.xml  Connector  添加 URIEncoding="UTF-8" useBodyEncodingForURI="true"/>
Global site tag (gtag.js) - Google Analytics