pengdou has uploaded a new patch set (#11). ( http://gerrit.cloudera.org:8080/19050 )
Change subject: IMPALA-11625: Support create/drop materialized view syntax on IMPALA ...................................................................... IMPALA-11625: Support create/drop materialized view syntax on IMPALA For infrequently modified datasets, building suitable materialized views and querying on materialized views directly can significantly reduce query response time. Currently IMPALA only treats materialized view built by hive as a normal table and does not support CREATE MATERIALIZED VIEW AS SELECT and DROP MATERIALIZED VIEW syntax on IMPALA. CREATE TABLE AS SELECT can save the intermediate results of the query, but it is very inconvenient to use and maintain, for example, the calculation logic is not visible to the user. So I implemented supporting of create/drop materialized view syntax on impala. CREATE MATERIALIZED VIEW syntax: CREATE MATERIALIZED VIEW [IF NOT EXISTS] [db_name.]table_name [PARTITIONED BY (col_name[, ...])] [SORT BY ([column [, column ...]])] [COMMENT 'table_comment'] [ROW FORMAT row_format] [WITH SERDEPROPERTIES ('key1'='value1', 'key2'='value2', ...)] [STORED AS cmvas_file_format] LOCATION 'hdfs_path' [CACHED IN 'pool_name' [WITH REPLICATION = integer] | UNCACHED] [TBLPROPERTIES ('key1'='value1', 'key2'='value2', ...)] AS select_statement cmvas_file_format: PARQUET | TEXTFILE DROP MATERIALIZED VIEW syntax: DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]table_name Change-Id: I77fdd34bf04a8994a215170747249356cd40622b --- M be/src/service/client-request-state.cc M common/thrift/JniCatalog.thrift M fe/src/main/cup/sql-parser.cup M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java M fe/src/main/java/org/apache/impala/analysis/Analyzer.java A fe/src/main/java/org/apache/impala/analysis/CreateMaterializedViewAsSelectStmt.java M fe/src/main/java/org/apache/impala/analysis/CreateTableStmt.java M fe/src/main/java/org/apache/impala/analysis/DropTableOrViewStmt.java M fe/src/main/java/org/apache/impala/analysis/LimitElement.java M fe/src/main/java/org/apache/impala/analysis/ToSqlUtils.java M fe/src/main/java/org/apache/impala/catalog/View.java M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java M fe/src/main/java/org/apache/impala/planner/Planner.java M fe/src/main/java/org/apache/impala/planner/PlannerContext.java M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java M fe/src/main/java/org/apache/impala/service/Frontend.java M fe/src/main/jflex/sql-scanner.flex M fe/src/test/java/org/apache/impala/analysis/AnalyzeDDLTest.java M fe/src/test/java/org/apache/impala/analysis/AnalyzerTest.java M fe/src/test/java/org/apache/impala/analysis/ParserTest.java M testdata/datasets/functional/functional_schema_template.sql M testdata/datasets/functional/schema_constraints.csv A testdata/workloads/functional-query/queries/QueryTest/create-materialized-view-as-select.test M tests/metadata/test_ddl.py 24 files changed, 819 insertions(+), 47 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/50/19050/11 -- To view, visit http://gerrit.cloudera.org:8080/19050 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I77fdd34bf04a8994a215170747249356cd40622b Gerrit-Change-Number: 19050 Gerrit-PatchSet: 11 Gerrit-Owner: pengdou <pengdou1...@126.com> Gerrit-Reviewer: Aman Sinha <amsi...@cloudera.com> Gerrit-Reviewer: Baike Xia <xiaba...@163.com> Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com> Gerrit-Reviewer: pengdou <pengdou1...@126.com>