Repository: hive
Updated Branches:
  refs/heads/master 309cb0d43 -> 055f6a0de


HIVE-16938: INFORMATION_SCHEMA usability: difficult to access # of table 
records (Gunther Hagleitner, reviewed by Thejas Nair)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/055f6a0d
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/055f6a0d
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/055f6a0d

Branch: refs/heads/master
Commit: 055f6a0dee7ff0485773ad97f6bc11b62fd6f386
Parents: 309cb0d
Author: Gunther Hagleitner <gunt...@apache.org>
Authored: Fri Jun 23 21:50:55 2017 -0700
Committer: Gunther Hagleitner <gunt...@apache.org>
Committed: Mon Jun 26 09:28:27 2017 -0700

----------------------------------------------------------------------
 .../upgrade/hive/hive-schema-3.0.0.hive.sql     |  22 ++
 ql/src/test/queries/clientpositive/sysdb.q      |  16 +-
 .../results/clientpositive/llap/sysdb.q.out     | 292 +++++++++++++------
 3 files changed, 230 insertions(+), 100 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/055f6a0d/metastore/scripts/upgrade/hive/hive-schema-3.0.0.hive.sql
----------------------------------------------------------------------
diff --git a/metastore/scripts/upgrade/hive/hive-schema-3.0.0.hive.sql 
b/metastore/scripts/upgrade/hive/hive-schema-3.0.0.hive.sql
index 70559cb..218ac04 100644
--- a/metastore/scripts/upgrade/hive/hive-schema-3.0.0.hive.sql
+++ b/metastore/scripts/upgrade/hive/hive-schema-3.0.0.hive.sql
@@ -924,6 +924,28 @@ FROM
   \"KEY_CONSTRAINTS\""
 );
 
+CREATE VIEW `TABLE_STATS_VIEW` AS
+SELECT
+  `TBL_ID`,
+  max(CASE `PARAM_KEY` WHEN 'COLUMN_STATS_ACCURATE' THEN `PARAM_VALUE` END) AS 
COLUMN_STATS_ACCURATE,
+  max(CASE `PARAM_KEY` WHEN 'numFiles' THEN `PARAM_VALUE` END) AS NUM_FILES,
+  max(CASE `PARAM_KEY` WHEN 'numRows' THEN `PARAM_VALUE` END) AS NUM_ROWS,
+  max(CASE `PARAM_KEY` WHEN 'rawDataSize' THEN `PARAM_VALUE` END) AS 
RAW_DATA_SIZE,
+  max(CASE `PARAM_KEY` WHEN 'totalSize' THEN `PARAM_VALUE` END) AS TOTAL_SIZE,
+  max(CASE `PARAM_KEY` WHEN 'transient_lastDdlTime' THEN `PARAM_VALUE` END) AS 
TRANSIENT_LAST_DDL_TIME
+FROM `TABLE_PARAMS` GROUP BY `TBL_ID`;
+
+CREATE VIEW `PARTITION_STATS_VIEW` AS
+SELECT
+  `PART_ID`,
+  max(CASE `PARAM_KEY` WHEN 'COLUMN_STATS_ACCURATE' THEN `PARAM_VALUE` END) AS 
COLUMN_STATS_ACCURATE,
+  max(CASE `PARAM_KEY` WHEN 'numFiles' THEN `PARAM_VALUE` END) AS NUM_FILES,
+  max(CASE `PARAM_KEY` WHEN 'numRows' THEN `PARAM_VALUE` END) AS NUM_ROWS,
+  max(CASE `PARAM_KEY` WHEN 'rawDataSize' THEN `PARAM_VALUE` END) AS 
RAW_DATA_SIZE,
+  max(CASE `PARAM_KEY` WHEN 'totalSize' THEN `PARAM_VALUE` END) AS TOTAL_SIZE,
+  max(CASE `PARAM_KEY` WHEN 'transient_lastDdlTime' THEN `PARAM_VALUE` END) AS 
TRANSIENT_LAST_DDL_TIME
+FROM `PARTITION_PARAMS` GROUP BY `PART_ID`;
+
 CREATE DATABASE INFORMATION_SCHEMA;
 
 USE INFORMATION_SCHEMA;

