Package org.elasticsearch.client.graph
Class Hop
java.lang.Object
org.elasticsearch.client.graph.Hop
- All Implemented Interfaces:
org.elasticsearch.common.xcontent.ToXContent
,org.elasticsearch.common.xcontent.ToXContentFragment
public class Hop
extends java.lang.Object
implements org.elasticsearch.common.xcontent.ToXContentFragment
A Hop represents one of potentially many stages in a graph exploration.
Each Hop identifies one or more fields in which it will attempt to find
terms that are significantly connected to the previous Hop. Each field is identified
using a
VertexRequest
An example series of Hops on webserver logs would be:
- an initial Hop to find the top ten IPAddresses trying to access urls containing the word "admin"
- a secondary Hop to see which other URLs those IPAddresses were trying to access
Optionally, each hop can contain a "guiding query" that further limits the set of documents considered. In our weblog example above we might choose to constrain the second hop to only look at log records that had a reponse code of 404.
If absent, the list of VertexRequest
s is inherited from the prior Hop's list to avoid repeating
the fields that will be examined at each stage.
-
Nested Class Summary
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description VertexRequest
addVertexRequest(java.lang.String fieldName)
Add a field in which thisHop
will look for terms that are highly linked to previous hops and optionally the guiding query.protected java.util.List<VertexRequest>
getEffectiveVertexRequests()
int
getNumberVertexRequests()
Hop
getParentHop()
VertexRequest
getVertexRequest(int requestNumber)
org.elasticsearch.index.query.QueryBuilder
guidingQuery()
void
guidingQuery(org.elasticsearch.index.query.QueryBuilder queryBuilder)
An optional parameter that focuses the exploration on documents that match the given query.org.elasticsearch.common.xcontent.XContentBuilder
toXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
void
validate(ValidationException validationException)
-
Constructor Details
-
Method Details
-
validate
-
getParentHop
-
guidingQuery
public org.elasticsearch.index.query.QueryBuilder guidingQuery() -
addVertexRequest
Add a field in which thisHop
will look for terms that are highly linked to previous hops and optionally the guiding query.- Parameters:
fieldName
- a field in the chosen index
-
guidingQuery
public void guidingQuery(org.elasticsearch.index.query.QueryBuilder queryBuilder)An optional parameter that focuses the exploration on documents that match the given query.- Parameters:
queryBuilder
- any query
-
getEffectiveVertexRequests
-
getNumberVertexRequests
public int getNumberVertexRequests() -
getVertexRequest
-
toXContent
public org.elasticsearch.common.xcontent.XContentBuilder toXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws java.io.IOException- Specified by:
toXContent
in interfaceorg.elasticsearch.common.xcontent.ToXContent
- Throws:
java.io.IOException
-