GPUdb C++ API  Version 5.2.0.0
gpudb::InsertRecordsRandomRequest Struct Reference

A set of input parameters for insertRecordsRandom(const InsertRecordsRandomRequest&) const. More...

#include <gpudb/protocol/insert_records_random.h>

Public Member Functions

 InsertRecordsRandomRequest ()
 Constructs an InsertRecordsRandomRequest object with default parameter values. More...
 
 InsertRecordsRandomRequest (const std::string &tableName, const int64_t count, const std::map< std::string, std::map< std::string, double > > &options)
 Constructs an InsertRecordsRandomRequest object with the specified parameters. More...
 

Public Attributes

std::string tableName
 
int64_t count
 
std::map< std::string, std::map< std::string, double > > options
 

Detailed Description

A set of input parameters for insertRecordsRandom(const InsertRecordsRandomRequest&) const.

Generates a specified number of random records and adds them to the given table. There is an optional parameter that allows the user to customize the ranges of the column values. It also allows the user to specify linear profiles for some or all columns in which case linear values are generated rather than random ones. Only individual tables are supported for this operation.

This operation is synchronous, meaning that GPUdb will not return until all random records are fully available.

Definition at line 26 of file insert_records_random.h.

Constructor & Destructor Documentation

gpudb::InsertRecordsRandomRequest::InsertRecordsRandomRequest ( )
inline

Constructs an InsertRecordsRandomRequest object with default parameter values.

Definition at line 33 of file insert_records_random.h.

gpudb::InsertRecordsRandomRequest::InsertRecordsRandomRequest ( const std::string &  tableName,
const int64_t  count,
const std::map< std::string, std::map< std::string, double > > &  options 
)
inline

Constructs an InsertRecordsRandomRequest object with the specified parameters.

Parameters
[in]tableNameTable to which random records will be added. Must be an existing table. Also, must be an individual table, not a collection of tables, nor a view of a table.
[in]countNumber of records to generate.
[in]optionsOptional parameter to pass in specifications for the randomness of the values. This map is different from the options parameter of most other endpoints in that it is a map of string to map of string to doubles, while most others are maps of string to string. In this map, the top level keys represent which column's parameters are being specified, while the internal keys represents which parameter is being specified. The parameters that can be specified are: min, max, and interval. These parameters take on different meanings depending on the type of the column. Below follows a more detailed description of the map:
  • all: This key indicates that the specifications relayed in the internal map are to be applied to all columns of the records.
    • min: For numerical columns, the minimum of the generated values is set to this value. Default is -99999. For point, shape, and track semantic types, min for numeric 'x' and 'y' columns needs to be within [-180, 180] and [-90, 90], respectively. The default minimum possible values for these columns in such cases are -180.0 and -90.0. For the 'TIMESTAMP' column, the default minimum corresponds to Jan 1, 2010. For string columns, the minimum length of the randomly generated strings is set to this value (default is 1). If both minimum and maximum are provided, minimum must be less than or equal to max. Value needs to be within [1, 200]. If the min is outside the accepted ranges for strings columns and 'x' and 'y' columns for point/shape/track types, then those parameters will not be set; however, GPUdb will not throw an error in such a case. It is the responsibility of the user to use the all parameter judiciously.
    • max: For numerical columns, the maximum of the generated values is set to this value. Default is 99999. For point, shape, and track semantic types, max for numeric 'x' and 'y' columns needs to be within [-180, 180] and [-90, 90], respectively. The default minimum possible values for these columns in such cases are 180.0 and 90.0. For string columns, the maximum length of the randomly generated strings is set to this value (default is 200). If both minimum and maximum are provided, max must be greater than or equal to min. Value needs to be within [1, 200]. If the max is outside the accepted ranges for strings columns and 'x' and 'y' columns for point/shape/track types, then those parameters will not be set; however, GPUdb will not throw an error in such a case. It is the responsibility of the user to use the all parameter judiciously.
    • interval: If specified, then generate values for all columns linearly and evenly spaced with the given interval value starting at the minimum value (instead of generating random data). Any provided max value is disregarded. For string-type columns, the interval value is ignored but the string values would be generated following the pattern: 'attrname_creationIndex#', i.e. the column name suffixed with an underscore and a running counter (starting at 0).
  • attr_name: Set the following parameters for the column specified by the key. This overrides any parameter set by all.
    • min: For numerical columns, the minimum of the generated values is set to this value. Default is -99999. For point, shape, and track semantic types, min for numeric 'x' and 'y' columns needs to be within [-180, 180] and [-90, 90], respectively. The default minimum possible values for these columns in such cases are -180.0 and -90.0. For the 'TIMESTAMP' column, the default minimum corresponds to Jan 1, 2010. For string columns, the minimum length of the randomly generated strings is set to this value (default is 1). If both minimum and maximum are provided, minimum must be less than or equal to max. Value needs to be within [1, 200]. If the min is outside the accepted ranges for strings columns and 'x' and 'y' columns for point/shape/track types, then those parameters will not be set; however, GPUdb will not throw an error in such a case. It is the responsibility of the user to use the all parameter judiciously.
    • max: For numerical columns, the maximum of the generated values is set to this value. Default is 99999. For point, shape, and track semantic types, max for numeric 'x' and 'y' columns needs to be within [-180, 180] and [-90, 90], respectively. The default minimum possible values for these columns in such cases are 180.0 and 90.0. For string columns, the maximum length of the randomly generated strings is set to this value (default is 200). If both minimum and maximum are provided, max must be greater than or equal to min. Value needs to be within [1, 200]. If the max is outside the accepted ranges for strings columns and 'x' and 'y' columns for point/shape/track types, then those parameters will not be set; however, GPUdb will not throw an error in such a case. It is the responsibility of the user to use the all parameter judiciously.
    • interval: If specified, then generate values for all columns linearly and evenly spaced with the given interval value starting at the minimum value (instead of generating random data). Any provided max value is disregarded. For string-type columns, the interval value is ignored but the string values would be generated following the pattern: 'attrname_creationIndex#', i.e. the column name suffixed with an underscore and a running counter (starting at 0).
  • track_length: This key-map pair is only valid for track type data sets (GPUdb throws an error otherwise).
    • min: Minimum possible length for generated series; default is 100 records per series. Must be an integral value within the range [1, 500]. If both min and max are specified, min must be less than or equal to max.
    • max: Maximum possible length for generated series; default is 500 records per series. Must be an integral value within the range [1, 500]. If both min and max are specified, max must be greater than or equal to min.
Default value is an empty std::map.

Definition at line 203 of file insert_records_random.h.

Member Data Documentation

int64_t gpudb::InsertRecordsRandomRequest::count

Definition at line 211 of file insert_records_random.h.

std::map<std::string, std::map<std::string, double> > gpudb::InsertRecordsRandomRequest::options

Definition at line 212 of file insert_records_random.h.

std::string gpudb::InsertRecordsRandomRequest::tableName

Definition at line 210 of file insert_records_random.h.


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