public class CreateJoinTableRequest extends Object implements org.apache.avro.generic.IndexedRecord
GPUdb.createJoinTable
.
Creates a table that is the result of a SQL JOIN.
For join details and examples see: Joins. For limitations, see Join Limitations and Cautions.
Modifier and Type | Class and Description |
---|---|
static class |
CreateJoinTableRequest.Options
A set of string constants for the
CreateJoinTableRequest
parameter options . |
Constructor and Description |
---|
CreateJoinTableRequest()
Constructs a CreateJoinTableRequest object with default parameters.
|
CreateJoinTableRequest(String joinTableName,
List<String> tableNames,
List<String> columnNames,
List<String> expressions,
Map<String,String> options)
Constructs a CreateJoinTableRequest object with the specified
parameters.
|
Modifier and Type | Method and Description | ||
---|---|---|---|
boolean |
equals(Object obj) |
||
Object |
get(int index)
This method supports the Avro framework and is not intended to be called
directly by the user.
|
||
static org.apache.avro.Schema |
getClassSchema()
This method supports the Avro framework and is not intended to be called
directly by the user.
|
||
List<String> |
getColumnNames()
List of member table columns or column expressions to be included in the
join.
|
||
List<String> |
getExpressions()
An optional list of expressions to combine and filter the joined tables.
|
||
String |
getJoinTableName()
Name of the join table to be created, in [schema_name.]table_name
format, using standard
Map<String,String> getOptions()
Optional parameters.
| ||
org.apache.avro.Schema |
getSchema()
This method supports the Avro framework and is not intended to be called
directly by the user.
|
||
List<String> |
getTableNames()
The list of table names composing the join, each in
[schema_name.]table_name format, using standard
int hashCode() | ||
void |
put(int index,
Object value)
This method supports the Avro framework and is not intended to be called
directly by the user.
|
||
CreateJoinTableRequest |
setColumnNames(List<String> columnNames)
List of member table columns or column expressions to be included in the
join.
|
||
CreateJoinTableRequest |
setExpressions(List<String> expressions)
An optional list of expressions to combine and filter the joined tables.
|
||
CreateJoinTableRequest |
setJoinTableName(String joinTableName)
Name of the join table to be created, in [schema_name.]table_name
format, using standard
CreateJoinTableRequest setOptions(Map<String,String> options)
Optional parameters.
| ||
CreateJoinTableRequest |
setTableNames(List<String> tableNames)
|
public CreateJoinTableRequest()
public CreateJoinTableRequest(String joinTableName, List<String> tableNames, List<String> columnNames, List<String> expressions, Map<String,String> options)
joinTableName
- Name of the join table to be created, in
[schema_name.]table_name format, using standard name resolution rules and
meeting table naming criteria.tableNames
- The list of table names composing the join, each in
[schema_name.]table_name format, using standard name resolution rules. Corresponds
to a SQL statement FROM clause.columnNames
- List of member table columns or column expressions
to be included in the join. Columns can be prefixed
with 'table_id.column_name', where 'table_id' is the
table name or alias. Columns can be aliased via the
syntax 'column_name as alias'. Wild cards '*' can be
used to include all columns across member tables or
'table_id.*' for all of a single table's columns.
Columns and column expressions composing the join
must be uniquely named or aliased--therefore, the
'*' wild card cannot be used if column names aren't
unique across all tables.expressions
- An optional list of expressions to combine and
filter the joined tables. Corresponds to a SQL
statement WHERE clause. For details see: expressions. The default value is
an empty List
.options
- Optional parameters.
CREATE_TEMP_TABLE
: If TRUE
, a unique temporary table name will be
generated in the sys_temp schema and used in
place of joinTableName
. This is always
allowed even if the caller does not have
permission to create tables. The generated name
is returned in QUALIFIED_JOIN_TABLE_NAME
.
Supported values:
The default value is FALSE
.
COLLECTION_NAME
:
[DEPRECATED--please specify the containing
schema for the join as part of joinTableName
and use GPUdb.createSchema
to create the schema if
non-existent] Name of a schema for the join. If
the schema is non-existent, it will be
automatically created. The default value is ''.
MAX_QUERY_DIMENSIONS
: No longer used.
OPTIMIZE_LOOKUPS
: Use more memory to speed up
the joining of tables.
Supported values:
The default value is FALSE
.
STRATEGY_DEFINITION
: The tier strategy for the table
and its columns.
TTL
: Sets the TTL of the join table
specified in joinTableName
.
VIEW_ID
: view this
projection is part of. The default value is ''.
NO_COUNT
: Return a
count of 0 for the join table for logging and
for GPUdb.showTable
; optimization needed for large
overlapped equi-join stencils. The default value
is 'false'.
CHUNK_SIZE
: Maximum
number of records per joined-chunk for this
table. Defaults to the gpudb.conf file chunk
size
ENABLE_VIRTUAL_CHUNKING
: Collect chunks with
accumulated size less than chunk_size into a
single chunk. The default value is 'false'.
ENABLE_PK_EQUI_JOIN
: Use equi-join to do
primary key joins rather than using
primary-key-index
Map
.public static org.apache.avro.Schema getClassSchema()
public String getJoinTableName()
joinTableName
.public CreateJoinTableRequest setJoinTableName(String joinTableName)
joinTableName
- The new value for joinTableName
.this
to mimic the builder pattern.public List<String> getTableNames()
tableNames
.public CreateJoinTableRequest setTableNames(List<String> tableNames)
tableNames
- The new value for tableNames
.this
to mimic the builder pattern.public List<String> getColumnNames()
columnNames
.public CreateJoinTableRequest setColumnNames(List<String> columnNames)
columnNames
- The new value for columnNames
.this
to mimic the builder pattern.public List<String> getExpressions()
List
.expressions
.public CreateJoinTableRequest setExpressions(List<String> expressions)
List
.expressions
- The new value for expressions
.this
to mimic the builder pattern.public Map<String,String> getOptions()
CREATE_TEMP_TABLE
: If TRUE
, a unique temporary table name will be
generated in the sys_temp schema and used in place of joinTableName
. This is always allowed even
if the caller does not have permission to create tables. The
generated name is returned in QUALIFIED_JOIN_TABLE_NAME
.
Supported values:
The default value is FALSE
.
COLLECTION_NAME
:
[DEPRECATED--please specify the containing schema for the join
as part of joinTableName
and use
GPUdb.createSchema
to create the schema if non-existent] Name
of a schema for the join. If the schema is non-existent, it will
be automatically created. The default value is ''.
MAX_QUERY_DIMENSIONS
: No
longer used.
OPTIMIZE_LOOKUPS
: Use more
memory to speed up the joining of tables.
Supported values:
The default value is FALSE
.
STRATEGY_DEFINITION
: The tier strategy for the table and its columns.
TTL
: Sets the TTL of
the join table specified in joinTableName
.
VIEW_ID
: view this projection is part
of. The default value is ''.
NO_COUNT
: Return a count of 0 for the
join table for logging and for GPUdb.showTable
;
optimization needed for large overlapped equi-join stencils. The
default value is 'false'.
CHUNK_SIZE
: Maximum number of records
per joined-chunk for this table. Defaults to the gpudb.conf file
chunk size
ENABLE_VIRTUAL_CHUNKING
:
Collect chunks with accumulated size less than chunk_size into a
single chunk. The default value is 'false'.
ENABLE_PK_EQUI_JOIN
: Use
equi-join to do primary key joins rather than using
primary-key-index
Map
.options
.public CreateJoinTableRequest setOptions(Map<String,String> options)
CREATE_TEMP_TABLE
: If TRUE
, a unique temporary table name will be
generated in the sys_temp schema and used in place of joinTableName
. This is always allowed even
if the caller does not have permission to create tables. The
generated name is returned in QUALIFIED_JOIN_TABLE_NAME
.
Supported values:
The default value is FALSE
.
COLLECTION_NAME
:
[DEPRECATED--please specify the containing schema for the join
as part of joinTableName
and use
GPUdb.createSchema
to create the schema if non-existent] Name
of a schema for the join. If the schema is non-existent, it will
be automatically created. The default value is ''.
MAX_QUERY_DIMENSIONS
: No
longer used.
OPTIMIZE_LOOKUPS
: Use more
memory to speed up the joining of tables.
Supported values:
The default value is FALSE
.
STRATEGY_DEFINITION
: The tier strategy for the table and its columns.
TTL
: Sets the TTL of
the join table specified in joinTableName
.
VIEW_ID
: view this projection is part
of. The default value is ''.
NO_COUNT
: Return a count of 0 for the
join table for logging and for GPUdb.showTable
;
optimization needed for large overlapped equi-join stencils. The
default value is 'false'.
CHUNK_SIZE
: Maximum number of records
per joined-chunk for this table. Defaults to the gpudb.conf file
chunk size
ENABLE_VIRTUAL_CHUNKING
:
Collect chunks with accumulated size less than chunk_size into a
single chunk. The default value is 'false'.
ENABLE_PK_EQUI_JOIN
: Use
equi-join to do primary key joins rather than using
primary-key-index
Map
.options
- The new value for options
.this
to mimic the builder pattern.public org.apache.avro.Schema getSchema()
getSchema
in interface org.apache.avro.generic.GenericContainer
public Object get(int index)
get
in interface org.apache.avro.generic.IndexedRecord
index
- the position of the field to getIndexOutOfBoundsException
public void put(int index, Object value)
put
in interface org.apache.avro.generic.IndexedRecord
index
- the position of the field to setvalue
- the value to setIndexOutOfBoundsException
Copyright © 2025. All rights reserved.