Column-oriented GPU-accelerated Database Management System
CoGaDB
|
#include <delta_compressed_column.hpp>
Public Member Functions | |
DeltaCompressedColumn (const std::string &name, AttributeType db_type) | |
~DeltaCompressedColumn () | |
bool | insert (const boost::any &new_Value) |
appends a value new_Value to end of column | |
bool | insert (const T &new_value) |
template<typename InputIterator > | |
bool | insert (InputIterator first, InputIterator last) |
bool | update (TID tid, const boost::any &new_value) |
updates the value on position tid with a value new_Value | |
bool | update (PositionListPtr tid, const boost::any &new_value) |
updates the values specified by the position list with a value new_Value | |
bool | remove (TID tid) |
deletes the value on position tid | |
bool | remove (PositionListPtr tid) |
deletes the values defined in the position list | |
bool | clearContent () |
deletes all values stored in the column | |
const boost::any | get (TID tid) |
generic function for fetching a value form a column (slow) | |
void | print () const throw () |
prints the content of a column | |
size_t | size () const throw () |
returns the number of values (rows) in a column | |
unsigned int | getSizeinBytes () const throw () |
returns the size in bytes the column consumes in main memory | |
const ColumnPtr | copy () const |
virtual copy constructor | |
bool | store (const std::string &path) |
store a column on the disc | |
bool | load (const std::string &path) |
load column from disc | |
T & | operator[] (const int index) |
defines operator[] for this class, which enables the user to thread all typed columns as arrays. | |
DeltaCompressedColumn (const std::string &name, AttributeType db_type) | |
~DeltaCompressedColumn () | |
bool | insert (const boost::any &new_Value) |
appends a value new_Value to end of column | |
bool | insert (const T &new_value) |
template<typename InputIterator > | |
bool | insert (InputIterator first, InputIterator last) |
bool | update (TID tid, const boost::any &new_value) |
updates the value on position tid with a value new_Value | |
bool | update (PositionListPtr tid, const boost::any &new_value) |
updates the values specified by the position list with a value new_Value | |
bool | remove (TID tid) |
deletes the value on position tid | |
bool | remove (PositionListPtr tid) |
deletes the values defined in the position list | |
bool | clearContent () |
deletes all values stored in the column | |
const boost::any | get (TID tid) |
generic function for fetching a value form a column (slow) | |
void | print () const throw () |
prints the content of a column | |
size_t | size () const throw () |
returns the number of values (rows) in a column | |
unsigned int | getSizeinBytes () const throw () |
returns the size in bytes the column consumes in main memory | |
const ColumnPtr | copy () const |
virtual copy constructor | |
bool | store (const std::string &path) |
store a column on the disc | |
bool | load (const std::string &path) |
load column from disc | |
T & | operator[] (const int index) |
defines operator[] for this class, which enables the user to thread all typed columns as arrays. | |
Private Member Functions | |
void | compress_insert (uint new_value) |
void | compress_update (TID tid, const uint &new_value_) |
void | compress_update_part (uint &i, uint old_delta, uint new_delta) |
void | compress_delete (TID tid) |
uint | uncompress (const uint index) |
uint | decode (uint &index) |
const uint | encoded_length (const uint &cvalue) |
void | compress_insert (uint new_value) |
void | compress_update (TID tid, const uint &new_value_) |
void | compress_update_part (uint &i, uint old_delta, uint new_delta) |
void | compress_delete (TID tid) |
uint | uncompress (const uint index) |
uint | decode (uint &index) |
const uint | encoded_length (const uint &cvalue) |
Private Attributes | |
std::vector< uchar > | cvalues_ |
uint | size_ |
T | hack_last_uncompressed |
CoGaDB::DeltaCompressedColumn< T >::DeltaCompressedColumn | ( | const std::string & | name, |
AttributeType | db_type | ||
) |
References CoGaDB::DeltaCompressedColumn< T >::size_.
CoGaDB::DeltaCompressedColumn< T >::~DeltaCompressedColumn | ( | ) |
CoGaDB::DeltaCompressedColumn< T >::DeltaCompressedColumn | ( | const std::string & | name, |
AttributeType | db_type | ||
) |
CoGaDB::DeltaCompressedColumn< T >::~DeltaCompressedColumn | ( | ) |
bool CoGaDB::DeltaCompressedColumn< T >::clearContent | ( | ) | [virtual] |
deletes all values stored in the column
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::clearContent | ( | ) | [virtual] |
deletes all values stored in the column
Implements CoGaDB::CompressedColumn< T >.
void CoGaDB::DeltaCompressedColumn< T >::compress_delete | ( | TID | tid | ) | [private] |
void CoGaDB::DeltaCompressedColumn< T >::compress_delete | ( | TID | tid | ) | [private] |
void CoGaDB::DeltaCompressedColumn< T >::compress_insert | ( | uint | new_value | ) | [private] |
void CoGaDB::DeltaCompressedColumn< T >::compress_insert | ( | uint | new_value | ) | [private] |
void CoGaDB::DeltaCompressedColumn< T >::compress_update | ( | TID | tid, |
const uint & | new_value_ | ||
) | [private] |
void CoGaDB::DeltaCompressedColumn< T >::compress_update | ( | TID | tid, |
const uint & | new_value_ | ||
) | [private] |
Referenced by CoGaDB::DeltaCompressedColumn< std::string >::insert(), CoGaDB::DeltaCompressedColumn< std::string >::remove(), and CoGaDB::DeltaCompressedColumn< std::string >::update().
void CoGaDB::DeltaCompressedColumn< T >::compress_update_part | ( | uint & | i, |
uint | old_delta, | ||
uint | new_delta | ||
) | [private] |
void CoGaDB::DeltaCompressedColumn< T >::compress_update_part | ( | uint & | i, |
uint | old_delta, | ||
uint | new_delta | ||
) | [private] |
const ColumnPtr CoGaDB::DeltaCompressedColumn< T >::copy | ( | ) | const [virtual] |
virtual copy constructor
Implements CoGaDB::CompressedColumn< T >.
const ColumnPtr CoGaDB::DeltaCompressedColumn< T >::copy | ( | ) | const [virtual] |
virtual copy constructor
Implements CoGaDB::CompressedColumn< T >.
uint CoGaDB::DeltaCompressedColumn< T >::decode | ( | uint & | index | ) | [private] |
uint CoGaDB::DeltaCompressedColumn< T >::decode | ( | uint & | index | ) | [private] |
const uint CoGaDB::DeltaCompressedColumn< T >::encoded_length | ( | const uint & | cvalue | ) | [private] |
const uint CoGaDB::DeltaCompressedColumn< T >::encoded_length | ( | const uint & | cvalue | ) | [private] |
const boost::any CoGaDB::DeltaCompressedColumn< T >::get | ( | TID | tid | ) | [virtual] |
generic function for fetching a value form a column (slow)
check whether the object is valid (e.g., when a tid is not valid, then the returned object is invalid as well)
Implements CoGaDB::CompressedColumn< T >.
const boost::any CoGaDB::DeltaCompressedColumn< T >::get | ( | TID | tid | ) | [virtual] |
generic function for fetching a value form a column (slow)
check whether the object is valid (e.g., when a tid is not valid, then the returned object is invalid as well)
Implements CoGaDB::CompressedColumn< T >.
unsigned int CoGaDB::DeltaCompressedColumn< T >::getSizeinBytes | ( | ) | const throw () [virtual] |
returns the size in bytes the column consumes in main memory
Implements CoGaDB::CompressedColumn< T >.
unsigned int CoGaDB::DeltaCompressedColumn< T >::getSizeinBytes | ( | ) | const throw () [virtual] |
returns the size in bytes the column consumes in main memory
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::insert | ( | const boost::any & | new_Value | ) | [virtual] |
appends a value new_Value to end of column
Implements CoGaDB::CompressedColumn< T >.
Referenced by CoGaDB::DeltaCompressedColumn< std::string >::insert().
bool CoGaDB::DeltaCompressedColumn< T >::insert | ( | const boost::any & | new_Value | ) | [virtual] |
appends a value new_Value to end of column
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::insert | ( | const T & | new_value | ) | [virtual] |
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::insert | ( | const T & | new_value | ) | [virtual] |
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::insert | ( | InputIterator | first, |
InputIterator | last | ||
) |
bool CoGaDB::DeltaCompressedColumn< T >::insert | ( | InputIterator | first, |
InputIterator | last | ||
) |
bool CoGaDB::DeltaCompressedColumn< T >::load | ( | const std::string & | path | ) | [virtual] |
load column from disc
calling load on a column that is not empty yields undefined behaviour
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::load | ( | const std::string & | path | ) | [virtual] |
load column from disc
calling load on a column that is not empty yields undefined behaviour
Implements CoGaDB::CompressedColumn< T >.
T& CoGaDB::DeltaCompressedColumn< T >::operator[] | ( | const int | index | ) | [virtual] |
defines operator[] for this class, which enables the user to thread all typed columns as arrays.
Note that this method is pure virtual, so it has to be defined in a derived class.
Implements CoGaDB::CompressedColumn< T >.
T & CoGaDB::DeltaCompressedColumn< T >::operator[] | ( | const int | index | ) | [virtual] |
defines operator[] for this class, which enables the user to thread all typed columns as arrays.
Note that this method is pure virtual, so it has to be defined in a derived class.
Implements CoGaDB::CompressedColumn< T >.
void CoGaDB::DeltaCompressedColumn< T >::print | ( | ) | const throw () [virtual] |
prints the content of a column
Implements CoGaDB::CompressedColumn< T >.
void CoGaDB::DeltaCompressedColumn< T >::print | ( | ) | const throw () [virtual] |
prints the content of a column
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::remove | ( | TID | tid | ) | [virtual] |
deletes the value on position tid
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::remove | ( | TID | tid | ) | [virtual] |
deletes the value on position tid
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::remove | ( | PositionListPtr | tid | ) | [virtual] |
deletes the values defined in the position list
assumes tid list is sorted ascending
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::remove | ( | PositionListPtr | tid | ) | [virtual] |
deletes the values defined in the position list
assumes tid list is sorted ascending
Implements CoGaDB::CompressedColumn< T >.
size_t CoGaDB::DeltaCompressedColumn< T >::size | ( | ) | const throw () [virtual] |
returns the number of values (rows) in a column
Implements CoGaDB::CompressedColumn< T >.
size_t CoGaDB::DeltaCompressedColumn< T >::size | ( | ) | const throw () [virtual] |
returns the number of values (rows) in a column
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::store | ( | const std::string & | path | ) | [virtual] |
store a column on the disc
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::store | ( | const std::string & | path | ) | [virtual] |
store a column on the disc
Implements CoGaDB::CompressedColumn< T >.
uint CoGaDB::DeltaCompressedColumn< T >::uncompress | ( | const uint | index | ) | [private] |
uint CoGaDB::DeltaCompressedColumn< T >::uncompress | ( | const uint | index | ) | [private] |
References delta().
Referenced by CoGaDB::DeltaCompressedColumn< std::string >::compress_update(), CoGaDB::DeltaCompressedColumn< std::string >::operator[](), CoGaDB::DeltaCompressedColumn< std::string >::remove(), and CoGaDB::DeltaCompressedColumn< std::string >::update().
bool CoGaDB::DeltaCompressedColumn< T >::update | ( | TID | tid, |
const boost::any & | new_Value | ||
) | [virtual] |
updates the value on position tid with a value new_Value
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::update | ( | TID | tid, |
const boost::any & | new_Value | ||
) | [virtual] |
updates the value on position tid with a value new_Value
Implements CoGaDB::CompressedColumn< T >.
Referenced by CoGaDB::DeltaCompressedColumn< std::string >::update().
bool CoGaDB::DeltaCompressedColumn< T >::update | ( | PositionListPtr | tids, |
const boost::any & | new_value | ||
) | [virtual] |
updates the values specified by the position list with a value new_Value
Implements CoGaDB::CompressedColumn< T >.
bool CoGaDB::DeltaCompressedColumn< T >::update | ( | PositionListPtr | tids, |
const boost::any & | new_value | ||
) | [virtual] |
updates the values specified by the position list with a value new_Value
Implements CoGaDB::CompressedColumn< T >.
std::vector< uchar > CoGaDB::DeltaCompressedColumn< T >::cvalues_ [private] |
Referenced by CoGaDB::DeltaCompressedColumn< std::string >::clearContent(), CoGaDB::DeltaCompressedColumn< std::string >::compress_update(), CoGaDB::DeltaCompressedColumn< std::string >::get(), CoGaDB::DeltaCompressedColumn< std::string >::getSizeinBytes(), CoGaDB::DeltaCompressedColumn< std::string >::insert(), CoGaDB::DeltaCompressedColumn< std::string >::load(), CoGaDB::DeltaCompressedColumn< std::string >::remove(), CoGaDB::DeltaCompressedColumn< std::string >::size(), CoGaDB::DeltaCompressedColumn< std::string >::store(), CoGaDB::DeltaCompressedColumn< std::string >::uncompress(), and CoGaDB::DeltaCompressedColumn< std::string >::update().
T CoGaDB::DeltaCompressedColumn< T >::hack_last_uncompressed [private] |
Referenced by CoGaDB::DeltaCompressedColumn< std::string >::operator[]().
uint CoGaDB::DeltaCompressedColumn< T >::size_ [private] |
Referenced by CoGaDB::DeltaCompressedColumn< T >::DeltaCompressedColumn().