public interface AppenderatorsManager
Appenderator instances.
The AppenderatorsManager should be used by tasks running in a Peon or an CliIndexer process when it needs
an Appenderator.
The AppenderatorsManager also provides methods for creating QueryRunner instances that read the data
held by the Appenderators created through the AppenderatorsManager.
In later updates, this interface will be used to manage memory usage across multiple Appenderators,
useful for the Indexer where all Tasks run in the same process.
The methods on AppenderatorsManager can be called by multiple threads.
This class provides similar functionality to the ServerManager and
SegmentManager on the Historical processes.| Modifier and Type | Method and Description |
|---|---|
Appenderator |
createClosedSegmentsOfflineAppenderatorForTask(String taskId,
DataSchema schema,
AppenderatorConfig config,
FireDepartmentMetrics metrics,
DataSegmentPusher dataSegmentPusher,
com.fasterxml.jackson.databind.ObjectMapper objectMapper,
IndexIO indexIO,
IndexMerger indexMerger,
RowIngestionMeters rowIngestionMeters,
ParseExceptionHandler parseExceptionHandler) |
Appenderator |
createOfflineAppenderatorForTask(String taskId,
DataSchema schema,
AppenderatorConfig config,
FireDepartmentMetrics metrics,
DataSegmentPusher dataSegmentPusher,
com.fasterxml.jackson.databind.ObjectMapper objectMapper,
IndexIO indexIO,
IndexMerger indexMerger,
RowIngestionMeters rowIngestionMeters,
ParseExceptionHandler parseExceptionHandler) |
Appenderator |
createOpenSegmentsOfflineAppenderatorForTask(String taskId,
DataSchema schema,
AppenderatorConfig config,
FireDepartmentMetrics metrics,
DataSegmentPusher dataSegmentPusher,
com.fasterxml.jackson.databind.ObjectMapper objectMapper,
IndexIO indexIO,
IndexMerger indexMerger,
RowIngestionMeters rowIngestionMeters,
ParseExceptionHandler parseExceptionHandler)
Creates an Appenderator suited for batch ingestion.
|
Appenderator |
createRealtimeAppenderatorForTask(String taskId,
DataSchema schema,
AppenderatorConfig config,
FireDepartmentMetrics metrics,
DataSegmentPusher dataSegmentPusher,
com.fasterxml.jackson.databind.ObjectMapper objectMapper,
IndexIO indexIO,
IndexMerger indexMerger,
QueryRunnerFactoryConglomerate conglomerate,
DataSegmentAnnouncer segmentAnnouncer,
ServiceEmitter emitter,
QueryProcessingPool queryProcessingPool,
JoinableFactory joinableFactory,
Cache cache,
CacheConfig cacheConfig,
CachePopulatorStats cachePopulatorStats,
RowIngestionMeters rowIngestionMeters,
ParseExceptionHandler parseExceptionHandler)
Creates an Appenderator suited for realtime ingestion.
|
<T> QueryRunner<T> |
getQueryRunnerForIntervals(Query<T> query,
Iterable<org.joda.time.Interval> intervals)
Returns a query runner for the given intervals over the Appenderators managed by this AppenderatorsManager.
|
<T> QueryRunner<T> |
getQueryRunnerForSegments(Query<T> query,
Iterable<SegmentDescriptor> specs)
Returns a query runner for the given segment specs over the Appenderators managed by this AppenderatorsManager.
|
void |
removeAppenderatorsForTask(String taskId,
String dataSource)
Removes any internal Appenderator-tracking state associated with the provided taskId.
|
boolean |
shouldTaskMakeNodeAnnouncements()
As AppenderatorsManager implementions are service dependent (i.e., Peons and Indexers have different impls),
this method allows Tasks to know whether they should announce themselves as nodes and segment servers
to the rest of the cluster.
|
void |
shutdown()
Shut down the AppenderatorsManager.
|
Appenderator createRealtimeAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, IndexIO indexIO, IndexMerger indexMerger, QueryRunnerFactoryConglomerate conglomerate, DataSegmentAnnouncer segmentAnnouncer, ServiceEmitter emitter, QueryProcessingPool queryProcessingPool, JoinableFactory joinableFactory, Cache cache, CacheConfig cacheConfig, CachePopulatorStats cachePopulatorStats, RowIngestionMeters rowIngestionMeters, ParseExceptionHandler parseExceptionHandler)
Appenderator createOpenSegmentsOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, IndexIO indexIO, IndexMerger indexMerger, RowIngestionMeters rowIngestionMeters, ParseExceptionHandler parseExceptionHandler)
Appenderator createClosedSegmentsOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, IndexIO indexIO, IndexMerger indexMerger, RowIngestionMeters rowIngestionMeters, ParseExceptionHandler parseExceptionHandler)
Appenderator createOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, IndexIO indexIO, IndexMerger indexMerger, RowIngestionMeters rowIngestionMeters, ParseExceptionHandler parseExceptionHandler)
void removeAppenderatorsForTask(String taskId, String dataSource)
<T> QueryRunner<T> getQueryRunnerForIntervals(Query<T> query, Iterable<org.joda.time.Interval> intervals)
<T> QueryRunner<T> getQueryRunnerForSegments(Query<T> query, Iterable<SegmentDescriptor> specs)
boolean shouldTaskMakeNodeAnnouncements()
void shutdown()
Copyright © 2011–2021 The Apache Software Foundation. All rights reserved.