[ 
https://issues.apache.org/jira/browse/TRAFODION-2929?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16342910#comment-16342910
 ] 

ASF GitHub Bot commented on TRAFODION-2929:
-------------------------------------------

Github user liuyu000 commented on a diff in the pull request:

    https://github.com/apache/trafodion/pull/1416#discussion_r164338657
  
    --- Diff: docs/sql_reference/src/asciidoc/_chapters/sql_utilities.adoc ---
    @@ -1173,6 +1186,362 @@ SQL> POPULATE INDEX index_target_table4 ON 
target_table4;
     SQL> DROP INDEX index_target_table4;
     --- SQL operation complete.
     ```
    +
    +[[rebuild_indexes_examples]]
    +==== Examples of `REBUILD INDEXES`
    +
    +Suppose that we have following tables:
    +
    +_source_table_:
    +
    +```
    +SQL>select count(*) from source_table;
    +(EXPR)
    +--------------------
    +             1000000
    +
    +--- 1 row(s) selected. 
    +```
    +
    +_target_table1_ has the same structure as _target_table2_, here takes 
_target_table1_ for example:
    +
    +```
    +SQL>CREATE TABLE target_table1
    +  ( 
    +    ID                               INT NO DEFAULT NOT NULL NOT DROPPABLE 
NOT
    +      SERIALIZED
    +  , NUM                              INT DEFAULT NULL NOT SERIALIZED
    +  , CARD_ID                          LARGEINT DEFAULT NULL NOT SERIALIZED
    +  , PRICE                            DECIMAL(11, 3) DEFAULT NULL NOT 
SERIALIZED
    +  , START_DATE                       DATE DEFAULT NULL NOT SERIALIZED
    +  , START_TIME                       TIME(0) DEFAULT NULL NOT SERIALIZED
    +  , END_TIME                         TIMESTAMP(6) DEFAULT NULL NOT 
SERIALIZED
    +  , B_YEAR                           INTERVAL YEAR(10) DEFAULT NULL NOT
    +      SERIALIZED
    +  , B_YM                             INTERVAL YEAR(5) TO MONTH DEFAULT 
NULL NOT
    +      SERIALIZED
    +  , B_DS                             INTERVAL DAY(10) TO SECOND(3) DEFAULT 
NULL
    +      NOT SERIALIZED
    +  , PRIMARY KEY (ID ASC)
    +  )
    +  SALT USING 9 PARTITIONS
    +  ATTRIBUTES ALIGNED FORMAT NAMESPACE 'TRAF_1500000' 
    +  HBASE_OPTIONS 
    +  ( 
    +    MEMSTORE_FLUSH_SIZE = '1073741824' 
    +  ) 
    +;
    +```
    +
    +* This example compares the execution time of using LOAD Statement without 
options and 
    +using `LOAD WITH REBUILD INDEXES` when the CQD 
`TRAF_LOAD_ALLOW_RISKY_INDEX_MAINTENANCE` 
    +is turned *OFF* by default. These two statements take almost the same time.
    +
    ++
    +```
    +SQL>CREATE INDEX index_target_table1 ON target_table1(id);
    +--- SQL operation complete.
    +
    +SQL>SET STATISTICS ON;
    +
    +SQL>LOAD INTO target_table1 SELECT * FROM source_table WHERE id < 301;
    +
    +UTIL_OUTPUT
    
+---------------------------------------------------------------------------------
    +Task:  LOAD            Status: Started    Object: 
TRAFODION.SEABASE.TARGET_TABLE1                                  
    +Task:  CLEANUP         Status: Started    Time: 2018-01-18 13:33:52.310    
                                                     
    +Task:  CLEANUP         Status: Ended      Time: 2018-01-18 13:33:52.328
    +Task:  CLEANUP         Status: Ended      Elapsed Time:    00:00:00.019
    +Task:  DISABLE INDEXE  Status: Started    Time: 2018-01-18 13:33:52.328    
                                                     
    +Task:  DISABLE INDEXE  Status: Ended      Time: 2018-01-18 13:34:04.709
    +Task:  DISABLE INDEXE  Status: Ended      Elapsed Time:    00:00:12.381
    +Task:  LOADING DATA    Status: Started    Time: 2018-01-18 13:34:04.709    
                                                     
    +       Rows Processed: 300 
    +       Error Rows:     0 
    +Task:  LOADING DATA    Status: Ended      Time: 2018-01-18 13:34:21.629
    +Task:  LOADING DATA    Status: Ended      Elapsed Time:    00:00:16.919
    +Task:  COMPLETION      Status: Started    Time: 2018-01-18 13:34:21.629    
                                                     
    +       Rows Loaded:    300 
    +Task:  COMPLETION      Status: Ended      Time: 2018-01-18 13:34:22.436
    +Task:  COMPLETION      Status: Ended      Elapsed Time:    00:00:00.808
    +Task:  POPULATE INDEX  Status: Started    Time: 2018-01-18 13:34:22.436    
                                                     
    +Task:  POPULATE INDEX  Status: Ended      Time: 2018-01-18 13:34:31.116   
    +Task:  POPULATE INDEX  Status: Ended      Elapsed Time:    00:00:08.680
    +--- SQL operation complete.
    +
    +Start Time             2018/01/18 13:33:51.478782
    +End Time               2018/01/18 13:34:31.549491
    +Elapsed Time                      00:00:40.070709 
    +Compile Time                      00:00:00.510024   
    +Execution Time                    00:00:39.559433 
    +
    +SQL>LOAD INTO target_table1 SELECT * FROM source_table WHERE id > 300;  
    +UTIL_OUTPUT
    