http://git-wip-us.apache.org/repos/asf/hive/blob/055f6a0d/ql/src/test/queries/clientpositive/sysdb.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/sysdb.q 
b/ql/src/test/queries/clientpositive/sysdb.q
index 9c9d6be..36d80e2 100644
--- a/ql/src/test/queries/clientpositive/sysdb.q
+++ b/ql/src/test/queries/clientpositive/sysdb.q
@@ -102,6 +102,16 @@ select func_name, func_type from funcs order by func_name, 
func_type limit 5;
 
 select constraint_name from key_constraints order by constraint_name limit 5;
 
+select COLUMN_STATS_ACCURATE, NUM_FILES, NUM_ROWS, RAW_DATA_SIZE, TOTAL_SIZE 
FROM TABLE_STATS_VIEW where COLUMN_STATS_ACCURATE is not null order by 
NUM_FILES, NUM_ROWS, RAW_DATA_SIZE limit 5;
+
+select COLUMN_STATS_ACCURATE, NUM_FILES, NUM_ROWS, RAW_DATA_SIZE, TOTAL_SIZE 
FROM PARTITION_STATS_VIEW where COLUMN_STATS_ACCURATE is not null order by 
NUM_FILES, NUM_ROWS, RAW_DATA_SIZE limit 5;
+
+describe sys.tab_col_stats;
+
+explain select max(num_distincts) from sys.tab_col_stats;
+
+select max(num_distincts) from sys.tab_col_stats;
+
 use INFORMATION_SCHEMA;
 
 select count(*) from SCHEMATA;
@@ -115,9 +125,3 @@ select * from COLUMNS where TABLE_NAME = 'alltypesorc' or 
TABLE_NAME = 'moretype
 select * from COLUMN_PRIVILEGES order by GRANTOR, GRANTEE, TABLE_SCHEMA, 
TABLE_NAME, COLUMN_NAME limit 10;
 
 select TABLE_SCHEMA, TABLE_NAME from views order by TABLE_SCHEMA, TABLE_NAME;
-
-describe sys.tab_col_stats;
-
-explain select max(num_distincts) from sys.tab_col_stats;
-
-select max(num_distincts) from sys.tab_col_stats;

http://git-wip-us.apache.org/repos/asf/hive/blob/055f6a0d/ql/src/test/results/clientpositive/llap/sysdb.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/sysdb.q.out 
b/ql/src/test/results/clientpositive/llap/sysdb.q.out
index f360c65..7eba2d8 100644
--- a/ql/src/test/results/clientpositive/llap/sysdb.q.out
+++ b/ql/src/test/results/clientpositive/llap/sysdb.q.out
@@ -2113,6 +2113,76 @@ FROM
 POSTHOOK: type: CREATETABLE
 POSTHOOK: Output: SYS@KEY_CONSTRAINTS
 POSTHOOK: Output: database:sys
