22 #ifndef Hypertable_Master_BalanceAlgorithmLoad_h
23 #define Hypertable_Master_BalanceAlgorithmLoad_h
45 std::vector<RangeServerStatistics> &statistics);
48 std::vector<RangeServerConnectionPtr> &balanced);
104 RangeSetDescLoad &ranges_desc_load);
108 double range_loadestimate,
double mean_loadavg);
122 #endif // Hypertable_Master_BalanceAlgorithmLoad_h
bool check_move(const ServerMetricSummary &source, const ServerMetricSummary &destination, double range_loadestimate, double mean_loadavg)
void calculate_range_summary(const Lib::RS_METRICS::RangeMetrics &metrics, RangeMetricSummary &summary)
std::shared_ptr< BalancePlan > BalancePlanPtr
std::map< String, RangeMetrics > RangeMetricsMap
Declarations for ServerMetrics.
Declarations for RangeMetrics.
virtual void compute_plan(BalancePlanPtr &plan, std::vector< RangeServerConnectionPtr > &balanced)
std::shared_ptr< Context > ContextPtr
Smart pointer to Context.
std::multiset< RangeMetricSummary, GtRangeMetricSummary > RangeSetDescLoad
double loadavg_per_loadestimate
void calculate_server_summary(const Lib::RS_METRICS::ServerMetrics &metrics, ServerMetricSummary &summary)
std::multiset< ServerMetricSummary, GtServerMetricSummary > ServerSetDescLoad
std::ostream & operator<<(std::ostream &os, const crontab_entry &entry)
Helper function to write crontab_entry to an ostream.
Aggregates metrics for an individual range.
double m_loadavg_deviation_threshold
std::map< String, RangeServerStatistics > StatisticsSet
BalanceAlgorithmLoad(ContextPtr &context, std::vector< RangeServerStatistics > &statistics)
bool operator()(const RangeMetricSummary &x, const RangeMetricSummary &y) const
Aggregates metrics for an individual RangeServer.
bool operator()(const ServerMetricSummary &x, const ServerMetricSummary &y) const
Declarations for Context.
void populate_range_load_set(const Lib::RS_METRICS::RangeMetricsMap &range_metrics, RangeSetDescLoad &ranges_desc_load)