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
-
-
Field Summary
-
Fields inherited from class org.eclipse.rdf4j.sail.extensiblestore.ExtensibleStore
dataStructure, namespaceStore, sailStore
-
Fields inherited from class org.eclipse.rdf4j.sail.helpers.AbstractSail
connectionTimeOut, DEFAULT_CONNECTION_TIMEOUT, DEFAULT_ITERATION_SYNC_THRESHOLD, initializationLock
-
-
Constructor Summary
Constructors Constructor Description ElasticsearchStore(String hostname, int port, String clusterName, String index)
ElasticsearchStore(String hostname, int port, String clusterName, String index, boolean cacheEnabled)
ElasticsearchStore(org.eclipse.rdf4j.sail.elasticsearchstore.ClientProvider clientPool, String index)
ElasticsearchStore(org.eclipse.rdf4j.sail.elasticsearchstore.ClientProvider clientPool, String index, boolean cacheEnabled)
ElasticsearchStore(org.elasticsearch.client.Client client, String index)
ElasticsearchStore(org.elasticsearch.client.Client client, String index, boolean cacheEnabled)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getClusterName()
protected NotifyingSailConnection
getConnectionInternal()
Returns a store-specific SailConnection object.ExtensibleStatementHelper
getExtensibleStatementHelper()
String
getHostname()
String
getIndex()
int
getPort()
protected void
initializeInternal()
Do store-specific operations to initialize the store.boolean
isWritable()
Checks whether this Sail object is writable, i.e.void
setElasticsearchBulkSize(int size)
void
setElasticsearchScrollTimeout(int timeout)
protected void
shutDownInternal()
Do store-specific operations to ensure proper shutdown of the store.void
waitForElasticsearch(int time, TemporalUnit timeUnit)
-
Methods inherited from class org.eclipse.rdf4j.sail.extensiblestore.ExtensibleStore
getDefaultIsolationLevel, getEvaluationStatisticsType, getEvaluationStrategyFactory, getFederatedServiceResolver, getSupportedIsolationLevels, getValueFactory, setEvaluationStrategyFactory, setFederatedServiceResolver
-
Methods inherited from class org.eclipse.rdf4j.sail.helpers.AbstractNotifyingSail
addSailChangedListener, getConnection, notifySailChanged, removeSailChangedListener
-
Methods inherited from class org.eclipse.rdf4j.sail.helpers.AbstractSail
addSupportedIsolationLevel, connectionClosed, debugEnabled, getDataDir, getIterationCacheSyncThreshold, init, isInitialized, isTrackResultSize, removeSupportedIsolationLevel, setConnectionTimeOut, setDataDir, setDefaultIsolationLevel, setIterationCacheSyncThreshold, setSupportedIsolationLevels, setSupportedIsolationLevels, setTrackResultSize, shutDown, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.sail.Sail
getDataDir, init, setDataDir, shutDown
-
-
-
-
Constructor Detail
-
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 Detail
-
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 classExtensibleStore<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 classExtensibleStore<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 classAbstractNotifyingSail
- 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 classExtensibleStore<org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchDataStructure,org.eclipse.rdf4j.sail.elasticsearchstore.ElasticsearchNamespaceStore>
-
-