+---------------------------------------------------------------------------------
    +Task:  LOAD            Status: Started    Object: 
TRAFODION.SEABASE.TARGET_TABLE1                                                 
    
    +Task:  CLEANUP         Status: Started    Time: 2018-01-18 13:35:01.804    
                                                     
    +Task:  CLEANUP         Status: Ended      Time: 2018-01-18 13:35:01.823
    +Task:  CLEANUP         Status: Ended      Elapsed Time:    00:00:00.018
    +Task:  DISABLE INDEXE  Status: Started    Time: 2018-01-18 13:35:01.823    
                                                     
    +Task:  DISABLE INDEXE  Status: Ended      Time: 2018-01-18 13:35:13.840
    +Task:  DISABLE INDEXE  Status: Ended      Elapsed Time:    00:00:12.017
    +Task:  LOADING DATA    Status: Started    Time: 2018-01-18 13:35:13.840    
                                                     
    +       Rows Processed: 999700 
    +       Error Rows:     0 
    +Task:  LOADING DATA    Status: Ended      Time: 2018-01-18 13:35:19.720
    +Task:  LOADING DATA    Status: Ended      Elapsed Time:    00:00:05.879
    +Task:  COMPLETION      Status: Started    Time: 2018-01-18 13:35:19.720    
                                                     
    +       Rows Loaded:    999700 
    +Task:  COMPLETION      Status: Ended      Time: 2018-01-18 13:35:22.436
    +Task:  COMPLETION      Status: Ended      Elapsed Time:    00:00:02.717
    +Task:  POPULATE INDEX  Status: Started    Time: 2018-01-18 13:35:22.436    
                                                     
    +Task:  POPULATE INDEX  Status: Ended      Time: 2018-01-18 13:35:33.346
    +Task:  POPULATE INDEX  Status: Ended      Elapsed Time:    00:00:10.910
    +--- SQL operation complete.
    +
    +Start Time             2018/01/18 13:35:00.624490
    +End Time               2018/01/18 13:35:33.779394
    +Elapsed Time                      00:00:33.154904
    +Compile Time                      00:00:00.825703
    +Execution Time                    00:00:32.321890
    +
    +SQL>SET PARSERFLAGS 1;
    +--- SQL operation complete.
    +
    +SQL>SELECT COUNT(*) FROM TABLE(INDEX_TABLE index_target_table1);
    +(EXPR)
    +--------------------
    +             1000000
    +--- 1 row(s) selected.
    +```
    +
    ++
    +```
    +SQL>CREATE INDEX index_target_table2 ON target_table2(id);
    +--- SQL operation complete.
    +
    +SQL>SET STATISTICS ON;
    +
    +SQL>LOAD WITH REBUILD INDEXES INTO target_table2 SELECT * FROM 
source_table WHERE id < 301;
    +UTIL_OUTPUT
    
+---------------------------------------------------------------------------------
    +Task:  LOAD            Status: Started    Object: 
