Search in sources :

Example 36 with Index

use of org.molgenis.data.elasticsearch.generator.model.Index in project molgenis by molgenis.

the class ElasticsearchService method createIndex.

@Override
public void createIndex(EntityType entityType) {
    Index index = contentGenerators.createIndex(entityType);
    IndexSettings indexSettings = IndexSettings.create();
    Mapping mapping = contentGenerators.createMapping(entityType);
    clientFacade.createIndex(index, indexSettings, Stream.of(mapping));
}
Also used : IndexSettings(org.molgenis.data.elasticsearch.generator.model.IndexSettings) Index(org.molgenis.data.elasticsearch.generator.model.Index) Mapping(org.molgenis.data.elasticsearch.generator.model.Mapping)

Example 37 with Index

use of org.molgenis.data.elasticsearch.generator.model.Index in project molgenis by molgenis.

the class ElasticsearchService method index.

@Override
public long index(EntityType entityType, Stream<? extends Entity> entities) {
    Index index = contentGenerators.createIndex(entityType);
    Stream<DocumentAction> documentActionStream = entities.map(entity -> this.toDocumentAction(index, entity));
    AtomicLong count = new AtomicLong(0L);
    clientFacade.processDocumentActions(documentActionStream.filter(documentAction -> {
        count.incrementAndGet();
        return true;
    }));
    return count.get();
}
Also used : AggregationBuilder(org.elasticsearch.search.aggregations.AggregationBuilder) Index(org.molgenis.data.elasticsearch.generator.model.Index) IllegalAttributeTypeException(org.molgenis.data.meta.IllegalAttributeTypeException) DocumentAction(org.molgenis.data.elasticsearch.generator.model.DocumentAction) Iterators(com.google.common.collect.Iterators) ContentGenerators(org.molgenis.data.elasticsearch.generator.ContentGenerators) AggregateResult(org.molgenis.data.aggregation.AggregateResult) Objects.requireNonNull(java.util.Objects.requireNonNull) EntityTypeUtils.createFetchForReindexing(org.molgenis.data.util.EntityTypeUtils.createFetchForReindexing) SearchService(org.molgenis.data.index.SearchService) IndexSettings(org.molgenis.data.elasticsearch.generator.model.IndexSettings) QueryBuilder(org.elasticsearch.index.query.QueryBuilder) Document(org.molgenis.data.elasticsearch.generator.model.Document) Mapping(org.molgenis.data.elasticsearch.generator.model.Mapping) IndexService(org.molgenis.data.index.IndexService) AttributeType(org.molgenis.data.meta.AttributeType) Explanation(org.apache.lucene.search.Explanation) SearchHit(org.molgenis.data.elasticsearch.client.model.SearchHit) Aggregations(org.elasticsearch.search.aggregations.Aggregations) AggregateQuery(org.molgenis.data.aggregation.AggregateQuery) Streams(com.google.common.collect.Streams) EntityType(org.molgenis.data.meta.model.EntityType) Sort(org.molgenis.data.elasticsearch.generator.model.Sort) AtomicLong(java.util.concurrent.atomic.AtomicLong) List(java.util.List) Component(org.springframework.stereotype.Component) Stream(java.util.stream.Stream) ClientFacade(org.molgenis.data.elasticsearch.client.ClientFacade) Repository(org.molgenis.data.Repository) DataService(org.molgenis.data.DataService) Query(org.molgenis.data.Query) Entity(org.molgenis.data.Entity) SearchHits(org.molgenis.data.elasticsearch.client.model.SearchHits) AtomicLong(java.util.concurrent.atomic.AtomicLong) Index(org.molgenis.data.elasticsearch.generator.model.Index) DocumentAction(org.molgenis.data.elasticsearch.generator.model.DocumentAction)

Aggregations

Index (org.molgenis.data.elasticsearch.generator.model.Index)37 Test (org.junit.jupiter.api.Test)23 ElasticsearchException (org.elasticsearch.ElasticsearchException)13 SearchRequest (org.elasticsearch.action.search.SearchRequest)10 DeleteIndexRequest (org.elasticsearch.action.admin.indices.delete.DeleteIndexRequest)6 CreateIndexRequest (org.elasticsearch.client.indices.CreateIndexRequest)6 IOException (java.io.IOException)5 CountRequest (org.elasticsearch.client.core.CountRequest)5 QueryBuilder (org.elasticsearch.index.query.QueryBuilder)5 IndexSettings (org.molgenis.data.elasticsearch.generator.model.IndexSettings)5 Mapping (org.molgenis.data.elasticsearch.generator.model.Mapping)5 UnknownIndexException (org.molgenis.data.index.exception.UnknownIndexException)5 ResourceNotFoundException (org.elasticsearch.ResourceNotFoundException)4 GetIndexRequest (org.elasticsearch.client.indices.GetIndexRequest)4 IndexRequest (org.elasticsearch.action.index.IndexRequest)3 Document (org.molgenis.data.elasticsearch.generator.model.Document)3 FieldMapping (org.molgenis.data.elasticsearch.generator.model.FieldMapping)3 ElasticsearchStatusException (org.elasticsearch.ElasticsearchStatusException)2 DeleteRequest (org.elasticsearch.action.delete.DeleteRequest)2 SearchResponse (org.elasticsearch.action.search.SearchResponse)2