SET statement
The SET
statement specifies values for query options that control the
runtime behavior of other statements within the same session.
When issued in impala-shell
, the SET
command is interpreted as
an impala-shell
command that has differences from the SQL
SET
statement.
Syntax:
SET
SET ALL
SET query_option=option_value
SET query_option=""
SET
and SET ALL
with no arguments return a result set
consisting of all the applicable query options and their current values.
The query_option and option_value are case-insensitive.
Unlike the impala-shell
command version of SET
, when
used as a SQL statement, the string values for option_value need to be
quoted, e.g. SET option="new_value"
.
The SET query_option = ""
statement unsets the value
of the query_option in the current session, reverting it to the default
state. In impala-shell
, use the UNSET
command to set a
query option to its default.
Each query option has a specific allowed notation for its arguments. See Query options for the SET statement for the details of each query option.
Usage notes:
The options are divided into groups: Regular Query
Options
, Advanced Query Options
,
Development Query Options
, and Deprecated
Query Options
.
-
The advanced options are intended for use in specific kinds of performance tuning and debugging scenarios.
-
The development options are related to internal development of Impala or features that are not yet finalized. These options might be changed or removed without notice.
-
The deprecated options are related to features that are removed or changed so that the options no longer have any purpose. These options might be removed in future versions.
-
By default, only the first two groups, regular and advanced, are displayed by the
SET
command. UseSET ALL
to see all groups of options. -
impala-shell options and user-specified variables are always displayed at the end of the list of query options, after all appropriate option groups.
SET
has always been available as an impala-shell
command. Promoting it to a SQL statement lets you use this feature in client applications
through the JDBC and ODBC APIs.
HDFS permissions: This statement does not touch any HDFS files or directories, therefore no HDFS permissions are required.
Cloudera Manager: You can set any of the query options globally in Cloudera Manager to affect all the queries in the cluster.
- Navigate to Impala cluster > Configuration > Impala Daemon Query Options Advanced Configuration Snippet (Safety Valve)
-
In the field, type a key-value pair of a query option and the value, e.g.
EXPLAIN_LEVEL=2
. - Click + to enter an additional option.
- Clive Save Changes.