Package org.elasticsearch.client.graph
Class GraphExploreRequest
java.lang.Object
org.elasticsearch.client.graph.GraphExploreRequest
- All Implemented Interfaces:
IndicesRequest
,IndicesRequest.Replaceable
,Validatable
,org.elasticsearch.xcontent.ToXContent
,org.elasticsearch.xcontent.ToXContentObject
public class GraphExploreRequest
extends Object
implements IndicesRequest.Replaceable, org.elasticsearch.xcontent.ToXContentObject, Validatable
Holds the criteria required to guide the exploration of connected terms which
can be returned as a graph.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.elasticsearch.action.IndicesRequest
IndicesRequest.Replaceable
Nested classes/interfaces inherited from interface org.elasticsearch.xcontent.ToXContent
org.elasticsearch.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.xcontent.ToXContent.MapParams, org.elasticsearch.xcontent.ToXContent.Params
-
Field Summary
Fields inherited from interface org.elasticsearch.xcontent.ToXContent
EMPTY_PARAMS
Fields inherited from interface org.elasticsearch.client.Validatable
EMPTY
-
Constructor Summary
ConstructorDescriptionGraphExploreRequest
(String... indices) Constructs a new graph request to run against the provided indices. -
Method Summary
Modifier and TypeMethodDescriptioncreateNextHop
(QueryBuilder guidingQuery) Add a stage in the graph exploration.getHop
(int hopNumber) int
String[]
indices()
indicesOptions
(IndicesOptions indicesOptions) int
void
maxDocsPerDiversityValue
(int maxDocs) Optional number of permitted docs with same value in sampled search results.boolean
void
returnDetailedInfo
(boolean value) Return detailed information about vertex frequencies as part of JSON results - defaults to falserouting()
void
sampleDiversityField
(String name) Optional choice of single-value field on which to diversify sampled search resultsint
void
sampleSize
(int maxNumberOfDocsPerHop) The number of top-matching documents that are considered during each hop (default isSamplerAggregationBuilder.DEFAULT_SHARD_SAMPLE_SIZE
Very small values (less than 50) may not provide sufficient weight-of-evidence to identify significant connections between terms.org.elasticsearch.core.TimeValue
timeout()
timeout
(org.elasticsearch.core.TimeValue timeout) Graph exploration can be set to timeout after the given period.toString()
org.elasticsearch.xcontent.XContentBuilder
toXContent
(org.elasticsearch.xcontent.XContentBuilder builder, org.elasticsearch.xcontent.ToXContent.Params params) String[]
types()
Deprecated.Types are in the process of being removed.Deprecated.Types are in the process of being removed.boolean
void
useSignificance
(boolean value) Controls the choice of algorithm used to select interesting terms.validate()
Perform validation.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.elasticsearch.action.IndicesRequest
includeDataStreams
Methods inherited from interface org.elasticsearch.action.IndicesRequest.Replaceable
allowsRemoteIndices
Methods inherited from interface org.elasticsearch.xcontent.ToXContentObject
isFragment
-
Field Details
-
NO_HOPS_ERROR_MESSAGE
- See Also:
-
NO_VERTICES_ERROR_MESSAGE
- See Also:
-
-
Constructor Details
-
GraphExploreRequest
public GraphExploreRequest() -
GraphExploreRequest
Constructs a new graph request to run against the provided indices. No indices means it will run against all indices.
-
-
Method Details
-
validate
Description copied from interface:Validatable
Perform validation. This method does not have to be overridden in the event that no validation needs to be done, or the validation was done during object construction time. AValidationException
that is not null is assumed to contain validation errors and will be thrown.- Specified by:
validate
in interfaceValidatable
- Returns:
- An
Optional
ValidationException
that contains a list of validation errors.
-
indices
- Specified by:
indices
in interfaceIndicesRequest
-
indices
- Specified by:
indices
in interfaceIndicesRequest.Replaceable
-
indicesOptions
- Specified by:
indicesOptions
in interfaceIndicesRequest
-
indicesOptions
-
types
Deprecated.Types are in the process of being removed. Instead of using a type, prefer to filter on a field on the document.The document types to execute the explore against. Defaults to be executed against all types. -
types
Deprecated.Types are in the process of being removed. Instead of using a type, prefer to filter on a field on the document.The document types to execute the explore request against. Defaults to be executed against all types. -
routing
-
routing
-
routing
-
timeout
public org.elasticsearch.core.TimeValue timeout() -
timeout
Graph exploration can be set to timeout after the given period. Search operations involved in each hop are limited to the remaining time available but can still overrun due to the nature of their "best efforts" timeout support. When a timeout occurs partial results are returned.- Parameters:
timeout
- aTimeValue
object which determines the maximum length of time to spend exploring
-
timeout
-
toString
-
sampleSize
public void sampleSize(int maxNumberOfDocsPerHop) The number of top-matching documents that are considered during each hop (default isSamplerAggregationBuilder.DEFAULT_SHARD_SAMPLE_SIZE
Very small values (less than 50) may not provide sufficient weight-of-evidence to identify significant connections between terms.Very large values (many thousands) are not recommended with loosely defined queries (fuzzy queries or those with many OR clauses). This is because any useful signals in the best documents are diluted with irrelevant noise from low-quality matches. Performance is also typically better with smaller samples as there are less look-ups required for background frequencies of terms found in the documents
- Parameters:
maxNumberOfDocsPerHop
- shard-level sample size in documents
-
sampleSize
public int sampleSize() -
sampleDiversityField
Optional choice of single-value field on which to diversify sampled search results -
sampleDiversityField
-
maxDocsPerDiversityValue
public void maxDocsPerDiversityValue(int maxDocs) Optional number of permitted docs with same value in sampled search results. Must also declare which field using sampleDiversityField -
maxDocsPerDiversityValue
public int maxDocsPerDiversityValue() -
useSignificance
public void useSignificance(boolean value) Controls the choice of algorithm used to select interesting terms. The default value is true which means terms are selected based on significance (see theSignificantTerms
aggregation) rather than popularity (using theTermsAggregator
).- Parameters:
value
- true if the significant_terms algorithm should be used.
-
useSignificance
public boolean useSignificance() -
returnDetailedInfo
public void returnDetailedInfo(boolean value) Return detailed information about vertex frequencies as part of JSON results - defaults to false- Parameters:
value
- true if detailed information is required in JSON responses
-
returnDetailedInfo
public boolean returnDetailedInfo() -
createNextHop
Add a stage in the graph exploration. Each hop represents a stage of querying elasticsearch to identify terms which can then be connnected to other terms in a subsequent hop.- Parameters:
guidingQuery
- optional choice of query which influences which documents are considered in this stage- Returns:
- a
Hop
object that holds settings for a stage in the graph exploration
-
getHopNumbers
public int getHopNumbers() -
getHop
-
toXContent
public org.elasticsearch.xcontent.XContentBuilder toXContent(org.elasticsearch.xcontent.XContentBuilder builder, org.elasticsearch.xcontent.ToXContent.Params params) throws IOException - Specified by:
toXContent
in interfaceorg.elasticsearch.xcontent.ToXContent
- Throws:
IOException
-