C++ SDK Documentation  23.3.0
Vertica::ServerInterface::RelationDescription Struct Reference
Collaboration diagram for Vertica::ServerInterface::RelationDescription:
Collaboration graph

Public Types

enum  RelDerivationType {
  RDT_NONE, RDT_PROJECTION, RDT_AGGREGATE, RDT_TOPK,
  RDT_UDT, RDT_INDEX, RDT_FLEX_KEYS
}
 

Public Attributes

std::string additionalDerivationInfo
 
std::vector< int > baseAttrIdx
 
Oid baseRelation
 
std::vector< std::string > colNames
 
std::vector< bool > colRLE
 
std::vector< VerticaTypecolTypes
 
std::string databaseName
 
std::vector< Oid > derivationFunctions
 
bool isExternal
 
bool isFlex
 
bool isSystem
 
bool isTemp
 
bool isUpToDate
 
int nSortedCols
 
std::vector< int > partitionCols
 
std::vector< int > pkCols
 
std::set< std::string > presentOnNodeNames
 
std::set< Oid > presentOnNodes
 
std::string relationName
 
Oid relationOid
 
enum
Vertica::ServerInterface::RelationDescription::RelDerivationType 
relDerivationType
 
std::string schemaName
 
std::vector< int > segCols
 
int segOffset
 
std::vector< int > tabColMapping
 

Detailed Description

Structure to describe the name and properties of a table or projection, It is to be used in the methods below.

Member Enumeration Documentation

Member Data Documentation

std::string Vertica::ServerInterface::RelationDescription::additionalDerivationInfo

Further description of derivation

std::vector<int> Vertica::ServerInterface::RelationDescription::baseAttrIdx

Columns in base that participate in derivation

Oid Vertica::ServerInterface::RelationDescription::baseRelation

Derivation from a base object (table/projection)

std::vector<std::string> Vertica::ServerInterface::RelationDescription::colNames

Column names

std::vector<bool> Vertica::ServerInterface::RelationDescription::colRLE

For projections, indictor if encoding is run-optimized

std::vector<VerticaType> Vertica::ServerInterface::RelationDescription::colTypes

Column types

std::string Vertica::ServerInterface::RelationDescription::databaseName

Database name

std::vector<Oid> Vertica::ServerInterface::RelationDescription::derivationFunctions

Derivation function, for UDT proj, etc.

bool Vertica::ServerInterface::RelationDescription::isExternal

Is for external table?

bool Vertica::ServerInterface::RelationDescription::isFlex

Is this a flex object

bool Vertica::ServerInterface::RelationDescription::isSystem

Is this a system object

bool Vertica::ServerInterface::RelationDescription::isTemp

Is for a temp table?

bool Vertica::ServerInterface::RelationDescription::isUpToDate

Is this up to date / active

int Vertica::ServerInterface::RelationDescription::nSortedCols

For projections, number of columns in sort order, as a prefix

std::vector<int> Vertica::ServerInterface::RelationDescription::partitionCols

For tables / projections, columns involved in partitioning

std::vector<int> Vertica::ServerInterface::RelationDescription::pkCols

For tables / projections, columns involved in a primary key

std::set<std::string> Vertica::ServerInterface::RelationDescription::presentOnNodeNames

For projections, hosting node names

std::set<Oid> Vertica::ServerInterface::RelationDescription::presentOnNodes

For projections, hosting nodes

std::string Vertica::ServerInterface::RelationDescription::relationName

Table name, projection basename, or projection name

Oid Vertica::ServerInterface::RelationDescription::relationOid

Relation OID, for lookups if this is nonzero it takes precedence

std::string Vertica::ServerInterface::RelationDescription::schemaName

Schema name; on lookup if empty the search path will be consulted

std::vector<int> Vertica::ServerInterface::RelationDescription::segCols

For projections, columns involved in segmentation

int Vertica::ServerInterface::RelationDescription::segOffset

For buddies, segmentation offset

std::vector<int> Vertica::ServerInterface::RelationDescription::tabColMapping

For projections, mapping to table column number (0-based); negative numbers would indicate things that are not present in the table