Skip to main content

Variables

const std::string DATA
 Default property for all numeric and string type columns; makes the column available for GPU queries.
 
const std::string TEXT_SEARCH
 Valid only for select ‘string’ columns.
 
const std::string TIMESTAMP
 Valid only for ‘long’ columns.
 
const std::string ULONG
 Valid only for ‘string’ columns.
 
const std::string UUID
 Valid only for ‘string’ columns.
 
const std::string DECIMAL
 Valid only for ‘string’ columns.
 
const std::string DATE
 Valid only for ‘string’ columns.
 
const std::string TIME
 Valid only for ‘string’ columns.
 
const std::string DATETIME
 Valid only for ‘string’ columns.
 
const std::string CHAR1
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string CHAR2
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string CHAR4
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string CHAR8
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string CHAR16
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string CHAR32
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string CHAR64
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string CHAR128
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string CHAR256
 This property provides optimized memory, disk and query performance for string columns.
 
const std::string BOOLEAN
 This property provides optimized memory and query performance for int columns.
 
const std::string INT8
 This property provides optimized memory and query performance for int columns.
 
const std::string INT16
 This property provides optimized memory and query performance for int columns.
 
const std::string IPV4
 This property provides optimized memory, disk and query performance for string columns representing IPv4 addresses (i.e. 192.168.1.1).
 
const std::string ARRAY
 Valid only for ‘string’ columns.
 
const std::string JSON
 Valid only for ‘string’ columns.
 
const std::string VECTOR
 Valid only for ‘bytes’ columns.
 
const std::string WKT
 Valid only for ‘string’ and ‘bytes’ columns.
 
const std::string PRIMARY_KEY
 This property indicates that this column will be part of (or the entire) primary key.
 
const std::string SOFT_PRIMARY_KEY
 This property indicates that this column will be part of (or the entire) soft primary key.
 
const std::string SHARD_KEY
 This property indicates that this column will be part of (or the entire) shard key.
 
const std::string NULLABLE
 This property indicates that this column is nullable.
 
const std::string COMPRESS
 This property indicates that this column should be compressed with the given codec and optional level; e.g., ‘compress(snappy)’ for Snappy compression and ‘compress(zstd(7))’ for zstd level 7 compression.
 
const std::string DICT
 This property indicates that this column should be dictionary encoded.
 
const std::string INIT_WITH_NOW
 For ‘date’, ‘time’, ‘datetime’, or ‘timestamp’ column types, replace empty strings and invalid timestamps with ‘NOW()’ upon insert.
 
const std::string INIT_WITH_UUID
 For ‘uuid’ type, replace empty strings and invalid UUID values with randomly-generated UUIDs upon insert.
 
const std::string UPDATE_WITH_NOW
 For ‘date’, ‘time’, ‘datetime’, or ‘timestamp’ column types, update the field with ‘NOW()’ upon any update.
 
const std::string UPDATE_WITH_USER
 For ‘charN’ or ‘string’ column types, update the field with the current user’s name upon any update.
 
const std::string DEFAULT
 Sets a default value expression for this column, e.g. ‘default(0)’, ‘default(”pending”)’, or ‘default(NOW())’.
 
const std::string DEFAULT_SQL
 Sets a default value expression for this column with SQL syntax, e.g. ‘default(0)’, ‘default(”pending”)’, or ‘default(NOW())’.
 

Variable Documentation

◆ ARRAY

const std::string gpudb::ColumnProperty::ARRAY
extern

Valid only for ‘string’ columns.

Indicates that this field contains an array. The value type and (optionally) the item count should be specified in parenthesis; e.g., ‘array(int, 10)’ for a 10-integer array. Both ‘array(int)’ and ‘array(int, -1)’ will designate an unlimited-length integer array, though no bounds checking is performed on arrays of any length.

◆ BOOLEAN

const std::string gpudb::ColumnProperty::BOOLEAN
extern

This property provides optimized memory and query performance for int columns.

Ints with this property must be between 0 and 1(inclusive)

◆ CHAR1

const std::string gpudb::ColumnProperty::CHAR1
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 1 character.