+PREHOOK: query: CREATE VIEW `TABLE_STATS_VIEW` AS
+SELECT
+  `TBL_ID`,
+  max(CASE `PARAM_KEY` WHEN 'COLUMN_STATS_ACCURATE' THEN `PARAM_VALUE` END) AS 
COLUMN_STATS_ACCURATE,
+  max(CASE `PARAM_KEY` WHEN 'numFiles' THEN `PARAM_VALUE` END) AS NUM_FILES,
+  max(CASE `PARAM_KEY` WHEN 'numRows' THEN `PARAM_VALUE` END) AS NUM_ROWS,
+  max(CASE `PARAM_KEY` WHEN 'rawDataSize' THEN `PARAM_VALUE` END) AS 
RAW_DATA_SIZE,
+  max(CASE `PARAM_KEY` WHEN 'totalSize' THEN `PARAM_VALUE` END) AS TOTAL_SIZE,
+#### A masked pattern was here ####
+FROM `TABLE_PARAMS` GROUP BY `TBL_ID`
+PREHOOK: type: CREATEVIEW
+PREHOOK: Input: sys@table_params
+PREHOOK: Output: SYS@TABLE_STATS_VIEW
+PREHOOK: Output: database:sys
+POSTHOOK: query: CREATE VIEW `TABLE_STATS_VIEW` AS
+SELECT
+  `TBL_ID`,
+  max(CASE `PARAM_KEY` WHEN 'COLUMN_STATS_ACCURATE' THEN `PARAM_VALUE` END) AS 
COLUMN_STATS_ACCURATE,
+  max(CASE `PARAM_KEY` WHEN 'numFiles' THEN `PARAM_VALUE` END) AS NUM_FILES,
+  max(CASE `PARAM_KEY` WHEN 'numRows' THEN `PARAM_VALUE` END) AS NUM_ROWS,
+  max(CASE `PARAM_KEY` WHEN 'rawDataSize' THEN `PARAM_VALUE` END) AS 
RAW_DATA_SIZE,
+  max(CASE `PARAM_KEY` WHEN 'totalSize' THEN `PARAM_VALUE` END) AS TOTAL_SIZE,
+#### A masked pattern was here ####
+FROM `TABLE_PARAMS` GROUP BY `TBL_ID`
+POSTHOOK: type: CREATEVIEW
+POSTHOOK: Input: sys@table_params
+POSTHOOK: Output: SYS@TABLE_STATS_VIEW
+POSTHOOK: Output: database:sys
+POSTHOOK: Lineage: TABLE_STATS_VIEW.column_stats_accurate EXPRESSION 
[(table_params)table_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(table_params)table_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: TABLE_STATS_VIEW.num_files EXPRESSION 
[(table_params)table_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(table_params)table_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: TABLE_STATS_VIEW.num_rows EXPRESSION 
[(table_params)table_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(table_params)table_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: TABLE_STATS_VIEW.raw_data_size EXPRESSION 
[(table_params)table_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(table_params)table_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: TABLE_STATS_VIEW.tbl_id SIMPLE 
[(table_params)table_params.FieldSchema(name:tbl_id, type:bigint, comment:from 
deserializer), ]
+POSTHOOK: Lineage: TABLE_STATS_VIEW.total_size EXPRESSION 
[(table_params)table_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(table_params)table_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: TABLE_STATS_VIEW.transient_last_ddl_time EXPRESSION 
[(table_params)table_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(table_params)table_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+PREHOOK: query: CREATE VIEW `PARTITION_STATS_VIEW` AS
+SELECT
+  `PART_ID`,
+  max(CASE `PARAM_KEY` WHEN 'COLUMN_STATS_ACCURATE' THEN `PARAM_VALUE` END) AS 
COLUMN_STATS_ACCURATE,
+  max(CASE `PARAM_KEY` WHEN 'numFiles' THEN `PARAM_VALUE` END) AS NUM_FILES,
+  max(CASE `PARAM_KEY` WHEN 'numRows' THEN `PARAM_VALUE` END) AS NUM_ROWS,
+  max(CASE `PARAM_KEY` WHEN 'rawDataSize' THEN `PARAM_VALUE` END) AS 
RAW_DATA_SIZE,
+  max(CASE `PARAM_KEY` WHEN 'totalSize' THEN `PARAM_VALUE` END) AS TOTAL_SIZE,
+#### A masked pattern was here ####
+FROM `PARTITION_PARAMS` GROUP BY `PART_ID`
+PREHOOK: type: CREATEVIEW
+PREHOOK: Input: sys@partition_params
+PREHOOK: Output: SYS@PARTITION_STATS_VIEW
+PREHOOK: Output: database:sys
+POSTHOOK: query: CREATE VIEW `PARTITION_STATS_VIEW` AS
+SELECT
+  `PART_ID`,
+  max(CASE `PARAM_KEY` WHEN 'COLUMN_STATS_ACCURATE' THEN `PARAM_VALUE` END) AS 
COLUMN_STATS_ACCURATE,
+  max(CASE `PARAM_KEY` WHEN 'numFiles' THEN `PARAM_VALUE` END) AS NUM_FILES,
+  max(CASE `PARAM_KEY` WHEN 'numRows' THEN `PARAM_VALUE` END) AS NUM_ROWS,
+  max(CASE `PARAM_KEY` WHEN 'rawDataSize' THEN `PARAM_VALUE` END) AS 
RAW_DATA_SIZE,
+  max(CASE `PARAM_KEY` WHEN 'totalSize' THEN `PARAM_VALUE` END) AS TOTAL_SIZE,
+#### A masked pattern was here ####
+FROM `PARTITION_PARAMS` GROUP BY `PART_ID`
+POSTHOOK: type: CREATEVIEW
+POSTHOOK: Input: sys@partition_params
+POSTHOOK: Output: SYS@PARTITION_STATS_VIEW
+POSTHOOK: Output: database:sys
+POSTHOOK: Lineage: PARTITION_STATS_VIEW.column_stats_accurate EXPRESSION 
[(partition_params)partition_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(partition_params)partition_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: PARTITION_STATS_VIEW.num_files EXPRESSION 
[(partition_params)partition_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(partition_params)partition_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: PARTITION_STATS_VIEW.num_rows EXPRESSION 
[(partition_params)partition_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(partition_params)partition_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: PARTITION_STATS_VIEW.part_id SIMPLE 
[(partition_params)partition_params.FieldSchema(name:part_id, type:bigint, 
comment:from deserializer), ]
+POSTHOOK: Lineage: PARTITION_STATS_VIEW.raw_data_size EXPRESSION 
[(partition_params)partition_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(partition_params)partition_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: PARTITION_STATS_VIEW.total_size EXPRESSION 
[(partition_params)partition_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(partition_params)partition_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
+POSTHOOK: Lineage: PARTITION_STATS_VIEW.transient_last_ddl_time EXPRESSION 
[(partition_params)partition_params.FieldSchema(name:param_key, type:string, 
comment:from deserializer), 
(partition_params)partition_params.FieldSchema(name:param_value, type:string, 
comment:from deserializer), ]
 PREHOOK: query: CREATE DATABASE INFORMATION_SCHEMA
 PREHOOK: type: CREATEDATABASE
 PREHOOK: Output: database:INFORMATION_SCHEMA
@@ -2889,7 +2959,7 @@ POSTHOOK: query: select count(*) from cds
 POSTHOOK: type: QUERY
 POSTHOOK: Input: sys@cds
 #### A masked pattern was here ####
-63
+65
 PREHOOK: query: select column_name, type_name, integer_idx from columns_v2 
order by column_name, integer_idx limit 5
 PREHOOK: type: QUERY
 PREHOOK: Input: sys@columns_v2
@@ -3043,7 +3113,7 @@ POSTHOOK: query: select count(*) from sds
 POSTHOOK: type: QUERY
 POSTHOOK: Input: sys@sds
 #### A masked pattern was here ####
-69
+71
 PREHOOK: query: select param_key, param_value from sd_params order by 
param_key, param_value limit 5
 PREHOOK: type: QUERY
 PREHOOK: Input: sys@sd_params
@@ -3258,6 +3328,128 @@ sys_pk_bucketing_cols
 sys_pk_cds
 sys_pk_col_value_loc_map
 sys_pk_col_value_loc_map
+PREHOOK: query: select COLUMN_STATS_ACCURATE, NUM_FILES, NUM_ROWS, 
RAW_DATA_SIZE, TOTAL_SIZE FROM TABLE_STATS_VIEW where COLUMN_STATS_ACCURATE is 
not null order by NUM_FILES, NUM_ROWS, RAW_DATA_SIZE limit 5
+PREHOOK: type: QUERY
+PREHOOK: Input: sys@table_params
+PREHOOK: Input: sys@table_stats_view
+#### A masked pattern was here ####
+POSTHOOK: query: select COLUMN_STATS_ACCURATE, NUM_FILES, NUM_ROWS, 
RAW_DATA_SIZE, TOTAL_SIZE FROM TABLE_STATS_VIEW where COLUMN_STATS_ACCURATE is 
not null order by NUM_FILES, NUM_ROWS, RAW_DATA_SIZE limit 5
+POSTHOOK: type: QUERY
+POSTHOOK: Input: sys@table_params
+POSTHOOK: Input: sys@table_stats_view
+#### A masked pattern was here ####
+{"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}}    0       
0       0       0
+{"BASIC_STATS":"true","COLUMN_STATS":{"column_name":"true","create_time":"true","grant_option":"true","grantor":"true","grantor_type":"true","principal_name":"true","principal_type":"true","tbl_col_priv":"true","tbl_column_grant_id":"true","tbl_id":"true"}}
      0       0       0       0
+{"BASIC_STATS":"true","COLUMN_STATS":{"next_val":"true","sequence_name":"true"}}
       0       0       0       0
+{"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}}    0       
0       0       0
+#### A masked pattern was here ####
+PREHOOK: query: select COLUMN_STATS_ACCURATE, NUM_FILES, NUM_ROWS, 
RAW_DATA_SIZE, TOTAL_SIZE FROM PARTITION_STATS_VIEW where COLUMN_STATS_ACCURATE 
is not null order by NUM_FILES, NUM_ROWS, RAW_DATA_SIZE limit 5
+PREHOOK: type: QUERY
+PREHOOK: Input: sys@partition_params
+PREHOOK: Input: sys@partition_stats_view
+#### A masked pattern was here ####
+POSTHOOK: query: select COLUMN_STATS_ACCURATE, NUM_FILES, NUM_ROWS, 
RAW_DATA_SIZE, TOTAL_SIZE FROM PARTITION_STATS_VIEW where COLUMN_STATS_ACCURATE 
is not null order by NUM_FILES, NUM_ROWS, RAW_DATA_SIZE limit 5
+POSTHOOK: type: QUERY
+POSTHOOK: Input: sys@partition_params
+POSTHOOK: Input: sys@partition_stats_view
+#### A masked pattern was here ####
+{"BASIC_STATS":"true","COLUMN_STATS":{"c_boolean":"true","c_float":"true","c_int":"true","key":"true","value":"true"}}
 1       20      262     282
+{"BASIC_STATS":"true","COLUMN_STATS":{"c_boolean":"true","c_float":"true","c_int":"true","key":"true","value":"true"}}
 1       20      262     282
+{"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}}    1       
500     5312    5812
+{"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}}    1       
500     5312    5812
+{"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}}    1       
500     5312    5812
+PREHOOK: query: describe sys.tab_col_stats
+PREHOOK: type: DESCTABLE
+PREHOOK: Input: sys@tab_col_stats
+POSTHOOK: query: describe sys.tab_col_stats
+POSTHOOK: type: DESCTABLE
+POSTHOOK: Input: sys@tab_col_stats
+cs_id                  bigint                  from deserializer   
+db_name                string                  from deserializer   
+table_name             string                  from deserializer   
+column_name            string                  from deserializer   
+column_type            string                  from deserializer   
+tbl_id                 bigint                  from deserializer   
+long_low_value         bigint                  from deserializer   
+long_high_value        bigint                  from deserializer   
+double_high_value      double                  from deserializer   
+double_low_value       double                  from deserializer   
+big_decimal_low_value  string                  from deserializer   
+big_decimal_high_value string                  from deserializer   
+num_nulls              bigint                  from deserializer   
+num_distincts          bigint                  from deserializer   
+avg_col_len            double                  from deserializer   
+max_col_len            bigint                  from deserializer   
+num_trues              bigint                  from deserializer   
+num_falses             bigint                  from deserializer   
+last_analyzed          bigint                  from deserializer   
+PREHOOK: query: explain select max(num_distincts) from sys.tab_col_stats
+PREHOOK: type: QUERY
+POSTHOOK: query: explain select max(num_distincts) from sys.tab_col_stats
+POSTHOOK: type: QUERY
+STAGE DEPENDENCIES:
+  Stage-1 is a root stage
+  Stage-0 depends on stages: Stage-1
+
+STAGE PLANS:
+  Stage: Stage-1
+    Tez
+#### A masked pattern was here ####
+      Edges:
+        Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE)
+#### A masked pattern was here ####
+      Vertices:
+        Map 1 
+            Map Operator Tree:
+                TableScan
+                  alias: tab_col_stats
+                  Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
+                  Select Operator
+                    expressions: num_distincts (type: bigint)
+                    outputColumnNames: num_distincts
+                    Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
+                    Group By Operator
+                      aggregations: max(num_distincts)
+                      mode: hash
+                      outputColumnNames: _col0
+                      Statistics: Num rows: 1 Data size: 8 Basic stats: 
COMPLETE Column stats: NONE
+                      Reduce Output Operator
+                        sort order: 
+                        Statistics: Num rows: 1 Data size: 8 Basic stats: 
COMPLETE Column stats: NONE
+                        value expressions: _col0 (type: bigint)
+            Execution mode: llap
+            LLAP IO: no inputs
+        Reducer 2 
+            Execution mode: llap
+            Reduce Operator Tree:
+              Group By Operator
+                aggregations: max(VALUE._col0)
+                mode: mergepartial
+                outputColumnNames: _col0
+                Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE 
Column stats: NONE
+                File Output Operator
+                  compressed: false
+                  Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE 
Column stats: NONE
+                  table:
+                      input format: 
org.apache.hadoop.mapred.SequenceFileInputFormat
+                      output format: 
org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
+                      serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
+
+  Stage: Stage-0
+    Fetch Operator
+      limit: -1
+      Processor Tree:
+        ListSink
+
+PREHOOK: query: select max(num_distincts) from sys.tab_col_stats
+PREHOOK: type: QUERY
+PREHOOK: Input: sys@tab_col_stats
+#### A masked pattern was here ####
+POSTHOOK: query: select max(num_distincts) from sys.tab_col_stats
+POSTHOOK: type: QUERY
+POSTHOOK: Input: sys@tab_col_stats
+#### A masked pattern was here ####
+7488
 PREHOOK: query: use INFORMATION_SCHEMA
 PREHOOK: type: SWITCHDATABASE
 PREHOOK: Input: database:information_schema
@@ -3330,6 +3522,7 @@ default   sys     part_privs      BASE_TABLE      NULL    
NULL    NULL    NULL    NULL    YES     NO      NULL
 default        sys     partition_key_vals      BASE_TABLE      NULL    NULL    
NULL    NULL    NULL    YES     NO      NULL
 default        sys     partition_keys  BASE_TABLE      NULL    NULL    NULL    
NULL    NULL    YES     NO      NULL
 default        sys     partition_params        BASE_TABLE      NULL    NULL    
NULL    NULL    NULL    YES     NO      NULL
+default        sys     partition_stats_view    VIEW    NULL    NULL    NULL    
NULL    NULL    NO      NO      NULL
 default        sys     partitions      BASE_TABLE      NULL    NULL    NULL    
NULL    NULL    YES     NO      NULL
 default        sys     role_map        BASE_TABLE      NULL    NULL    NULL    
NULL    NULL    YES     NO      NULL
 default        sys     roles   BASE_TABLE      NULL    NULL    NULL    NULL    
NULL    YES     NO      NULL
@@ -3346,6 +3539,7 @@ default   sys     skewed_values   BASE_TABLE      NULL    
NULL    NULL    NULL    NULL    YES     NO      NULL
 default        sys     sort_cols       BASE_TABLE      NULL    NULL    NULL    
NULL    NULL    YES     NO      NULL
 default        sys     tab_col_stats   BASE_TABLE      NULL    NULL    NULL    
NULL    NULL    YES     NO      NULL
 default        sys     table_params    BASE_TABLE      NULL    NULL    NULL    
NULL    NULL    YES     NO      NULL
+default        sys     table_stats_view        VIEW    NULL    NULL    NULL    
NULL    NULL    NO      NO      NULL
 default        sys     tbl_col_privs   BASE_TABLE      NULL    NULL    NULL    
NULL    NULL    YES     NO      NULL
 default        sys     tbl_privs       BASE_TABLE      NULL    NULL    NULL    
NULL    NULL    YES     NO      NULL
 default        sys     tbls    BASE_TABLE      NULL    NULL    NULL    NULL    
NULL    YES     NO      NULL
@@ -3445,95 +3639,5 @@ information_schema       schemata
 information_schema     table_privileges
 information_schema     tables
 information_schema     views
-PREHOOK: query: describe sys.tab_col_stats
-PREHOOK: type: DESCTABLE
-PREHOOK: Input: sys@tab_col_stats
-POSTHOOK: query: describe sys.tab_col_stats
-POSTHOOK: type: DESCTABLE
-POSTHOOK: Input: sys@tab_col_stats
-cs_id                  bigint                  from deserializer   
-db_name                string                  from deserializer   
-table_name             string                  from deserializer   
-column_name            string                  from deserializer   
-column_type            string                  from deserializer   
-tbl_id                 bigint                  from deserializer   
-long_low_value         bigint                  from deserializer   
-long_high_value        bigint                  from deserializer   
-double_high_value      double                  from deserializer   
-double_low_value       double                  from deserializer   
-big_decimal_low_value  string                  from deserializer   
-big_decimal_high_value string                  from deserializer   
-num_nulls              bigint                  from deserializer   
-num_distincts          bigint                  from deserializer   
-avg_col_len            double                  from deserializer   
-max_col_len            bigint                  from deserializer   
-num_trues              bigint                  from deserializer   
-num_falses             bigint                  from deserializer   
-last_analyzed          bigint                  from deserializer   
-PREHOOK: query: explain select max(num_distincts) from sys.tab_col_stats
-PREHOOK: type: QUERY
-POSTHOOK: query: explain select max(num_distincts) from sys.tab_col_stats
-POSTHOOK: type: QUERY
-STAGE DEPENDENCIES:
-  Stage-1 is a root stage
-  Stage-0 depends on stages: Stage-1
-
-STAGE PLANS:
-  Stage: Stage-1
-    Tez
-#### A masked pattern was here ####
-      Edges:
-        Reducer 2 <- Map 1 (CUSTOM_SIMPLE_EDGE)
-#### A masked pattern was here ####
-      Vertices:
-        Map 1 
-            Map Operator Tree:
-                TableScan
-                  alias: tab_col_stats
-                  Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
-                  Select Operator
-                    expressions: num_distincts (type: bigint)
-                    outputColumnNames: num_distincts
-                    Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 
Column stats: NONE
-                    Group By Operator
-                      aggregations: max(num_distincts)
-                      mode: hash
-                      outputColumnNames: _col0
-                      Statistics: Num rows: 1 Data size: 8 Basic stats: 
COMPLETE Column stats: NONE
-                      Reduce Output Operator
-                        sort order: 
-                        Statistics: Num rows: 1 Data size: 8 Basic stats: 
COMPLETE Column stats: NONE
-                        value expressions: _col0 (type: bigint)
-            Execution mode: llap
-            LLAP IO: no inputs
-        Reducer 2 
-            Execution mode: llap
-            Reduce Operator Tree:
-              Group By Operator
-                aggregations: max(VALUE._col0)
-                mode: mergepartial
-                outputColumnNames: _col0
-                Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE 
Column stats: NONE
-                File Output Operator
-                  compressed: false
-                  Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE 
Column stats: NONE
-                  table:
-                      input format: 
org.apache.hadoop.mapred.SequenceFileInputFormat
-                      output format: 
org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
-                      serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
-
-  Stage: Stage-0
-    Fetch Operator
-      limit: -1
-      Processor Tree:
-        ListSink
-
-PREHOOK: query: select max(num_distincts) from sys.tab_col_stats
-PREHOOK: type: QUERY
-PREHOOK: Input: sys@tab_col_stats
-#### A masked pattern was here ####
-POSTHOOK: query: select max(num_distincts) from sys.tab_col_stats
-POSTHOOK: type: QUERY
-POSTHOOK: Input: sys@tab_col_stats
-#### A masked pattern was here ####
-7488
+sys    partition_stats_view
+sys    table_stats_view

Reply via email to