Column-oriented GPU-accelerated Database Management System
CoGaDB
CoGaDB::LookupTable Class Reference

#include <lookup_table.hpp>

Inheritance diagram for CoGaDB::LookupTable:
Collaboration diagram for CoGaDB::LookupTable:

List of all members.

Public Types

typedef
shared_pointer_namespace::shared_ptr
< LookupTable
LookupTablePtr

Public Member Functions

 LookupTable (const std::string &name, const TableSchema &schema, const std::vector< LookupColumnPtr > &lookup_columns, const std::vector< ColumnPtr > lookup_arrays_, const std::vector< ColumnPtr > dense_value_arrays=std::vector< ColumnPtr >())
virtual ~LookupTable ()
virtual void print ()
virtual bool store ()
virtual bool load ()
virtual bool loadDatafromFile (std::string filepath)
virtual const TablePtr materialize () const
virtual bool addColumn (ColumnPtr)
virtual bool isMaterialized () const throw ()
virtual const Tuple fetchTuple (const TID &id) const
virtual bool insert (const Tuple &t)
virtual bool update (const std::string &attribute_name, const boost::any &value)
virtual bool remove (const std::string &attribute_name, const boost::any &value)
virtual const ColumnPtr getColumnbyName (const std::string &column_name) const throw ()
const std::vector
< LookupColumnPtr > & 
getLookupColumns () const
const ColumnVectorgetDenseValueColumns ()

Static Public Member Functions

static const LookupTablePtr aggregate (const std::string &result_lookup_table_name, const LookupTable &lookup_table, const LookupColumn &lookup_col)
 aggregates LookupTable wrt Lookup Column, which indexes the LookupTable. IT takes care of copying the LookupColumns and their corresponding PostitionList. Furthermore, it calls functions which createa new LookupArraylist, which represents the columns of the Table (a view, to be more precise) represented by the Lookup Table
static const LookupTablePtr concatenate (const std::string &result_lookup_table_name, const LookupTable &lookup_table1, const LookupTable &lookup_table2)

Protected Member Functions

virtual const std::vector
< ColumnPtr > & 
getColumns () const
const ColumnVectorPtr getLookupArrays ()

Private Attributes

std::vector< LookupColumnPtrlookup_columns_
std::vector< ColumnPtrlookup_arrays_to_real_columns_
std::vector< ColumnPtrappended_dense_value_columns_
std::vector< ColumnPtrall_columns_

Member Typedef Documentation

typedef shared_pointer_namespace::shared_ptr<LookupTable> CoGaDB::LookupTable::LookupTablePtr

Constructor & Destructor Documentation

CoGaDB::LookupTable::LookupTable ( const std::string &  name,
const TableSchema schema,
const std::vector< LookupColumnPtr > &  lookup_columns,
const std::vector< ColumnPtr lookup_arrays_,
const std::vector< ColumnPtr dense_value_arrays = std::vector<ColumnPtr>() 
)

References all_columns_, appended_dense_value_columns_, and lookup_arrays_to_real_columns_.

Referenced by aggregate(), and concatenate().

Here is the caller graph for this function:


Member Function Documentation

const LookupTablePtr CoGaDB::LookupTable::aggregate ( const std::string &  result_lookup_table_name,
const LookupTable lookup_table,
const LookupColumn lookup_col 
) [static]

aggregates LookupTable wrt Lookup Column, which indexes the LookupTable. IT takes care of copying the LookupColumns and their corresponding PostitionList. Furthermore, it calls functions which createa new LookupArraylist, which represents the columns of the Table (a view, to be more precise) represented by the Lookup Table

References appended_dense_value_columns_, CoGaDB::BaseTable::getSchema(), lookup_columns_, and LookupTable().

Referenced by CoGaDB::createLookupTableforUnaryOperation().

Here is the call graph for this function:

Here is the caller graph for this function:

const LookupTablePtr CoGaDB::LookupTable::concatenate ( const std::string &  result_lookup_table_name,
const LookupTable lookup_table1,
const LookupTable lookup_table2 
) [static]
const Tuple CoGaDB::LookupTable::fetchTuple ( const TID id) const [virtual]

Implements CoGaDB::BaseTable.

References appended_dense_value_columns_, and lookup_arrays_to_real_columns_.

Referenced by materialize().

Here is the caller graph for this function:

const ColumnPtr CoGaDB::LookupTable::getColumnbyName ( const std::string &  column_name) const throw () [virtual]

Implements CoGaDB::BaseTable.

References COGADB_ERROR, CoGaDB::util::getName(), CoGaDB::quiet, and CoGaDB::verbose.

Here is the call graph for this function:

const std::vector< ColumnPtr > & CoGaDB::LookupTable::getColumns ( ) const [protected, virtual]

Implements CoGaDB::BaseTable.

References all_columns_.

const std::vector< LookupColumnPtr > & CoGaDB::LookupTable::getLookupColumns ( ) const

References lookup_columns_.

bool CoGaDB::LookupTable::insert ( const Tuple t) [virtual]

Implements CoGaDB::BaseTable.

bool CoGaDB::LookupTable::isMaterialized ( ) const throw () [virtual]

Implements CoGaDB::BaseTable.

bool CoGaDB::LookupTable::load ( ) [virtual]

tries to load table form database

Implements CoGaDB::BaseTable.

bool CoGaDB::LookupTable::loadDatafromFile ( std::string  filepath) [virtual]

Implements CoGaDB::BaseTable.

const TablePtr CoGaDB::LookupTable::materialize ( ) const [virtual]

Implements CoGaDB::BaseTable.

References fetchTuple(), CoGaDB::BaseTable::getName(), CoGaDB::BaseTable::getSchema(), and lookup_arrays_to_real_columns_.

Here is the call graph for this function:

bool CoGaDB::LookupTable::remove ( const std::string &  attribute_name,
const boost::any &  value 
) [virtual]

Implements CoGaDB::BaseTable.

bool CoGaDB::LookupTable::store ( ) [virtual]

tries to store table in database

Implements CoGaDB::BaseTable.

bool CoGaDB::LookupTable::update ( const std::string &  attribute_name,
const boost::any &  value 
) [virtual]

Implements CoGaDB::BaseTable.


Member Data Documentation


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines