Package org.elasticsearch.client.graph
Class GraphExploreRequest
- java.lang.Object
-
- org.elasticsearch.client.graph.GraphExploreRequest
-
- All Implemented Interfaces:
IndicesRequest
,IndicesRequest.Replaceable
,Validatable
,ToXContent
,ToXContentObject
public class GraphExploreRequest extends java.lang.Object implements IndicesRequest.Replaceable, 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 Modifier and Type Class Description static class
GraphExploreRequest.TermBoost
-
Nested classes/interfaces inherited from interface org.elasticsearch.action.IndicesRequest
IndicesRequest.Replaceable
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
NO_HOPS_ERROR_MESSAGE
static java.lang.String
NO_VERTICES_ERROR_MESSAGE
-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
Fields inherited from interface org.elasticsearch.client.Validatable
EMPTY
-
-
Constructor Summary
Constructors Constructor Description GraphExploreRequest()
GraphExploreRequest(java.lang.String... indices)
Constructs a new graph request to run against the provided indices.
-
Method Summary
Modifier and Type Method Description Hop
createNextHop(QueryBuilder guidingQuery)
Add a stage in the graph exploration.Hop
getHop(int hopNumber)
int
getHopNumbers()
java.lang.String[]
indices()
GraphExploreRequest
indices(java.lang.String... indices)
IndicesOptions
indicesOptions()
GraphExploreRequest
indicesOptions(IndicesOptions indicesOptions)
int
maxDocsPerDiversityValue()
void
maxDocsPerDiversityValue(int maxDocs)
Optional number of permitted docs with same value in sampled search results.boolean
returnDetailedInfo()
void
returnDetailedInfo(boolean value)
Return detailed information about vertex frequencies as part of JSON results - defaults to falsejava.lang.String
routing()
GraphExploreRequest
routing(java.lang.String routing)
GraphExploreRequest
routing(java.lang.String... routings)
java.lang.String
sampleDiversityField()
void
sampleDiversityField(java.lang.String name)
Optional choice of single-value field on which to diversify sampled search resultsint
sampleSize()
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.TimeValue
timeout()
GraphExploreRequest
timeout(java.lang.String timeout)
GraphExploreRequest
timeout(TimeValue timeout)
Graph exploration can be set to timeout after the given period.java.lang.String
toString()
XContentBuilder
toXContent(XContentBuilder builder, ToXContent.Params params)
java.lang.String[]
types()
GraphExploreRequest
types(java.lang.String... types)
boolean
useSignificance()
void
useSignificance(boolean value)
Controls the choice of algorithm used to select interesting terms.java.util.Optional<ValidationException>
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.common.xcontent.ToXContentObject
isFragment
-
-
-
-
Field Detail
-
NO_HOPS_ERROR_MESSAGE
public static final java.lang.String NO_HOPS_ERROR_MESSAGE
- See Also:
- Constant Field Values
-
NO_VERTICES_ERROR_MESSAGE
public static final java.lang.String NO_VERTICES_ERROR_MESSAGE
- See Also:
- Constant Field Values
-
-
Method Detail
-
validate
public java.util.Optional<ValidationException> 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
public java.lang.String[] indices()
- Specified by:
indices
in interfaceIndicesRequest
-
indices
public GraphExploreRequest indices(java.lang.String... indices)
- Specified by:
indices
in interfaceIndicesRequest.Replaceable
-
indicesOptions
public IndicesOptions indicesOptions()
- Specified by:
indicesOptions
in interfaceIndicesRequest
-
indicesOptions
public GraphExploreRequest indicesOptions(IndicesOptions indicesOptions)
-
types
public java.lang.String[] types()
-
types
public GraphExploreRequest types(java.lang.String... types)
-
routing
public java.lang.String routing()
-
routing
public GraphExploreRequest routing(java.lang.String routing)
-
routing
public GraphExploreRequest routing(java.lang.String... routings)
-
timeout
public TimeValue timeout()
-
timeout
public GraphExploreRequest timeout(TimeValue 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
public GraphExploreRequest timeout(java.lang.String timeout)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
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
public void sampleDiversityField(java.lang.String name)
Optional choice of single-value field on which to diversify sampled search results
-
sampleDiversityField
public java.lang.String 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
public Hop createNextHop(QueryBuilder guidingQuery)
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
public Hop getHop(int hopNumber)
-
toXContent
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
- Specified by:
toXContent
in interfaceToXContent
- Throws:
java.io.IOException
-
-