◆ CHAR128

const std::string gpudb::ColumnProperty::CHAR128
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 128 characters.

◆ CHAR16

const std::string gpudb::ColumnProperty::CHAR16
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 16 characters.

◆ CHAR2

const std::string gpudb::ColumnProperty::CHAR2
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 2 characters.

◆ CHAR256

const std::string gpudb::ColumnProperty::CHAR256
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 256 characters.

◆ CHAR32

const std::string gpudb::ColumnProperty::CHAR32
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 32 characters.

◆ CHAR4

const std::string gpudb::ColumnProperty::CHAR4
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 4 characters.

◆ CHAR64

const std::string gpudb::ColumnProperty::CHAR64
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 64 characters.

◆ CHAR8

const std::string gpudb::ColumnProperty::CHAR8
extern

This property provides optimized memory, disk and query performance for string columns.

Strings with this property must be no longer than 8 characters.

◆ COMPRESS

const std::string gpudb::ColumnProperty::COMPRESS
extern

This property indicates that this column should be compressed with the given codec and optional level; e.g., ‘compress(snappy)’ for Snappy compression and ‘compress(zstd(7))’ for zstd level 7 compression.

This property is primarily used in order to save disk space.

◆ DATA

const std::string gpudb::ColumnProperty::DATA
extern

Default property for all numeric and string type columns; makes the column available for GPU queries.

◆ DATE

const std::string gpudb::ColumnProperty::DATE
extern

Valid only for ‘string’ columns.

Indicates that this field represents a date and will be provided in the format ‘YYYY-MM-DD’. The allowable range is 1000-01-01 through 2900-01-01. This property is mutually exclusive with the TEXT_SEARCH property.

◆ DATETIME

const std::string gpudb::ColumnProperty::DATETIME
extern

Valid only for ‘string’ columns.

Indicates that this field represents a datetime and will be provided in the format ‘YYYY-MM-DD HH:MM:SS.mmm’. The allowable range is 1000-01-01 00:00:00.000 through 2900-01-01 23:59:59.999. This property is mutually exclusive with the TEXT_SEARCH property.

◆ DECIMAL

const std::string gpudb::ColumnProperty::DECIMAL
extern

Valid only for ‘string’ columns.

It represents a SQL type NUMERIC(19, 4) data type. There can be up to 15 digits before the decimal point and up to four digits in the fractional part. The value can be positive or negative (indicated by a minus sign at the beginning). This property is mutually exclusive with the TEXT_SEARCH property.

◆ DEFAULT

const std::string gpudb::ColumnProperty::DEFAULT
extern

Sets a default value expression for this column, e.g. ‘default(0)’, ‘default(”pending”)’, or ‘default(NOW())’.

When the column is omitted from an insert via request_schema_str, the expression is evaluated and the result is used as the column value.

◆ DEFAULT_SQL

const std::string gpudb::ColumnProperty::DEFAULT_SQL
extern

Sets a default value expression for this column with SQL syntax, e.g. ‘default(0)’, ‘default(”pending”)’, or ‘default(NOW())’.

Only used for showing the expression when generating SQL DDL.

◆ DICT

const std::string gpudb::ColumnProperty::DICT
extern

This property indicates that this column should be dictionary encoded.

It can only be used in conjunction with restricted string (charN), int, long or date columns. Dictionary encoding is best for columns where the cardinality (the number of unique values) is expected to be low. This property can save a large amount of memory.

◆ INIT_WITH_NOW

const std::string gpudb::ColumnProperty::INIT_WITH_NOW
extern

For ‘date’, ‘time’, ‘datetime’, or ‘timestamp’ column types, replace empty strings and invalid timestamps with ‘NOW()’ upon insert.

◆ INIT_WITH_UUID

const std::string gpudb::ColumnProperty::INIT_WITH_UUID
extern

For ‘uuid’ type, replace empty strings and invalid UUID values with randomly-generated UUIDs upon insert.

◆ INT16

const std::string gpudb::ColumnProperty::INT16
extern

This property provides optimized memory and query performance for int columns.

