Class HybridSpout
java.lang.Object
org.apache.storm.topology.base.BaseComponent
org.apache.storm.topology.base.BaseRichSpout
com.digitalpebble.stormcrawler.persistence.AbstractQueryingSpout
com.digitalpebble.stormcrawler.opensearch.persistence.AbstractSpout
com.digitalpebble.stormcrawler.opensearch.persistence.AggregationSpout
com.digitalpebble.stormcrawler.opensearch.persistence.HybridSpout
- All Implemented Interfaces:
EmptyQueueListener,Serializable,org.apache.storm.spout.ISpout,org.apache.storm.topology.IComponent,org.apache.storm.topology.IRichSpout,org.opensearch.action.ActionListener<org.opensearch.action.search.SearchResponse>
Uses collapsing spouts to get an initial set of URLs and keys to query for and gets emptyQueue
notifications from the URLBuffer to query OpenSearch for a specific key.
- Since:
- 1.15
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.digitalpebble.stormcrawler.persistence.AbstractQueryingSpout
AbstractQueryingSpout.InProcessMap<K extends Object,V extends Object> -
Field Summary
FieldsFields inherited from class com.digitalpebble.stormcrawler.opensearch.persistence.AggregationSpout
currentBucketsFields inherited from class com.digitalpebble.stormcrawler.opensearch.persistence.AbstractSpout
bucketSortField, client, filterQueries, indexName, logIdprefix, maxBucketNum, maxURLsPerBucket, OSBoltType, OSStatusBucketFieldParamName, OSStatusBucketSortFieldParamName, OSStatusFilterParamName, OSStatusGlobalSortFieldParamName, OSStatusIndexNameParamName, OSStatusMaxBucketParamName, OSStatusMaxURLsParamName, OSStatusQueryTimeoutParamName, partitionField, queryDate, queryTimeout, shardID, totalSortFieldFields inherited from class com.digitalpebble.stormcrawler.persistence.AbstractQueryingSpout
_collector, beingProcessed, buffer, eventCounter, isInQuery, lastTimeResetToNOW, maxDelayBetweenQueries, minDelayBetweenQueries, queryTimes, resetFetchDateAfterNSecs, resetFetchDateParamName, StatusMaxDelayParamName, StatusMinDelayParamName, StatusTTLPurgatory -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidemptyQueue(String queueName) voidonResponse(org.opensearch.action.search.SearchResponse response) voidopen(Map<String, Object> stormConf, org.apache.storm.task.TopologyContext context, org.apache.storm.spout.SpoutOutputCollector collector) protected voidsortValuesForKey(String key, Object[] sortValues) Methods inherited from class com.digitalpebble.stormcrawler.opensearch.persistence.AggregationSpout
onFailure, populateBufferMethods inherited from class com.digitalpebble.stormcrawler.opensearch.persistence.AbstractSpout
ack, addHitToBuffer, close, fail, fromKeyValuesMethods inherited from class com.digitalpebble.stormcrawler.persistence.AbstractQueryingSpout
activate, deactivate, declareOutputFields, getTimeLastQuerySent, markQueryReceivedNow, nextTupleMethods inherited from class org.apache.storm.topology.base.BaseComponent
getComponentConfigurationMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.storm.topology.IComponent
getComponentConfiguration
-
Field Details
-
RELOADPARAMNAME
- See Also:
-
-
Constructor Details
-
HybridSpout
public HybridSpout()
-
-
Method Details
-
open
public void open(Map<String, Object> stormConf, org.apache.storm.task.TopologyContext context, org.apache.storm.spout.SpoutOutputCollector collector) - Specified by:
openin interfaceorg.apache.storm.spout.ISpout- Overrides:
openin classAggregationSpout
-
emptyQueue
- Specified by:
emptyQueuein interfaceEmptyQueueListener
-
onResponse
public void onResponse(org.opensearch.action.search.SearchResponse response) - Specified by:
onResponsein interfaceorg.opensearch.action.ActionListener<org.opensearch.action.search.SearchResponse>- Overrides:
onResponsein classAggregationSpout
-
sortValuesForKey
- Overrides:
sortValuesForKeyin classAggregationSpout
-