A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
pdb::Statistics Class Reference

#include <Statistics.h>

+ Collaboration diagram for pdb::Statistics:

Public Member Functions

 Statistics ()
 
 ~Statistics ()
 
void removeSet (std::string databaseName, std::string setName)
 
void addSet (std::string databaseName, std::string setName, DataStatistics &stats)
 
void addSetAlias (std::string databaseName, std::string setName, std::string aliasDatabase, std::string aliasSetName)
 
int getNumPages (std::string databaseName, std::string setName)
 
void setNumPages (std::string databaseName, std::string setName, int numPages)
 
size_t getPageSize (std::string databaseName, std::string setName)
 
void setPageSize (std::string databaseName, std::string setName, size_t pageSize)
 
size_t getNumBytes (std::string databaseName, std::string setName)
 
void incrementNumPages (std::string databaseName, std::string setName, size_t numPages)
 
void incrementNumBytes (std::string databaseName, std::string setName, size_t numBytes)
 
void setNumBytes (std::string databaseName, std::string setName, size_t numBytes)
 
int getNumTuples (std::string databaseName, std::string setName)
 
void setNumTuples (std::string databaseName, std::string setName, int numTuples)
 
size_t getAvgTupleSize (std::string databaseName, std::string setName)
 
void setAvgTupleSize (std::string databaseName, std::string setName, size_t avgTupleSize)
 
double getAtomicComputationSelectivity (std::string atomicComputationType)
 
void setAtomicComputationSelectivity (std::string atomicComputationType, double selectivity)
 
double getLambdaSelectivity (std::string lambdaType)
 
void setLambdaSelectivity (std::string lambdaType, double selectivity)
 
void printSets ()
 

Private Attributes

std::unordered_map
< std::string, DataStatistics
dataStatistics
 
std::unordered_map
< std::string, double > 
atomicComputationSelectivity
 
std::unordered_map
< std::string, double > 
lambdaSelectivity
 
pthread_mutex_t mutex
 

Detailed Description

Definition at line 43 of file Statistics.h.

Constructor & Destructor Documentation

pdb::Statistics::Statistics ( )
inline

Definition at line 53 of file Statistics.h.

pdb::Statistics::~Statistics ( )
inline

Definition at line 56 of file Statistics.h.

Member Function Documentation

void pdb::Statistics::addSet ( std::string  databaseName,
std::string  setName,
DataStatistics stats 
)
inline

Definition at line 66 of file Statistics.h.

void pdb::Statistics::addSetAlias ( std::string  databaseName,
std::string  setName,
std::string  aliasDatabase,
std::string  aliasSetName 
)
inline

Adds an alias to the specified set

Parameters
databaseName- the database the orignal set belongs to
setName- the original set
aliasDatabase- the new sets database name
aliasSetName- the new set name

Definition at line 78 of file Statistics.h.

double pdb::Statistics::getAtomicComputationSelectivity ( std::string  atomicComputationType)
inline

Definition at line 199 of file Statistics.h.

size_t pdb::Statistics::getAvgTupleSize ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 180 of file Statistics.h.

double pdb::Statistics::getLambdaSelectivity ( std::string  lambdaType)
inline

Definition at line 216 of file Statistics.h.

size_t pdb::Statistics::getNumBytes ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 126 of file Statistics.h.

int pdb::Statistics::getNumPages ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 88 of file Statistics.h.

int pdb::Statistics::getNumTuples ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 161 of file Statistics.h.

size_t pdb::Statistics::getPageSize ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 107 of file Statistics.h.

void pdb::Statistics::incrementNumBytes ( std::string  databaseName,
std::string  setName,
size_t  numBytes 
)
inline

Definition at line 144 of file Statistics.h.

void pdb::Statistics::incrementNumPages ( std::string  databaseName,
std::string  setName,
size_t  numPages 
)
inline

Definition at line 136 of file Statistics.h.

void pdb::Statistics::printSets ( )
inline

This method prints out all the sets in the statistics object

Definition at line 234 of file Statistics.h.

void pdb::Statistics::removeSet ( std::string  databaseName,
std::string  setName 
)
inline

Definition at line 59 of file Statistics.h.

void pdb::Statistics::setAtomicComputationSelectivity ( std::string  atomicComputationType,
double  selectivity 
)
inline

Definition at line 208 of file Statistics.h.

void pdb::Statistics::setAvgTupleSize ( std::string  databaseName,
std::string  setName,
size_t  avgTupleSize 
)
inline

Definition at line 190 of file Statistics.h.

void pdb::Statistics::setLambdaSelectivity ( std::string  lambdaType,
double  selectivity 
)
inline

Definition at line 225 of file Statistics.h.

void pdb::Statistics::setNumBytes ( std::string  databaseName,
std::string  setName,
size_t  numBytes 
)
inline

Definition at line 152 of file Statistics.h.

void pdb::Statistics::setNumPages ( std::string  databaseName,
std::string  setName,
int  numPages 
)
inline

Definition at line 98 of file Statistics.h.

void pdb::Statistics::setNumTuples ( std::string  databaseName,
std::string  setName,
int  numTuples 
)
inline

Definition at line 171 of file Statistics.h.

void pdb::Statistics::setPageSize ( std::string  databaseName,
std::string  setName,
size_t  pageSize 
)
inline

Definition at line 117 of file Statistics.h.

Member Data Documentation

std::unordered_map<std::string, double> pdb::Statistics::atomicComputationSelectivity
private

Definition at line 47 of file Statistics.h.

std::unordered_map<std::string, DataStatistics> pdb::Statistics::dataStatistics
private

Definition at line 46 of file Statistics.h.

std::unordered_map<std::string, double> pdb::Statistics::lambdaSelectivity
private

Definition at line 48 of file Statistics.h.

pthread_mutex_t pdb::Statistics::mutex
private

Definition at line 49 of file Statistics.h.


The documentation for this class was generated from the following file: