GPUdb C++ API  Version 7.2.2.4
gpudb::CreateTableExternalRequest Struct Reference

A set of parameters for GPUdb::createTableExternal. More...

#include <gpudb/protocol/create_table_external.h>

Public Member Functions

 CreateTableExternalRequest ()
 Constructs a CreateTableExternalRequest object with default parameters. More...
 
 CreateTableExternalRequest (const std::string &tableName_, const std::vector< std::string > &filepaths_, const std::map< std::string, std::map< std::string, std::string > > &modifyColumns_, const std::map< std::string, std::string > &createTableOptions_, const std::map< std::string, std::string > &options_)
 Constructs a CreateTableExternalRequest object with the specified parameters. More...
 

Public Attributes

std::string tableName
 Name of the table to be created, in [ schema_name. ]table_name format, using standard name resolution rules and meeting table naming criteria. More...
 
std::vector< std::string > filepaths
 A list of file paths from which data will be sourced;. More...
 
std::map< std::string, std::map< std::string, std::string > > modifyColumns
 Not implemented yet. More...
 
std::map< std::string, std::string > createTableOptions
 Options from GPUdb::createTable, allowing the structure of the table to be defined independently of the data source. More...
 
std::map< std::string, std::string > options
 Optional parameters. More...
 

Detailed Description

A set of parameters for GPUdb::createTableExternal.

Creates a new external table, which is a local database object whose source data is located externally to the database. The source data can be located either in KiFS; on the cluster, accessible to the database; or remotely, accessible via a pre-defined external data source.

The external table can have its structure defined explicitly, via createTableOptions, which contains many of the options from GPUdb::createTable; or defined implicitly, inferred from the source data.

Definition at line 30 of file create_table_external.h.

Constructor & Destructor Documentation

◆ CreateTableExternalRequest() [1/2]

gpudb::CreateTableExternalRequest::CreateTableExternalRequest ( )
inline

Constructs a CreateTableExternalRequest object with default parameters.

Definition at line 36 of file create_table_external.h.

◆ CreateTableExternalRequest() [2/2]

gpudb::CreateTableExternalRequest::CreateTableExternalRequest ( const std::string &  tableName_,
const std::vector< std::string > &  filepaths_,
const std::map< std::string, std::map< std::string, std::string > > &  modifyColumns_,
const std::map< std::string, std::string > &  createTableOptions_,
const std::map< std::string, std::string > &  options_ 
)
inline

Constructs a CreateTableExternalRequest object with the specified parameters.

Parameters
[in]tableName_Name of the table to be created, in [schema_name.]table_name format, using standard name resolution rules and meeting table naming criteria.
[in]filepaths_A list of file paths from which data will be sourced; For paths in KiFS, use the uri prefix of kifs:// followed by the path to a file or directory. File matching by prefix is supported, e.g. kifs://dir/file would match dir/file_1 and dir/file_2. When prefix matching is used, the path must start with a full, valid KiFS directory name. If an external data source is specified in datasource_name, these file paths must resolve to accessible files at that data source location. Prefix matching is supported. If the data source is hdfs, prefixes must be aligned with directories, i.e. partial file names will not match. If no data source is specified, the files are assumed to be local to the database and must all be accessible to the gpudb user, residing on the path (or relative to the path) specified by the external files directory in the Kinetica configuration file. Wildcards (*) can be used to specify a group of files. Prefix matching is supported, the prefixes must be aligned with directories. If the first path ends in .tsv, the text delimiter will be defaulted to a tab character. If the first path ends in .psv, the text delimiter will be defaulted to a pipe character (|).
[in]modifyColumns_Not implemented yet. The default value is an empty map.
[in]createTableOptions_Options from GPUdb::createTable, allowing the structure of the table to be defined independently of the data source. The default value is an empty map.
[in]options_Optional parameters. The default value is an empty map.

Definition at line 1313 of file create_table_external.h.

Member Data Documentation

◆ createTableOptions

std::map<std::string, std::string> gpudb::CreateTableExternalRequest::createTableOptions

Options from GPUdb::createTable, allowing the structure of the table to be defined independently of the data source.

The default value is an empty map.

Definition at line 1540 of file create_table_external.h.

◆ filepaths

std::vector<std::string> gpudb::CreateTableExternalRequest::filepaths

A list of file paths from which data will be sourced;.

For paths in KiFS, use the uri prefix of kifs:// followed by the path to a file or directory. File matching by prefix is supported, e.g.\ kifs://dir/file would match dir/file_1 and dir/file_2. When prefix matching is used, the path must start with a full, valid KiFS directory name.

If an external data source is specified in datasource_name, these file paths must resolve to accessible files at that data source location. Prefix matching is supported. If the data source is hdfs, prefixes must be aligned with directories, i.e. partial file names will not match.

If no data source is specified, the files are assumed to be local to the database and must all be accessible to the gpudb user, residing on the path (or relative to the path) specified by the external files directory in the Kinetica configuration file. Wildcards (*) can be used to specify a group of files. Prefix matching is supported, the prefixes must be aligned with directories.

If the first path ends in .tsv, the text delimiter will be defaulted to a tab character. If the first path ends in .psv, the text delimiter will be defaulted to a pipe character (|).

Definition at line 1362 of file create_table_external.h.

◆ modifyColumns

std::map<std::string, std::map<std::string, std::string> > gpudb::CreateTableExternalRequest::modifyColumns

Not implemented yet.

The default value is an empty map.

Definition at line 1367 of file create_table_external.h.

◆ options

std::map<std::string, std::string> gpudb::CreateTableExternalRequest::options

Optional parameters.

The default value is an empty map.

Definition at line 2188 of file create_table_external.h.

◆ tableName

std::string gpudb::CreateTableExternalRequest::tableName

Name of the table to be created, in [ schema_name. ]table_name format, using standard name resolution rules and meeting table naming criteria.

Definition at line 1330 of file create_table_external.h.


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