Ints with this property must be between -32768 and +32767 (inclusive)

◆ INT8

const std::string gpudb::ColumnProperty::INT8
extern

This property provides optimized memory and query performance for int columns.

Ints with this property must be between -128 and +127 (inclusive)

◆ IPV4

const std::string gpudb::ColumnProperty::IPV4
extern

This property provides optimized memory, disk and query performance for string columns representing IPv4 addresses (i.e. 192.168.1.1).

Strings with this property must be of the form: A.B.C.D where A, B, C and D are in the range of 0-255.

◆ JSON

const std::string gpudb::ColumnProperty::JSON
extern

Valid only for ‘string’ columns.

Indicates that this field contains values in JSON format.

◆ NULLABLE

const std::string gpudb::ColumnProperty::NULLABLE
extern

This property indicates that this column is nullable.

However, setting this property is insufficient for making the column nullable. The user must declare the type of the column as a union between its regular type and ‘null’ in the Avro schema for the record type in typeDefinition. For example, if a column is of type integer and is nullable, then the entry for the column in the Avro schema must be: [‘int’, ‘null’].

The C++, C#, Java, and Python APIs have built-in convenience for bypassing setting the Avro schema by hand. For those languages, one can use this property as usual and not have to worry about the Avro schema for the record.

◆ PRIMARY_KEY

const std::string gpudb::ColumnProperty::PRIMARY_KEY
extern

This property indicates that this column will be part of (or the entire) primary key.

◆ SHARD_KEY

const std::string gpudb::ColumnProperty::SHARD_KEY
extern

This property indicates that this column will be part of (or the entire) shard key.

◆ SOFT_PRIMARY_KEY

const std::string gpudb::ColumnProperty::SOFT_PRIMARY_KEY
extern

This property indicates that this column will be part of (or the entire) soft primary key.

const std::string gpudb::ColumnProperty::TEXT_SEARCH
extern

Valid only for select ‘string’ columns.

Enables full text search–see Full Text Search for details and applicable string column types.

◆ TIME

const std::string gpudb::ColumnProperty::TIME
extern

Valid only for ‘string’ columns.

Indicates that this field represents a time-of-day and will be provided in the format ‘HH:MM:SS.mmm’. The allowable range is 00:00:00.000 through 23:59:59.999. This property is mutually exclusive with the TEXT_SEARCH property.

◆ TIMESTAMP

const std::string gpudb::ColumnProperty::TIMESTAMP
extern

Valid only for ‘long’ columns.

Indicates that this field represents a timestamp and will be provided in milliseconds since the Unix epoch: 00:00:00 Jan 1 1970. Dates represented by a timestamp must fall between the year 1000 and the year 2900.

◆ ULONG

const std::string gpudb::ColumnProperty::ULONG
extern

Valid only for ‘string’ columns.

It represents an unsigned long integer data type. The string can only be interpreted as an unsigned long data type with minimum value of zero, and maximum value of 18446744073709551615.

◆ UPDATE_WITH_NOW

const std::string gpudb::ColumnProperty::UPDATE_WITH_NOW
extern

For ‘date’, ‘time’, ‘datetime’, or ‘timestamp’ column types, update the field with ‘NOW()’ upon any update.

◆ UPDATE_WITH_USER

const std::string gpudb::ColumnProperty::UPDATE_WITH_USER
extern

For ‘charN’ or ‘string’ column types, update the field with the current user’s name upon any update.

◆ UUID

const std::string gpudb::ColumnProperty::UUID
extern

Valid only for ‘string’ columns.

It represents an uuid data type. Internally, it is stored as a 128-bit integer.

◆ VECTOR

const std::string gpudb::ColumnProperty::VECTOR
extern

Valid only for ‘bytes’ columns.

Indicates that this field contains a vector of floats. The length should be specified in parenthesis, e.g., ‘vector(1000)’.

◆ WKT

const std::string gpudb::ColumnProperty::WKT
extern

Valid only for ‘string’ and ‘bytes’ columns.

Indicates that this field contains geospatial geometry objects in Well-Known Text (WKT) or Well-Known Binary (WKB) format.