IMPALA-4168: [DOCS] Adds Oracle-style hint placement for INSERT/UPSERT

Change-Id: I43e0a782087c2e67f2e012424fb9261be445efc9
Reviewed-on: http://gerrit.cloudera.org:8080/9030
Reviewed-by: Alex Rodoni <arodoni@cloudera.com>
Reviewed-by: Kim Jin Chul <jinchul@gmail.com>
Reviewed-by: John Russell <jrussell@cloudera.com>
Tested-by: Impala Public Jenkins
This commit is contained in:
Jinchul
2018-01-16 21:13:43 +09:00
committed by Impala Public Jenkins
parent f33431dc4c
commit e279f0f250
3 changed files with 48 additions and 5 deletions

View File

@@ -77,6 +77,12 @@ INSERT <varname>insert_clauses</varname>
[{ /* +SHUFFLE */ | /* +NOSHUFFLE */ }]
[<ph rev="IMPALA-2522 2.8.0">/* +CLUSTERED */</ph>]
SELECT <varname>remainder_of_query</varname>;
<ph rev="2.12.0 IMPALA-4168">
UPSERT [{ /* +SHUFFLE */ | /* +NOSHUFFLE */ }]
[<ph rev="IMPALA-2522 2.8.0">/* +CLUSTERED */</ph>]
<varname>upsert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;</ph>
</codeblock>
<p rev="2.0.0">
@@ -112,6 +118,26 @@ INSERT <varname>insert_clauses</varname>
-- +SHUFFLE|NOSHUFFLE
SELECT <varname>remainder_of_query</varname>;
<ph rev="2.12.0 IMPALA-4168">
INSERT /* +SHUFFLE|NOSHUFFLE */
<varname>insert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;</ph>
<ph rev="2.12.0 IMPALA-4168">
INSERT -- +SHUFFLE|NOSHUFFLE
<varname>insert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;</ph>
<ph rev="2.12.0 IMPALA-4168">
UPSERT /* +SHUFFLE|NOSHUFFLE */
<varname>upsert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;</ph>
<ph rev="2.12.0 IMPALA-4168">
UPSERT -- +SHUFFLE|NOSHUFFLE
<varname>upsert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;</ph>
<ph rev="IMPALA-2924">SELECT <varname>select_list</varname> FROM
<varname>table_ref</varname>
/* +{SCHEDULE_CACHE_LOCAL | SCHEDULE_DISK_LOCAL | SCHEDULE_REMOTE}
@@ -125,6 +151,22 @@ INSERT <varname>insert_clauses</varname>
INSERT <varname>insert_clauses</varname>
/* +CLUSTERED */
SELECT <varname>remainder_of_query</varname>;</ph>
<ph rev="2.12.0 IMPALA-4168">INSERT -- +CLUSTERED
<varname>insert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;
INSERT /* +CLUSTERED */
<varname>insert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;
UPSERT -- +CLUSTERED
<varname>upsert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;
UPSERT /* +CLUSTERED */
<varname>upsert_clauses</varname>
SELECT <varname>remainder_of_query</varname>;</ph>
</codeblock>
<p conref="../shared/impala_common.xml#common/usage_notes_blurb"/>

View File

@@ -49,7 +49,7 @@ under the License.
<p conref="../shared/impala_common.xml#common/syntax_blurb"/>
<codeblock>[<varname>with_clause</varname>]
INSERT { INTO | OVERWRITE } [TABLE] <varname>table_name</varname>
INSERT <ph rev="2.12.0 IMPALA-4168">[<varname>hint_clause</varname>]</ph> { INTO | OVERWRITE } [TABLE] <varname>table_name</varname>
[(<varname>column_list</varname>)]
[ PARTITION (<varname>partition_clause</varname>)]
{
@@ -204,9 +204,10 @@ hint_with_brackets ::= [SHUFFLE] | [NOSHUFFLE]
</li>
<li rev="1.2.2">
An optional hint clause immediately before the <codeph>SELECT</codeph> keyword, to fine-tune the behavior
when doing an <codeph>INSERT ... SELECT</codeph> operation into partitioned Parquet tables. The hint
keywords are <codeph>[SHUFFLE]</codeph> and <codeph>[NOSHUFFLE]</codeph>, including the square brackets.
An optional hint clause immediately either before the <codeph>SELECT</codeph> keyword or after the
<codeph>INSERT</codeph> keyword, to fine-tune the behavior when doing an <codeph>INSERT ... SELECT</codeph>
operation into partitioned Parquet tables. The hint clause cannot be specified in multiple places.
The hint keywords are <codeph>[SHUFFLE]</codeph> and <codeph>[NOSHUFFLE]</codeph>, including the square brackets.
Inserting into partitioned Parquet tables can be a resource-intensive operation because it potentially
involves many files being written to HDFS simultaneously, and separate
<ph rev="parquet_block_size">large</ph> memory buffers being allocated to buffer the data for each

View File

@@ -68,7 +68,7 @@ under the License.
<p conref="../shared/impala_common.xml#common/syntax_blurb"/>
<codeblock>
UPSERT INTO [TABLE] [<varname>db_name</varname>.]<varname>table_name</varname>
UPSERT <ph rev="2.12.0 IMPALA-4168">[<varname>hint_clause</varname>]</ph> INTO [TABLE] [<varname>db_name</varname>.]<varname>table_name</varname>
[(<varname>column_list</varname>)]
{
[<varname>hint_clause</varname>] <varname>select_statement</varname>