All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends
Public Types | Public Member Functions | Public Attributes | List of all members
Akumuli::QP::ScanQueryProcessor Struct Reference

#include <queryprocessor.h>

Inheritance diagram for Akumuli::QP::ScanQueryProcessor:

Public Types

typedef StringTools::StringT StringT
typedef StringTools::TableT TableT

Public Member Functions

 ScanQueryProcessor (std::vector< std::shared_ptr< Node >> nodes, std::string metric, aku_Timestamp begin, aku_Timestamp end, QueryRange::QueryRangeType type, std::shared_ptr< IQueryFilter > filter, GroupByTime groupby, std::unique_ptr< GroupByTag > groupbytag)
QueryRange range () const
IQueryFilterfilter ()
 Return query filter.
SeriesMatchermatcher ()
bool start ()
bool put (const aku_Sample &sample)
 Process value.
void stop ()
 Should be called when processing completed.
void set_error (aku_Status error)
 Set execution error.

Public Attributes

QueryRange range_
 Query range clause data (upperbound, lowerbound, direction, query type)
const std::string metric_
 Name of the metrics of interest.
TableT namesofinterest_
 Name to id mapping.
GroupByTime groupby_
 Group-by-time statement.
std::shared_ptr< IQueryFilterfilter_
std::shared_ptr< Noderoot_node_
 Root of the processing topology.
std::shared_ptr< Nodelast_node_
 Final of the processing topology.
std::unique_ptr< GroupByTaggroupby_tag_

Detailed Description

Numeric data query processor. Can be used to return raw data from HDD or derivatives (Depending on the list of processing nodes).

Constructor & Destructor Documentation

Akumuli::QP::ScanQueryProcessor::ScanQueryProcessor ( std::vector< std::shared_ptr< Node >>  nodes,
std::string  metric,
aku_Timestamp  begin,
aku_Timestamp  end,
QueryRange::QueryRangeType  type,
std::shared_ptr< IQueryFilter filter,
GroupByTime  groupby,
std::unique_ptr< GroupByTag groupbytag 

Create new query processor.

rootis a root of the processing topology
metricis a name of the metric of interest
beginis a timestamp to begin from
endis a timestamp to end with (depending on a scan direction can be greater or smaller then lo)

Member Function Documentation

SeriesMatcher * Akumuli::QP::ScanQueryProcessor::matcher ( )

Returns series matcher to override global one for query execution. If override is not needed - return nullptr.

Implements Akumuli::QP::IQueryProcessor.

bool Akumuli::QP::ScanQueryProcessor::start ( )

Will be called before query execution starts. If result already obtained - return False. In this case stop method shouldn't be called at the end.

Implements Akumuli::QP::IQueryProcessor.

The documentation for this struct was generated from the following files: