当前位置: 首页>>代码示例>>Java>>正文


Java IndexWriterConfig.setCodec方法代码示例

本文整理汇总了Java中org.apache.lucene.index.IndexWriterConfig.setCodec方法的典型用法代码示例。如果您正苦于以下问题:Java IndexWriterConfig.setCodec方法的具体用法?Java IndexWriterConfig.setCodec怎么用?Java IndexWriterConfig.setCodec使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.lucene.index.IndexWriterConfig的用法示例。


在下文中一共展示了IndexWriterConfig.setCodec方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getIndexWriterConfig

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
private IndexWriterConfig getIndexWriterConfig(boolean create) {
    final IndexWriterConfig iwc = new IndexWriterConfig(engineConfig.getAnalyzer());
    iwc.setCommitOnClose(false); // we by default don't commit on close
    iwc.setOpenMode(create ? IndexWriterConfig.OpenMode.CREATE : IndexWriterConfig.OpenMode.APPEND);
    iwc.setIndexDeletionPolicy(deletionPolicy);
    // with tests.verbose, lucene sets this up: plumb to align with filesystem stream
    boolean verbose = false;
    try {
        verbose = Boolean.parseBoolean(System.getProperty("tests.verbose"));
    } catch (Exception ignore) {
    }
    iwc.setInfoStream(verbose ? InfoStream.getDefault() : new LoggerInfoStream(logger));
    iwc.setMergeScheduler(mergeScheduler);
    MergePolicy mergePolicy = config().getMergePolicy();
    // Give us the opportunity to upgrade old segments while performing
    // background merges
    mergePolicy = new ElasticsearchMergePolicy(mergePolicy);
    iwc.setMergePolicy(mergePolicy);
    iwc.setSimilarity(engineConfig.getSimilarity());
    iwc.setRAMBufferSizeMB(engineConfig.getIndexingBufferSize().getMbFrac());
    iwc.setCodec(engineConfig.getCodec());
    iwc.setUseCompoundFile(true); // always use compound on flush - reduces # of file-handles on refresh
    return iwc;
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:25,代码来源:InternalEngine.java

示例2: assertCompressionEquals

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
private void assertCompressionEquals(Mode expected, Codec actual) throws Exception {
    Directory dir = newDirectory();
    IndexWriterConfig iwc = newIndexWriterConfig(null);
    iwc.setCodec(actual);
    IndexWriter iw = new IndexWriter(dir, iwc);
    iw.addDocument(new Document());
    iw.commit();
    iw.close();
    DirectoryReader ir = DirectoryReader.open(dir);
    SegmentReader sr = (SegmentReader) ir.leaves().get(0).reader();
    String v = sr.getSegmentInfo().info.getAttribute(Lucene50StoredFieldsFormat.MODE_KEY);
    assertNotNull(v);
    assertEquals(expected, Mode.valueOf(v));
    ir.close();
    dir.close();
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:17,代码来源:CodecTests.java

示例3: initializeIndexBuilder

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void initializeIndexBuilder() throws Exception {
    // Create a new index directory and writer to index a triples file.
    // Raise an error if an index already exists, so we don't accidentally overwrite it.
    String indexDir = getIndexDirectoryName();
    if ((new File(indexDir)).isDirectory())
        throw new IOException("Index directory already exists, remove it before indexing");

    indexDirectory = FSDirectory.open(Paths.get(indexDir));
    IndexWriterConfig iwc = new IndexWriterConfig(getIndexAnalyzer());

    // we always create a new index from scratch:
    iwc.setOpenMode(OpenMode.CREATE);
    iwc.setCodec(new Lucene54Codec(Mode.BEST_SPEED));          // the default
    //iwc.setCodec(new Lucene54Codec(Mode.BEST_COMPRESSION));  // slower, but better compression

    indexWriter = new IndexWriter(indexDirectory, iwc);
    indexAnalyzer = getIndexAnalyzer();

    if (INDEX_PREDICATES) printlnProg("Indexing individual predicates");
    if (INDEX_TEXT) printlnProg("Indexing combined predicate text values");
    if (INDEX_LANGUAGE) printlnProg("Indexing predicates for language(s): " + supportedLanguages);
}
 
开发者ID:isoboroff,项目名称:basekb-search,代码行数:23,代码来源:FreebaseIndexer.java

示例4: testBasic

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void testBasic() throws Exception {
  Directory dir = newDirectory();
  IndexWriterConfig iwc = newIndexWriterConfig(new MockAnalyzer(random()));
  iwc.setCodec(TestUtil.alwaysPostingsFormat(new IDVersionPostingsFormat()));
  RandomIndexWriter w = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  doc.add(makeIDField("id0", 100));
  w.addDocument(doc);
  doc = new Document();
  doc.add(makeIDField("id1", 110));
  w.addDocument(doc);
  IndexReader r = w.getReader();
  IDVersionSegmentTermsEnum termsEnum = (IDVersionSegmentTermsEnum) r.leaves().get(0).reader().fields().terms("id").iterator(null);
  assertTrue(termsEnum.seekExact(new BytesRef("id0"), 50));
  assertTrue(termsEnum.seekExact(new BytesRef("id0"), 100));
  assertFalse(termsEnum.seekExact(new BytesRef("id0"), 101));
  assertTrue(termsEnum.seekExact(new BytesRef("id1"), 50));
  assertTrue(termsEnum.seekExact(new BytesRef("id1"), 110));
  assertFalse(termsEnum.seekExact(new BytesRef("id1"), 111));
  r.close();

  w.close();
  dir.close();
}
 
开发者ID:europeana,项目名称:search,代码行数:25,代码来源:TestIDVersionPostingsFormat.java

示例5: testMoreThanOneDocPerIDWithUpdates

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void testMoreThanOneDocPerIDWithUpdates() throws Exception {
  Directory dir = newDirectory();
  IndexWriterConfig iwc = newIndexWriterConfig(new MockAnalyzer(random()));
  iwc.setCodec(TestUtil.alwaysPostingsFormat(new IDVersionPostingsFormat()));
  RandomIndexWriter w = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  doc.add(makeIDField("id", 17));
  w.addDocument(doc);
  doc = new Document();
  doc.add(makeIDField("id", 17));
  // Replaces the doc we just indexed:
  w.updateDocument(new Term("id", "id"), doc);
  w.commit();
  w.close();
  dir.close();
}
 
开发者ID:europeana,项目名称:search,代码行数:17,代码来源:TestIDVersionPostingsFormat.java

示例6: testMoreThanOneDocPerIDWithDeletes

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void testMoreThanOneDocPerIDWithDeletes() throws Exception {
  Directory dir = newDirectory();
  IndexWriterConfig iwc = newIndexWriterConfig(new MockAnalyzer(random()));
  iwc.setCodec(TestUtil.alwaysPostingsFormat(new IDVersionPostingsFormat()));
  RandomIndexWriter w = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  doc.add(makeIDField("id", 17));
  w.addDocument(doc);
  w.deleteDocuments(new Term("id", "id"));
  doc = new Document();
  doc.add(makeIDField("id", 17));
  w.addDocument(doc);
  w.commit();
  w.close();
  dir.close();
}
 
开发者ID:europeana,项目名称:search,代码行数:17,代码来源:TestIDVersionPostingsFormat.java

示例7: testMissingPositions

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void testMissingPositions() throws Exception {
  Directory dir = newDirectory();
  IndexWriterConfig iwc = newIndexWriterConfig(new MockAnalyzer(random()));
  iwc.setCodec(TestUtil.alwaysPostingsFormat(new IDVersionPostingsFormat()));
  RandomIndexWriter w = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  doc.add(newStringField("id", "id", Field.Store.NO));
  try {
    w.addDocument(doc);
    w.commit();
    fail("didn't hit expected exception");
  } catch (IllegalArgumentException iae) {
    // expected
  }
           
  w.close();
  dir.close();
}
 
开发者ID:europeana,项目名称:search,代码行数:19,代码来源:TestIDVersionPostingsFormat.java

示例8: testInvalidPayload

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void testInvalidPayload() throws Exception {
  Directory dir = newDirectory();
  IndexWriterConfig iwc = newIndexWriterConfig(new MockAnalyzer(random()));
  iwc.setCodec(TestUtil.alwaysPostingsFormat(new IDVersionPostingsFormat()));
  RandomIndexWriter w = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  doc.add(new StringAndPayloadField("id", "id", new BytesRef("foo")));
  try {
    w.addDocument(doc);
    w.commit();
    fail("didn't hit expected exception");
  } catch (IllegalArgumentException iae) {
    // expected
  }
           
  w.close();
  dir.close();
}
 
开发者ID:europeana,项目名称:search,代码行数:19,代码来源:TestIDVersionPostingsFormat.java

示例9: testMoreThanOneDocPerIDWithDeletesAcrossSegments

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void testMoreThanOneDocPerIDWithDeletesAcrossSegments() throws IOException {
  Directory dir = newDirectory();
  IndexWriterConfig iwc = newIndexWriterConfig(new MockAnalyzer(random()));
  iwc.setCodec(TestUtil.alwaysPostingsFormat(new IDVersionPostingsFormat()));
  RandomIndexWriter w = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  doc.add(makeIDField("id", 17));
  w.addDocument(doc);
  w.commit();
  doc = new Document();
  doc.add(makeIDField("id", 17));
  // Replaces the doc we just indexed:
  w.updateDocument(new Term("id", "id"), doc);
  w.forceMerge(1);
  w.close();
  dir.close();
}
 
开发者ID:europeana,项目名称:search,代码行数:18,代码来源:TestIDVersionPostingsFormat.java

示例10: testMoreThanOnceInSingleDoc

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void testMoreThanOnceInSingleDoc() throws IOException {
  Directory dir = newDirectory();
  IndexWriterConfig iwc = newIndexWriterConfig(new MockAnalyzer(random()));
  iwc.setCodec(TestUtil.alwaysPostingsFormat(new IDVersionPostingsFormat()));
  RandomIndexWriter w = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  doc.add(makeIDField("id", 17));
  doc.add(makeIDField("id", 17));
  try {
    w.addDocument(doc);
    w.commit();
    fail("didn't hit expected exception");
  } catch (IllegalArgumentException iae) {
    // expected
  }
  w.close();
  dir.close();
}
 
开发者ID:europeana,项目名称:search,代码行数:19,代码来源:TestIDVersionPostingsFormat.java

示例11: doTestMixedPostings

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
private void doTestMixedPostings(Codec codec) throws Exception {
  Directory dir = newDirectory();
  IndexWriterConfig iwc = newIndexWriterConfig(new MockAnalyzer(random()));
  iwc.setCodec(codec);
  RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  FieldType ft = new FieldType(TextField.TYPE_NOT_STORED);
  // turn on vectors for the checkindex cross-check
  ft.setStoreTermVectors(true);
  ft.setStoreTermVectorOffsets(true);
  ft.setStoreTermVectorPositions(true);
  Field idField = new Field("id", "", ft);
  Field dateField = new Field("date", "", ft);
  doc.add(idField);
  doc.add(dateField);
  for (int i = 0; i < 100; i++) {
    idField.setStringValue(Integer.toString(random().nextInt(50)));
    dateField.setStringValue(Integer.toString(random().nextInt(100)));
    iw.addDocument(doc);
  }
  iw.close();
  dir.close(); // checkindex
}
 
开发者ID:europeana,项目名称:search,代码行数:24,代码来源:TestPerFieldPostingsFormat2.java

示例12: newConfig

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
private IndexWriterConfig newConfig(final Analyzer analyzer) {
    final IndexWriterConfig config = new IndexWriterConfig(analyzer);
    final Codec codec = new Lucene62Codec() {
        @Override
        public PostingsFormat getPostingsFormatForField(String field) {
            if (field.equals("id")) {
                return PostingsFormat.forName("Memory");
            } else {
                return PostingsFormat.forName("Lucene50");
            }
        }
    };
    config.setCodec(codec);

    return config;
}
 
开发者ID:kiegroup,项目名称:appformer,代码行数:17,代码来源:DirectoryFactory.java

示例13: newIndexWriterConfig

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
protected IndexWriterConfig newIndexWriterConfig(Random random) {
  final IndexWriterConfig indexWriterConfig = LuceneTestCase.newIndexWriterConfig(random, LuceneTestCase.TEST_VERSION_CURRENT, new MockAnalyzer(random));
  //TODO can we randomly choose a doc-values supported format?
  if (needsDocValues())
    indexWriterConfig.setCodec( TestUtil.alwaysDocValuesFormat(new Lucene410DocValuesFormat()));;
  return indexWriterConfig;
}
 
开发者ID:europeana,项目名称:search,代码行数:8,代码来源:SpatialTestCase.java

示例14: getIndexWriterConfig

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
/** Override this to customize index settings, e.g. which
 *  codec to use. */
protected IndexWriterConfig getIndexWriterConfig(Version matchVersion, Analyzer indexAnalyzer, IndexWriterConfig.OpenMode openMode) {
  IndexWriterConfig iwc = new IndexWriterConfig(matchVersion, indexAnalyzer);
  iwc.setCodec(new Lucene410Codec());
  iwc.setOpenMode(openMode);

  // This way all merged segments will be sorted at
  // merge time, allow for per-segment early termination
  // when those segments are searched:
  iwc.setMergePolicy(new SortingMergePolicy(iwc.getMergePolicy(), SORT));

  return iwc;
}
 
开发者ID:europeana,项目名称:search,代码行数:15,代码来源:AnalyzingInfixSuggester.java

示例15: testMissingPayload

import org.apache.lucene.index.IndexWriterConfig; //导入方法依赖的package包/类
public void testMissingPayload() throws Exception {
  Directory dir = newDirectory();

  // MockAnalyzer minus maybePayload else it sometimes stuffs in an 8-byte payload!
  Analyzer a = new Analyzer() {
      @Override
      public TokenStreamComponents createComponents(String fieldName, Reader reader) {
        MockTokenizer tokenizer = new MockTokenizer(reader, MockTokenizer.WHITESPACE, true, 100);
        tokenizer.setEnableChecks(true);
        MockTokenFilter filt = new MockTokenFilter(tokenizer, MockTokenFilter.EMPTY_STOPSET);
        return new TokenStreamComponents(tokenizer, filt);
      }
    };
  IndexWriterConfig iwc = newIndexWriterConfig(a);
  iwc.setCodec(TestUtil.alwaysPostingsFormat(new IDVersionPostingsFormat()));
  RandomIndexWriter w = new RandomIndexWriter(random(), dir, iwc);
  Document doc = new Document();
  doc.add(newTextField("id", "id", Field.Store.NO));
  try {
    w.addDocument(doc);
    w.commit();
    fail("didn't hit expected exception");
  } catch (IllegalArgumentException iae) {
    // expected
  }
           
  w.close();
  dir.close();
}
 
开发者ID:europeana,项目名称:search,代码行数:30,代码来源:TestIDVersionPostingsFormat.java


注:本文中的org.apache.lucene.index.IndexWriterConfig.setCodec方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。