TRAFODION.SEABASE.TARGET_TABLE2                                                 
    
    +Task:  CLEANUP         Status: Started    Time: 2018-01-18 13:34:37.836    
                                                     
    +Task:  CLEANUP         Status: Ended      Time: 2018-01-18 13:34:37.847
    +Task:  CLEANUP         Status: Ended      Elapsed Time:    00:00:00.011
    +Task:  DISABLE INDEXE  Status: Started    Time: 2018-01-18 13:34:37.847    
                                                     
    +Task:  DISABLE INDEXE  Status: Ended      Time: 2018-01-18 13:34:45.445
    +Task:  DISABLE INDEXE  Status: Ended      Elapsed Time:    00:00:07.598
    +Task:  LOADING DATA    Status: Started    Time: 2018-01-18 13:34:45.445    
                                                     
    +       Rows Processed: 300 
    +       Error Rows:     0 
    +Task:  LOADING DATA    Status: Ended      Time: 2018-01-18 13:35:03.576
    +Task:  LOADING DATA    Status: Ended      Elapsed Time:    00:00:18.131
    +Task:  COMPLETION      Status: Started    Time: 2018-01-18 13:35:03.577    
                                                     
    +       Rows Loaded:    300 
    +Task:  COMPLETION      Status: Ended      Time: 2018-01-18 13:35:04.873
    +Task:  COMPLETION      Status: Ended      Elapsed Time:    00:00:01.296
    +Task:  POPULATE INDEX  Status: Started    Time: 2018-01-18 13:35:04.873    
                                                     
    +Task:  POPULATE INDEX  Status: Ended      Time: 2018-01-18 13:35:12.461
    +Task:  POPULATE INDEX  Status: Ended      Elapsed Time:    00:00:07.589
    +--- SQL operation complete.
    +
    +Start Time             2018/01/18 13:34:37.053647
    +End Time               2018/01/18 13:35:12.893891
    +Elapsed Time                      00:00:35.840244
    +Compile Time                      00:00:00.435855
    +Execution Time                    00:00:35.402620
    +
    +SQL>LOAD WITH REBUILD INDEXES INTO target_table2 SELECT * FROM 
source_table WHERE id > 300;
    +UTIL_OUTPUT
    
+---------------------------------------------------------------------------------
    +Task:  LOAD            Status: Started    Object: 
TRAFODION.SEABASE.TARGET_TABLE2                                                 
    
    +Task:  CLEANUP         Status: Started    Time: 2018-01-18 13:35:25.480    
                                                     
    +Task:  CLEANUP         Status: Ended      Time: 2018-01-18 13:35:25.493
    +Task:  CLEANUP         Status: Ended      Elapsed Time:    00:00:00.013
    +Task:  DISABLE INDEXE  Status: Started    Time: 2018-01-18 13:35:25.493    
                                                     
    +Task:  DISABLE INDEXE  Status: Ended      Time: 2018-01-18 13:35:38.844
    +Task:  DISABLE INDEXE  Status: Ended      Elapsed Time:    00:00:12.591
    +Task:  LOADING DATA    Status: Started    Time: 2018-01-18 13:35:38.845    
                                                     
    +       Rows Processed: 999700 
    +       Error Rows:     0 
    +Task:  LOADING DATA    Status: Ended      Time: 2018-01-18 13:35:43.491
    +Task:  LOADING DATA    Status: Ended      Elapsed Time:    00:00:05.407
    +Task:  COMPLETION      Status: Started    Time: 2018-01-18 13:35:43.491    
                                                     
    +       Rows Loaded:    999700 
    +Task:  COMPLETION      Status: Ended      Time: 2018-01-18 13:35:45.920
    +Task:  COMPLETION      Status: Ended      Elapsed Time:    00:00:01.601
    +Task:  POPULATE INDEX  Status: Started    Time: 2018-01-18 13:35:45.920    
                                                     
    +Task:  POPULATE INDEX  Status: Ended      Time: 2018-01-18 13:35:56.322
    +Task:  POPULATE INDEX  Status: Ended      Elapsed Time:    00:00:11.230
    +--- SQL operation complete.
    +
    +Start Time             2018/01/18 13:35:24.693410
    +End Time               2018/01/18 13:35:56.754441
    +Elapsed Time                      00:00:32.061031
    +Compile Time                      00:00:00.449236
    +Execution Time                    00:00:31.611112
    +
    +SQL>SET PARSERFLAGS 1;
    +--- SQL operation complete.
    +
    +SQL>SELECT COUNT(*) FROM TABLE(INDEX_TABLE index_target_table2);
    +(EXPR)
    +--------------------
    +             1000000
    +
    +--- 1 row(s) selected.
    +```
    +
    +* This example compares the execution time of using LOAD Statement without 
options and 
    +using `LOAD WITH REBUILD INDEXES` when the CQD 
`TRAF_LOAD_ALLOW_RISKY_INDEX_MAINTENANCE` 
    +is turned *ON*. The former takes shorter time than the latter.
    --- End diff --
    
    Thanks Dave, your comment has been incorporated :)


> Add *Rebuild Indexes* for LOAD Statement in *Trafodion SQL Reference Manual*
> ----------------------------------------------------------------------------
>
>                 Key: TRAFODION-2929
>                 URL: https://issues.apache.org/jira/browse/TRAFODION-2929
>             Project: Apache Trafodion
>          Issue Type: Documentation
>            Reporter: Liu Yu
>            Assignee: Liu Yu
>            Priority: Major
>




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to