Example usage for org.apache.lucene.store RAMDirectory RAMDirectory

List of usage examples for org.apache.lucene.store RAMDirectory RAMDirectory

Introduction

In this page you can find the example usage for org.apache.lucene.store RAMDirectory RAMDirectory.

Prototype

public RAMDirectory() 

Source Link

Document

Constructs an empty Directory .

Usage

From source file:io.crate.operation.collect.collectors.LuceneBatchIteratorBenchmark.java

License:Apache License

@Setup
public void createLuceneBatchIterator() throws Exception {
    IndexWriter iw = new IndexWriter(new RAMDirectory(), new IndexWriterConfig(new StandardAnalyzer()));
    String columnName = "x";
    for (int i = 0; i < 10_000_000; i++) {
        Document doc = new Document();
        doc.add(new NumericDocValuesField(columnName, i));
        iw.addDocument(doc);/*from  w  ww.j  av a2  s.co  m*/
    }
    iw.commit();
    iw.forceMerge(1, true);
    indexSearcher = new IndexSearcher(DirectoryReader.open(iw));
    IntegerColumnReference columnReference = new IntegerColumnReference(columnName);
    columnRefs = Collections.singletonList(columnReference);

    collectorContext = new CollectorContext(mock(IndexFieldDataService.class), new CollectorFieldsVisitor(0));
}

From source file:io.crate.operation.collect.collectors.OrderedLuceneBatchIteratorBenchmark.java

License:Apache License

@Setup
public void createLuceneBatchIterator() throws Exception {
    IndexWriter iw = new IndexWriter(new RAMDirectory(), new IndexWriterConfig(new StandardAnalyzer()));
    dummyShardId = new ShardId("dummy", UUIDs.randomBase64UUID(), 1);
    columnName = "x";
    for (int i = 0; i < 10_000_000; i++) {
        Document doc = new Document();
        doc.add(new NumericDocValuesField(columnName, i));
        iw.addDocument(doc);//from  w  w  w.j  a  v a2s. c om
    }
    iw.commit();
    iw.forceMerge(1, true);
    indexSearcher = new IndexSearcher(DirectoryReader.open(iw, true, true));
    collectorContext = new CollectorContext(mock(IndexFieldDataService.class), new CollectorFieldsVisitor(0));
    fieldTypeLookup = column -> {
        NumberFieldMapper.NumberFieldType fieldType = new NumberFieldMapper.NumberFieldType(
                NumberFieldMapper.NumberType.INTEGER);
        fieldType.setName(column);
        return fieldType;
    };
    reference = new Reference(new ReferenceIdent(new TableIdent(null, "dummyTable"), columnName),
            RowGranularity.DOC, DataTypes.INTEGER);
    orderBy = new OrderBy(Collections.singletonList(reference), reverseFlags, nullsFirst);
}

From source file:io.crate.operation.collect.collectors.OrderedLuceneBatchIteratorFactoryTest.java

License:Apache License

@Before
public void prepareSearchers() throws Exception {
    IndexWriter iw1 = new IndexWriter(new RAMDirectory(), new IndexWriterConfig(new StandardAnalyzer()));
    IndexWriter iw2 = new IndexWriter(new RAMDirectory(), new IndexWriterConfig(new StandardAnalyzer()));

    expectedResult = LongStream.range(0, 20).mapToObj(i -> new Object[] { i }).collect(Collectors.toList());
    // expect descending order to differentiate between insert order
    expectedResult.sort(Comparator.comparingLong((Object[] o) -> ((long) o[0])).reversed());

    for (int i = 0; i < 20; i++) {
        Document doc = new Document();
        doc.add(new NumericDocValuesField(columnName, i));
        if (i % 2 == 0) {
            iw1.addDocument(doc);//from ww  w  . jav a 2  s .  c o  m
        } else {
            iw2.addDocument(doc);
        }
    }
    iw1.commit();
    iw2.commit();

    searcher1 = new IndexSearcher(DirectoryReader.open(iw1));
    searcher2 = new IndexSearcher(DirectoryReader.open(iw2));
    fieldTypeLookup = columnName -> {
        NumberFieldMapper.NumberFieldType fieldType = new NumberFieldMapper.NumberFieldType(
                NumberFieldMapper.NumberType.LONG);
        fieldType.setName(columnName);
        return fieldType;
    };
    orderBy = new OrderBy(Collections.singletonList(reference), reverseFlags, nullsFirst);
}

