| PREHOOK: query: -- list bucketing DML: multiple skewed columns. 2 stages |
| |
| -- INCLUDE_HADOOP_MAJOR_VERSIONS(0.23) |
| -- SORT_QUERY_RESULTS |
| |
| -- create a skewed table |
| create table list_bucketing_dynamic_part (key String, value String) |
| partitioned by (ds String, hr String) |
| skewed by (key, value) on (('484','val_484'),('51','val_14'),('103','val_103')) |
| stored as DIRECTORIES |
| PREHOOK: type: CREATETABLE |
| PREHOOK: Output: database:default |
| PREHOOK: Output: default@list_bucketing_dynamic_part |
| POSTHOOK: query: -- list bucketing DML: multiple skewed columns. 2 stages |
| |
| -- INCLUDE_HADOOP_MAJOR_VERSIONS(0.23) |
| -- SORT_QUERY_RESULTS |
| |
| -- create a skewed table |
| create table list_bucketing_dynamic_part (key String, value String) |
| partitioned by (ds String, hr String) |
| skewed by (key, value) on (('484','val_484'),('51','val_14'),('103','val_103')) |
| stored as DIRECTORIES |
| POSTHOOK: type: CREATETABLE |
| POSTHOOK: Output: database:default |
| POSTHOOK: Output: default@list_bucketing_dynamic_part |
| PREHOOK: query: -- list bucketing DML |
| explain extended |
| insert overwrite table list_bucketing_dynamic_part partition (ds='2008-04-08', hr) select key, value, hr from srcpart where ds='2008-04-08' |
| PREHOOK: type: QUERY |
| POSTHOOK: query: -- list bucketing DML |
| explain extended |
| insert overwrite table list_bucketing_dynamic_part partition (ds='2008-04-08', hr) select key, value, hr from srcpart where ds='2008-04-08' |
| POSTHOOK: type: QUERY |
| STAGE DEPENDENCIES: |
| Stage-1 is a root stage |
| Stage-0 depends on stages: Stage-1 |
| Stage-2 depends on stages: Stage-0 |
| |
| STAGE PLANS: |
| Stage: Stage-1 |
| Map Reduce |
| Map Operator Tree: |
| TableScan |
| alias: srcpart |
| Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE |
| GatherStats: false |
| Select Operator |
| expressions: key (type: string), value (type: string), hr (type: string) |
| outputColumnNames: _col0, _col1, _col2 |
| Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE |
| File Output Operator |
| compressed: false |
| GlobalTableId: 1 |
| #### A masked pattern was here #### |
| NumFilesPerFileSink: 1 |
| Static Partition Specification: ds=2008-04-08/ |
| Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE |
| #### A masked pattern was here #### |
| table: |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| properties: |
| bucket_count -1 |
| columns key,value |
| columns.comments |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.list_bucketing_dynamic_part |
| partition_columns ds/hr |
| partition_columns.types string:string |
| serialization.ddl struct list_bucketing_dynamic_part { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| name: default.list_bucketing_dynamic_part |
| TotalFiles: 1 |
| GatherStats: true |
| MultiFileSpray: false |
| Path -> Alias: |
| #### A masked pattern was here #### |
| Path -> Partition: |
| #### A masked pattern was here #### |
| Partition |
| base file name: hr=11 |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| partition values: |
| ds 2008-04-08 |
| hr 11 |
| properties: |
| COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}} |
| bucket_count -1 |
| columns key,value |
| columns.comments 'default','default' |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.srcpart |
| numFiles 1 |
| numRows 500 |
| partition_columns ds/hr |
| partition_columns.types string:string |
| rawDataSize 5312 |
| serialization.ddl struct srcpart { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| totalSize 5812 |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| properties: |
| bucket_count -1 |
| columns key,value |
| columns.comments 'default','default' |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.srcpart |
| partition_columns ds/hr |
| partition_columns.types string:string |
| serialization.ddl struct srcpart { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| name: default.srcpart |
| name: default.srcpart |
| #### A masked pattern was here #### |
| Partition |
| base file name: hr=12 |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| partition values: |
| ds 2008-04-08 |
| hr 12 |
| properties: |
| COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}} |
| bucket_count -1 |
| columns key,value |
| columns.comments 'default','default' |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.srcpart |
| numFiles 1 |
| numRows 500 |
| partition_columns ds/hr |
| partition_columns.types string:string |
| rawDataSize 5312 |
| serialization.ddl struct srcpart { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| totalSize 5812 |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| properties: |
| bucket_count -1 |
| columns key,value |
| columns.comments 'default','default' |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.srcpart |
| partition_columns ds/hr |
| partition_columns.types string:string |
| serialization.ddl struct srcpart { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| name: default.srcpart |
| name: default.srcpart |
| Truncated Path -> Alias: |
| /srcpart/ds=2008-04-08/hr=11 [srcpart] |
| /srcpart/ds=2008-04-08/hr=12 [srcpart] |
| |
| Stage: Stage-0 |
| Move Operator |
| tables: |
| partition: |
| ds 2008-04-08 |
| hr |
| replace: true |
| #### A masked pattern was here #### |
| table: |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| properties: |
| bucket_count -1 |
| columns key,value |
| columns.comments |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.list_bucketing_dynamic_part |
| partition_columns ds/hr |
| partition_columns.types string:string |
| serialization.ddl struct list_bucketing_dynamic_part { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| name: default.list_bucketing_dynamic_part |
| |
| Stage: Stage-2 |
| Stats-Aggr Operator |
| #### A masked pattern was here #### |
| |
| PREHOOK: query: insert overwrite table list_bucketing_dynamic_part partition (ds='2008-04-08', hr) select key, value, hr from srcpart where ds='2008-04-08' |
| PREHOOK: type: QUERY |
| PREHOOK: Input: default@srcpart |
| PREHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 |
| PREHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 |
| PREHOOK: Output: default@list_bucketing_dynamic_part@ds=2008-04-08 |
| POSTHOOK: query: insert overwrite table list_bucketing_dynamic_part partition (ds='2008-04-08', hr) select key, value, hr from srcpart where ds='2008-04-08' |
| POSTHOOK: type: QUERY |
| POSTHOOK: Input: default@srcpart |
| POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 |
| POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 |
| POSTHOOK: Output: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=11 |
| POSTHOOK: Output: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=12 |
| POSTHOOK: Lineage: list_bucketing_dynamic_part PARTITION(ds=2008-04-08,hr=11).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] |
| POSTHOOK: Lineage: list_bucketing_dynamic_part PARTITION(ds=2008-04-08,hr=11).value SIMPLE [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] |
| POSTHOOK: Lineage: list_bucketing_dynamic_part PARTITION(ds=2008-04-08,hr=12).key SIMPLE [(srcpart)srcpart.FieldSchema(name:key, type:string, comment:default), ] |
| POSTHOOK: Lineage: list_bucketing_dynamic_part PARTITION(ds=2008-04-08,hr=12).value SIMPLE [(srcpart)srcpart.FieldSchema(name:value, type:string, comment:default), ] |
| PREHOOK: query: -- check DML result |
| desc formatted list_bucketing_dynamic_part partition (ds='2008-04-08', hr='11') |
| PREHOOK: type: DESCTABLE |
| PREHOOK: Input: default@list_bucketing_dynamic_part |
| POSTHOOK: query: -- check DML result |
| desc formatted list_bucketing_dynamic_part partition (ds='2008-04-08', hr='11') |
| POSTHOOK: type: DESCTABLE |
| POSTHOOK: Input: default@list_bucketing_dynamic_part |
| # col_name data_type comment |
| |
| key string |
| value string |
| |
| # Partition Information |
| # col_name data_type comment |
| |
| ds string |
| hr string |
| |
| # Detailed Partition Information |
| Partition Value: [2008-04-08, 11] |
| Database: default |
| Table: list_bucketing_dynamic_part |
| #### A masked pattern was here #### |
| Partition Parameters: |
| COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} |
| numFiles 3 |
| numRows 500 |
| rawDataSize 5312 |
| totalSize 5812 |
| #### A masked pattern was here #### |
| |
| # Storage Information |
| SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| InputFormat: org.apache.hadoop.mapred.TextInputFormat |
| OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| Compressed: No |
| Num Buckets: -1 |
| Bucket Columns: [] |
| Sort Columns: [] |
| Stored As SubDirectories: Yes |
| Skewed Columns: [key, value] |
| Skewed Values: [[103, val_103], [484, val_484], [51, val_14]] |
| #### A masked pattern was here #### |
| Skewed Value to Truncated Path: {[103, val_103]=/list_bucketing_dynamic_part/ds=2008-04-08/hr=11/key=103/value=val_103, [484, val_484]=/list_bucketing_dynamic_part/ds=2008-04-08/hr=11/key=484/value=val_484} |
| Storage Desc Params: |
| serialization.format 1 |
| PREHOOK: query: desc formatted list_bucketing_dynamic_part partition (ds='2008-04-08', hr='12') |
| PREHOOK: type: DESCTABLE |
| PREHOOK: Input: default@list_bucketing_dynamic_part |
| POSTHOOK: query: desc formatted list_bucketing_dynamic_part partition (ds='2008-04-08', hr='12') |
| POSTHOOK: type: DESCTABLE |
| POSTHOOK: Input: default@list_bucketing_dynamic_part |
| # col_name data_type comment |
| |
| key string |
| value string |
| |
| # Partition Information |
| # col_name data_type comment |
| |
| ds string |
| hr string |
| |
| # Detailed Partition Information |
| Partition Value: [2008-04-08, 12] |
| Database: default |
| Table: list_bucketing_dynamic_part |
| #### A masked pattern was here #### |
| Partition Parameters: |
| COLUMN_STATS_ACCURATE {\"BASIC_STATS\":\"true\"} |
| numFiles 3 |
| numRows 500 |
| rawDataSize 5312 |
| totalSize 5812 |
| #### A masked pattern was here #### |
| |
| # Storage Information |
| SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| InputFormat: org.apache.hadoop.mapred.TextInputFormat |
| OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| Compressed: No |
| Num Buckets: -1 |
| Bucket Columns: [] |
| Sort Columns: [] |
| Stored As SubDirectories: Yes |
| Skewed Columns: [key, value] |
| Skewed Values: [[103, val_103], [484, val_484], [51, val_14]] |
| #### A masked pattern was here #### |
| Skewed Value to Truncated Path: {[103, val_103]=/list_bucketing_dynamic_part/ds=2008-04-08/hr=12/key=103/value=val_103, [484, val_484]=/list_bucketing_dynamic_part/ds=2008-04-08/hr=12/key=484/value=val_484} |
| Storage Desc Params: |
| serialization.format 1 |
| PREHOOK: query: select count(1) from srcpart where ds='2008-04-08' |
| PREHOOK: type: QUERY |
| PREHOOK: Input: default@srcpart |
| PREHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 |
| PREHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 |
| #### A masked pattern was here #### |
| POSTHOOK: query: select count(1) from srcpart where ds='2008-04-08' |
| POSTHOOK: type: QUERY |
| POSTHOOK: Input: default@srcpart |
| POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 |
| POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 |
| #### A masked pattern was here #### |
| 1000 |
| PREHOOK: query: select count(1) from list_bucketing_dynamic_part where ds='2008-04-08' |
| PREHOOK: type: QUERY |
| PREHOOK: Input: default@list_bucketing_dynamic_part |
| PREHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=11 |
| PREHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=12 |
| #### A masked pattern was here #### |
| POSTHOOK: query: select count(1) from list_bucketing_dynamic_part where ds='2008-04-08' |
| POSTHOOK: type: QUERY |
| POSTHOOK: Input: default@list_bucketing_dynamic_part |
| POSTHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=11 |
| POSTHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=12 |
| #### A masked pattern was here #### |
| 1000 |
| PREHOOK: query: select key, value from srcpart where ds='2008-04-08' and key = "103" and value ="val_103" |
| PREHOOK: type: QUERY |
| PREHOOK: Input: default@srcpart |
| PREHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 |
| PREHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 |
| #### A masked pattern was here #### |
| POSTHOOK: query: select key, value from srcpart where ds='2008-04-08' and key = "103" and value ="val_103" |
| POSTHOOK: type: QUERY |
| POSTHOOK: Input: default@srcpart |
| POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11 |
| POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12 |
| #### A masked pattern was here #### |
| 103 val_103 |
| 103 val_103 |
| 103 val_103 |
| 103 val_103 |
| PREHOOK: query: explain extended |
| select key, value, ds, hr from list_bucketing_dynamic_part where ds='2008-04-08' and key = "103" and value ="val_103" |
| PREHOOK: type: QUERY |
| POSTHOOK: query: explain extended |
| select key, value, ds, hr from list_bucketing_dynamic_part where ds='2008-04-08' and key = "103" and value ="val_103" |
| POSTHOOK: type: QUERY |
| STAGE DEPENDENCIES: |
| Stage-0 is a root stage |
| |
| STAGE PLANS: |
| Stage: Stage-0 |
| Fetch Operator |
| limit: -1 |
| Partition Description: |
| Partition |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| partition values: |
| ds 2008-04-08 |
| hr 11 |
| properties: |
| COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} |
| bucket_count -1 |
| columns key,value |
| columns.comments |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.list_bucketing_dynamic_part |
| numFiles 3 |
| numRows 500 |
| partition_columns ds/hr |
| partition_columns.types string:string |
| rawDataSize 5312 |
| serialization.ddl struct list_bucketing_dynamic_part { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| totalSize 5812 |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| properties: |
| bucket_count -1 |
| columns key,value |
| columns.comments |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.list_bucketing_dynamic_part |
| partition_columns ds/hr |
| partition_columns.types string:string |
| serialization.ddl struct list_bucketing_dynamic_part { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| name: default.list_bucketing_dynamic_part |
| name: default.list_bucketing_dynamic_part |
| Partition |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| partition values: |
| ds 2008-04-08 |
| hr 12 |
| properties: |
| COLUMN_STATS_ACCURATE {"BASIC_STATS":"true"} |
| bucket_count -1 |
| columns key,value |
| columns.comments |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.list_bucketing_dynamic_part |
| numFiles 3 |
| numRows 500 |
| partition_columns ds/hr |
| partition_columns.types string:string |
| rawDataSize 5312 |
| serialization.ddl struct list_bucketing_dynamic_part { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| totalSize 5812 |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| |
| input format: org.apache.hadoop.mapred.TextInputFormat |
| output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat |
| properties: |
| bucket_count -1 |
| columns key,value |
| columns.comments |
| columns.types string:string |
| #### A masked pattern was here #### |
| name default.list_bucketing_dynamic_part |
| partition_columns ds/hr |
| partition_columns.types string:string |
| serialization.ddl struct list_bucketing_dynamic_part { string key, string value} |
| serialization.format 1 |
| serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| #### A masked pattern was here #### |
| serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe |
| name: default.list_bucketing_dynamic_part |
| name: default.list_bucketing_dynamic_part |
| Processor Tree: |
| TableScan |
| alias: list_bucketing_dynamic_part |
| Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE |
| GatherStats: false |
| Filter Operator |
| isSamplingPred: false |
| predicate: ((key = '103') and (value = 'val_103')) (type: boolean) |
| Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE |
| Select Operator |
| expressions: '103' (type: string), 'val_103' (type: string), '2008-04-08' (type: string), hr (type: string) |
| outputColumnNames: _col0, _col1, _col2, _col3 |
| Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE |
| ListSink |
| |
| PREHOOK: query: select key, value, ds, hr from list_bucketing_dynamic_part where ds='2008-04-08' and key = "103" and value ="val_103" |
| PREHOOK: type: QUERY |
| PREHOOK: Input: default@list_bucketing_dynamic_part |
| PREHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=11 |
| PREHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=12 |
| #### A masked pattern was here #### |
| POSTHOOK: query: select key, value, ds, hr from list_bucketing_dynamic_part where ds='2008-04-08' and key = "103" and value ="val_103" |
| POSTHOOK: type: QUERY |
| POSTHOOK: Input: default@list_bucketing_dynamic_part |
| POSTHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=11 |
| POSTHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=12 |
| #### A masked pattern was here #### |
| 103 val_103 2008-04-08 11 |
| 103 val_103 2008-04-08 11 |
| 103 val_103 2008-04-08 12 |
| 103 val_103 2008-04-08 12 |
| PREHOOK: query: -- clean up resources |
| drop table list_bucketing_dynamic_part |
| PREHOOK: type: DROPTABLE |
| PREHOOK: Input: default@list_bucketing_dynamic_part |
| PREHOOK: Output: default@list_bucketing_dynamic_part |
| POSTHOOK: query: -- clean up resources |
| drop table list_bucketing_dynamic_part |
| POSTHOOK: type: DROPTABLE |
| POSTHOOK: Input: default@list_bucketing_dynamic_part |
| POSTHOOK: Output: default@list_bucketing_dynamic_part |