public class CreateMaterializedViewRequest extends Object implements org.apache.avro.generic.IndexedRecord
GPUdb.createMaterializedView
.
Initiates the process of creating a materialized view, reserving the view's name to prevent other views or tables from being created with that name.
For materialized view details and examples, see Materialized Views.
The response contains viewId
, which
is used to tag each subsequent operation (projection, union, aggregation,
filter, or join) that will compose the view.
Modifier and Type | Class and Description |
---|---|
static class |
CreateMaterializedViewRequest.Options
A set of string constants for the
CreateMaterializedViewRequest
parameter options . |
Constructor and Description |
---|
CreateMaterializedViewRequest()
Constructs a CreateMaterializedViewRequest object with default
parameters.
|
CreateMaterializedViewRequest(String tableName,
Map<String,String> options)
Constructs a CreateMaterializedViewRequest 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.
|
||
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.
|
||
String |
getTableName()
Name of the table to be created that is the top-level table of the
materialized view, 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.
|
||
CreateMaterializedViewRequest |
setOptions(Map<String,String> options)
Optional parameters.
|
||
CreateMaterializedViewRequest |
setTableName(String tableName)
|
public CreateMaterializedViewRequest()
public CreateMaterializedViewRequest(String tableName, Map<String,String> options)
tableName
- Name of the table to be created that is the top-level
table of the materialized view, in
[schema_name.]table_name format, using standard name resolution rules and meeting table naming criteria.options
- Optional parameters.
COLLECTION_NAME
:
[DEPRECATED--please specify the containing
schema for the materialized view as part of
tableName
and use GPUdb.createSchema
to create the schema if
non-existent] Name of a schema which is to
contain the newly created view. If the schema
provided is non-existent, it will be
automatically created.
EXECUTE_AS
: User name
to use to run the refresh job
BUILD_MATERIALIZED_VIEW_POLICY
: Sets startup
materialized view rebuild scheme.
Supported values:
ALWAYS
: Rebuild
as many materialized views as possible
before accepting requests.
LAZY
: Rebuild the
necessary materialized views at start,
and load the remainder lazily.
ON_DEMAND
:
Rebuild materialized views as requests
use them.
SYSTEM
: Rebuild
materialized views using the
system-configured default.
SYSTEM
.
PERSIST
: If TRUE
, then the materialized view
specified in tableName
will be persisted
and will not expire unless a TTL
is specified. If FALSE
, then the materialized view will be an
in-memory table and will expire unless a TTL
is specified otherwise.
Supported values:
The default value is FALSE
.
REFRESH_SPAN
: Sets
the future time-offset(in seconds) at which
periodic refresh stops
REFRESH_STOP_TIME
: When REFRESH_METHOD
is PERIODIC
, specifies the time
at which a periodic refresh is stopped. Value
is a datetime string with format 'YYYY-MM-DD
HH:MM:SS'.
REFRESH_METHOD
:
Method by which the join can be refreshed when
the data in underlying member tables have
changed.
Supported values:
MANUAL
: Refresh
only occurs when manually requested by
calling GPUdb.alterTable
with an 'action' of
'refresh'
ON_QUERY
:
Refresh any time the view is queried.
ON_CHANGE
: If
possible, incrementally refresh (refresh
just those records added) whenever an
insert, update, delete or refresh of
input table is done. A full refresh is
done if an incremental refresh is not
possible.
PERIODIC
:
Refresh table periodically at rate
specified by REFRESH_PERIOD
MANUAL
.
REFRESH_PERIOD
:
When REFRESH_METHOD
is PERIODIC
, specifies the period in seconds at
which refresh occurs
REFRESH_START_TIME
: When REFRESH_METHOD
is PERIODIC
, specifies the first
time at which a refresh is to be done. Value is
a datetime string with format 'YYYY-MM-DD
HH:MM:SS'.
TTL
: Sets the TTL of the table specified in
tableName
.
Map
.public static org.apache.avro.Schema getClassSchema()
public String getTableName()
tableName
.public CreateMaterializedViewRequest setTableName(String tableName)
tableName
- The new value for tableName
.this
to mimic the builder pattern.public Map<String,String> getOptions()
COLLECTION_NAME
:
[DEPRECATED--please specify the containing schema for the
materialized view as part of tableName
and use GPUdb.createSchema
to create the schema if non-existent] Name
of a schema which is to contain the newly created view. If the
schema provided is non-existent, it will be automatically
created.
EXECUTE_AS
: User name to use to run
the refresh job
BUILD_MATERIALIZED_VIEW_POLICY
: Sets startup materialized view
rebuild scheme.
Supported values:
ALWAYS
: Rebuild as many
materialized views as possible before accepting
requests.
LAZY
: Rebuild the necessary
materialized views at start, and load the remainder
lazily.
ON_DEMAND
: Rebuild
materialized views as requests use them.
SYSTEM
: Rebuild materialized
views using the system-configured default.
SYSTEM
.
PERSIST
: If TRUE
,
then the materialized view specified in tableName
will be persisted and will not expire unless a TTL
is specified. If FALSE
,
then the materialized view will be an in-memory table and will
expire unless a TTL
is specified otherwise.
Supported values:
The default value is FALSE
.
REFRESH_SPAN
: Sets the future
time-offset(in seconds) at which periodic refresh stops
REFRESH_STOP_TIME
: When REFRESH_METHOD
is PERIODIC
, specifies the time at which a
periodic refresh is stopped. Value is a datetime string with
format 'YYYY-MM-DD HH:MM:SS'.
REFRESH_METHOD
: Method by which
the join can be refreshed when the data in underlying member
tables have changed.
Supported values:
MANUAL
: Refresh only occurs when
manually requested by calling GPUdb.alterTable
with an 'action' of 'refresh'
ON_QUERY
: Refresh any time the
view is queried.
ON_CHANGE
: If possible,
incrementally refresh (refresh just those records added)
whenever an insert, update, delete or refresh of input
table is done. A full refresh is done if an incremental
refresh is not possible.
PERIODIC
: Refresh table
periodically at rate specified by REFRESH_PERIOD
MANUAL
.
REFRESH_PERIOD
: When REFRESH_METHOD
is PERIODIC
, specifies the period in seconds at
which refresh occurs
REFRESH_START_TIME
: When
REFRESH_METHOD
is PERIODIC
, specifies the first time at which a
refresh is to be done. Value is a datetime string with format
'YYYY-MM-DD HH:MM:SS'.
TTL
: Sets the TTL of
the table specified in tableName
.
Map
.options
.public CreateMaterializedViewRequest setOptions(Map<String,String> options)
COLLECTION_NAME
:
[DEPRECATED--please specify the containing schema for the
materialized view as part of tableName
and use GPUdb.createSchema
to create the schema if non-existent] Name
of a schema which is to contain the newly created view. If the
schema provided is non-existent, it will be automatically
created.
EXECUTE_AS
: User name to use to run
the refresh job
BUILD_MATERIALIZED_VIEW_POLICY
: Sets startup materialized view
rebuild scheme.
Supported values:
ALWAYS
: Rebuild as many
materialized views as possible before accepting
requests.
LAZY
: Rebuild the necessary
materialized views at start, and load the remainder
lazily.
ON_DEMAND
: Rebuild
materialized views as requests use them.
SYSTEM
: Rebuild materialized
views using the system-configured default.
SYSTEM
.
PERSIST
: If TRUE
,
then the materialized view specified in tableName
will be persisted and will not expire unless a TTL
is specified. If FALSE
,
then the materialized view will be an in-memory table and will
expire unless a TTL
is specified otherwise.
Supported values:
The default value is FALSE
.
REFRESH_SPAN
: Sets the future
time-offset(in seconds) at which periodic refresh stops
REFRESH_STOP_TIME
: When REFRESH_METHOD
is PERIODIC
, specifies the time at which a
periodic refresh is stopped. Value is a datetime string with
format 'YYYY-MM-DD HH:MM:SS'.
REFRESH_METHOD
: Method by which
the join can be refreshed when the data in underlying member
tables have changed.
Supported values:
MANUAL
: Refresh only occurs when
manually requested by calling GPUdb.alterTable
with an 'action' of 'refresh'
ON_QUERY
: Refresh any time the
view is queried.
ON_CHANGE
: If possible,
incrementally refresh (refresh just those records added)
whenever an insert, update, delete or refresh of input
table is done. A full refresh is done if an incremental
refresh is not possible.
PERIODIC
: Refresh table
periodically at rate specified by REFRESH_PERIOD
MANUAL
.
REFRESH_PERIOD
: When REFRESH_METHOD
is PERIODIC
, specifies the period in seconds at
which refresh occurs
REFRESH_START_TIME
: When
REFRESH_METHOD
is PERIODIC
, specifies the first time at which a
refresh is to be done. Value is a datetime string with format
'YYYY-MM-DD HH:MM:SS'.
TTL
: Sets the TTL of
the table specified in tableName
.
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.