From source file:io.crate.operation.reference.doc.DocLevelExpressionsTest.java

License:Apache License

@Before
public void prepare() throws Exception {
    Settings settings = ImmutableSettings.builder().put("index.fielddata.cache", "none").build();
    IndexService indexService = createIndex("test", settings);
    ifd = indexService.fieldData();// w w w . j  a  v  a2  s.  com

    MapperService mapperService = mock(MapperService.class);
    FieldMapper fieldMapper = mock(FieldMapper.class);
    when(fieldMapper.names()).thenReturn(fieldName());
    when(fieldMapper.fieldDataType()).thenReturn(fieldType());
    when(mapperService.smartNameFieldMapper(anyString(), Matchers.<String[]>any())).thenReturn(fieldMapper);

    IndexFieldData<?> fieldData = ifd.getForField(fieldMapper);
    writer = new IndexWriter(new RAMDirectory(), new IndexWriterConfig(Lucene.VERSION, new StandardAnalyzer())
            .setMergePolicy(new LogByteSizeMergePolicy()));

    insertValues(writer);

    DirectoryReader directoryReader = DirectoryReader.open(writer, true);
    readerContext = directoryReader.leaves().get(0);
    fieldData.load(readerContext);

    ctx = new CollectorContext(mapperService, ifd, null);
}

From source file:io.datalayer.lucene.helper.AosUtil.java

License:Apache License

public void ramDirExample() throws Exception {
    Directory ramDir = new RAMDirectory();
    IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_46,
            AosAnalyser.NO_LIMIT_TOKEN_COUNT_SIMPLE_ANALYSER);
    IndexWriter writer = new IndexWriter(ramDir, conf);
}

From source file:io.datalayer.lucene.helper.AosUtil.java

License:Apache License

/**
 * #1 Good domain boost factor: 1.5/*from   w  w  w. j  ava 2s  . c  om*/
 * 
 * #2 Bad domain boost factor: 0.1
 */
public void docBoostMethod() throws IOException {

    Directory dir = new RAMDirectory();
    IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_46,
            AosAnalyser.NO_LIMIT_TOKEN_COUNT_SIMPLE_ANALYSER);
    IndexWriter writer = new IndexWriter(dir, conf);

    Document doc = new Document();
    String senderEmail = getSenderEmail();
    String senderName = getSenderName();
    String subject = getSubject();
    String body = getBody();
    doc.add(new StoredField("senderEmail", senderEmail));
    doc.add(new Field("senderName", senderName, AosFieldType.INDEXED_STORED_TERMVECTORS));
    doc.add(new Field("subject", subject, AosFieldType.INDEXED_STORED_TERMVECTORS));
    doc.add(new Field("body", body, AosFieldType.INDEXED_STORED_TERMVECTORS));
    String lowerDomain = getSenderDomain().toLowerCase();
    if (isImportant(lowerDomain)) {
        // doc.setBoost(1.5F);
    } else if (isUnimportant(lowerDomain)) {
        // doc.setBoost(0.1F);
    }

    writer.addDocument(doc);

    writer.close();

}

From source file:io.datalayer.lucene.index.VerboseIndexing.java

License:Apache License

private void index() throws IOException {

    Directory dir = new RAMDirectory();
    IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_46,
            AosAnalyser.NO_LIMIT_TOKEN_COUNT_SIMPLE_ANALYSER);

    config.setInfoStream(System.out);

    IndexWriter writer = new IndexWriter(dir, config);

    for (int i = 0; i < 100; i++) {
        Document doc = new Document();
        doc.add(new StoredField("keyword", "goober"));
        writer.addDocument(doc);//w w w. j  ava2  s  .c  o  m
    }

    writer.close();

}

From source file:io.druid.extension.lucene.LuceneDruidSegment.java

License:Apache License

private void reset() throws IOException {
    if (!isOpen) {
        return;/*from  www. j a  v  a  2s  .  c om*/
    }
    ramDir = new RAMDirectory();
    ramWriter = buildRamWriter(ramDir, new StandardAnalyzer(), maxRowsPerSegment);
    numRowsAdded = 0;
    this.realtimeReader = null;
}

From source file:io.github.msurdi.redeye.core.lucene.EntryIndex.java

License:Apache License

/**
 * Creates a new in-memory lucene
 */
public EntryIndex() {
    super(new RAMDirectory());
}

From source file:io.github.msurdi.redeye.core.lucene.QueryIndex.java

License:Apache License

public QueryIndex() {
    super(new RAMDirectory());
}