Class ElasticsearchStore

java.lang.Object
org.eclipse.rdf4j.sail.helpers.AbstractSail
org.eclipse.rdf4j.sail.helpers.AbstractNotifyingSail
org.eclipse.rdf4j.sail.extensiblestore.ExtensibleStore<org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchDataStructure,org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchNamespaceStore>
org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchStore
All Implemented Interfaces:
FederatedServiceResolverClient, NotifyingSail, Sail

@Experimental public class ElasticsearchStore extends ExtensibleStore<org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchDataStructure,org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchNamespaceStore>

An RDF4J SailStore persisted to Elasticsearch.

This is an EXPERIMENTAL feature. Use at your own risk!

There is no write-ahead logging, so a failure during a transaction may result in partially persisted changes.

Author:
HÃ¥vard Mikkelsen Ottestad
  • Constructor Details

    • ElasticsearchStore

      public ElasticsearchStore(String hostname, int port, String clusterName, String index)
    • ElasticsearchStore

      public ElasticsearchStore(String hostname, int port, String clusterName, String index, boolean cacheEnabled)
    • ElasticsearchStore

      public ElasticsearchStore(org.eclipse.rdf4j.sail.elasticsearchstore.ClientProvider clientPool, String index)
    • ElasticsearchStore

      public ElasticsearchStore(org.eclipse.rdf4j.sail.elasticsearchstore.ClientProvider clientPool, String index, boolean cacheEnabled)
    • ElasticsearchStore

      public ElasticsearchStore(org.elasticsearch.client.Client client, String index)
    • ElasticsearchStore

      public ElasticsearchStore(org.elasticsearch.client.Client client, String index, boolean cacheEnabled)
  • Method Details

    • initializeInternal

      protected void initializeInternal() throws SailException
      Description copied from class: AbstractSail
      Do store-specific operations to initialize the store. The default implementation of this method does nothing.
      Overrides:
      initializeInternal in class ExtensibleStore<org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchDataStructure,org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchNamespaceStore>
      Throws:
      SailException
    • shutDownInternal

      protected void shutDownInternal() throws SailException
      Description copied from class: AbstractSail
      Do store-specific operations to ensure proper shutdown of the store.
      Overrides:
      shutDownInternal in class ExtensibleStore<org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchDataStructure,org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchNamespaceStore>
      Throws:
      SailException
    • waitForElasticsearch

      public void waitForElasticsearch(int time, TemporalUnit timeUnit)
    • setElasticsearchScrollTimeout

      public void setElasticsearchScrollTimeout(int timeout)
    • getConnectionInternal

      protected NotifyingSailConnection getConnectionInternal() throws SailException
      Description copied from class: AbstractSail
      Returns a store-specific SailConnection object.
      Specified by:
      getConnectionInternal in class AbstractNotifyingSail
      Returns:
      A connection to the store.
      Throws:
      SailException
    • isWritable

      public boolean isWritable() throws SailException
      Description copied from interface: Sail
      Checks whether this Sail object is writable, i.e. if the data contained in this Sail object can be changed.
      Throws:
      SailException
    • getHostname

      public String getHostname()
    • getPort

      public int getPort()
    • getClusterName

      public String getClusterName()
    • getIndex

      public String getIndex()
    • setElasticsearchBulkSize

      public void setElasticsearchBulkSize(int size)
    • getExtensibleStatementHelper

      public ExtensibleStatementHelper getExtensibleStatementHelper()
      Overrides:
      getExtensibleStatementHelper in class ExtensibleStore<org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchDataStructure,org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchNamespaceStore>