You are viewing a plain text version of this content. The canonical link for it is here.
Posted to codereview@trafodion.apache.org by gtapper <gi...@git.apache.org> on 2016/03/12 07:26:08 UTC

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

GitHub user gtapper opened a pull request:

    https://github.com/apache/incubator-trafodion/pull/379

    Trafodion 1851: Publication of new documentation

    * Added  _Load and Transform Guide_ and _CQD Reference Guide_. 
    * Added a link to the Trafodion videos under the Project tab. 
    * Renamed misnamed logo file, which corrects the broken link on the logo page.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/gtapper/incubator-trafodion TRAFODION-1851

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-trafodion/pull/379.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #379
    
----
commit 223db1e413dda706a2ab42b9b11175d954195ced
Author: Gunnar Tapper <gt...@esgyn.local>
Date:   2016-03-12T06:16:54Z

    Publication of new documentation.
    
    Added Load and Transform Guide and CQD Reference
    Guide. Added a link to the Trafodion videos under the Project tab. Renamed
    misnamed logo file, which corrects the broken link on the logo page.

commit 18f983ba2a330f62d73b8fca1ae8df0dc9c46783
Author: Gunnar Tapper <gt...@esgyn.local>
Date:   2016-03-12T06:19:35Z

    Fixed change in the main pom.xml.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56195917
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/histograms.adoc ---
    @@ -66,22 +65,21 @@ the histograms. That could result in poor performance for queries that could lev
     
     [cols="25%h,75%"]
     |===
    -| *Category*                  | Manage Histograms 
    -| *Description*               | Controls the level of missing statistics warnings that should be displayed. The warnings impacted are 6007, 6008, 6010 and 6011.
    +| *Description*               | Controls the level of missing statistics warnings that should be displayed. The warnings impacted are 6007, 6008, 6010, and 6011.
     | *Values*                    |
    -*'0'*: Display no warnings. Update Statistics Automation Server still continues to record missing column statistics. +
    +*'0'*: Display no warnings. The Update Statistics Automation Server still continues to record missing column statistics. +
    --- End diff --
    
    I don't believe that Trafodion has the Update Statistics Automation Server.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56196654
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/operational_controls.adoc ---
    @@ -53,12 +53,89 @@ then a large number of queries may be impacted. Therefore, you need to assess if
     |===
     
     <<<
    +[[explain-description-column-size]]
    +== EXPLAIN_DESCRIPTION_COLUMN_SIZE
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Specifies maximum length of DESCRIPTION column for EXPLAIN virtual tables.
    +| *Values*                    |
    +Positive integer > 10,000 +
    + +
    +Default: -1, indicating a maximum size of 10,000.
    +| *Usage*                     | Query-plan information for a SQL DML statement is stored temporarily in the Explain virtual table. 
    +For large queries or queries with complex predicates, the default size of 10 KB may be insufficient to describe certain nodes in the query plan. 
    +Specifying a larger value for this CQD allows more bytes to be stored in the description column. +
    + +
    +Change this setting if you see explain plan being undesirably truncated only.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | The explain plan truncation is reduced or removed.
    +| *Level*                     | System.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-region-server-max-heap-size]]
    +== HBASE_REGION_SERVER_MAX_HEAP_SIZE
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Enables Trafodion to use HBase block cache in an optimal manner.  Defines the maximum Java
    +heap size (-Xmx option) the HBase Region Server are assigned, in MB units.
    +| *Values*                    |
    +Positive integer. +
    + +
    +Default: *'1024'*.
    +| *Usage*                     | If the HBase Region servers are configured with a maximum Java heap size different than 1 GB, then
    +set this attribute so that Trafodion is aware of the actual maximum heap size of the Region Servers.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | When set correctly, this CQD ensures that HBase block cache are be used optimally. Small scans
    +are cached and larger scans are not cached to avoid cache trashing.
    +| *Level*                     | System.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hive-metadata-refresh-interval]]
    +== HIVE_METADATA_REFRESH_INTERVAL
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Controls the metadata cache for Hive tables.
    +| *Values*                    | 
    +*-1*: Never invalidate any cache entries. +
    +*0*: Always check the latest meta-data from Hive. +
    +*> 0*: The cached Hive meta-data is valid only for <value> seconds. +
    + +
    +Default: *'0'*.
    +| *Usage*                     | Use of value -1 when the Hive tables are read-only and no updates are possible to avoid reading the
    +Hive metadata when the same table is referenced in queries again. +
    + +
    +Use of value 0 when frequent update of Hive tables are possible. +
    --- End diff --
    
    Suggested wordsmith: Use a value of 0 when updates to the Hive tables are possible or likely.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56207779
  
    --- Diff: docs/load_transform/src/asciidoc/_chapters/bulk_load.adoc ---
    @@ -46,30 +46,31 @@ You copy data between two Trafodion tables by using the appropriate SELECT state
     === Example
     
     ```
    +LOAD INTO target_table SELECT * FROM source_table WHERE custkey >= 1000 ;
     ```
     
     [[bulk-load-data-from-hdfs-files]]
     == Load Data From HDFS Files
     
    -You can copy your data into an HDFS folder and then create an external Hive tables with the correct fields that
    -you point to the HDFS folder containing the data. You can also specify a WHERE clause on the source data as a filter.
    +You copy your data (local or remote) into an HDFS folder. Then, you create an external Hive table (with correct fields) that point to the HDFS folder containing the data.
    --- End diff --
    
    Grammar, should be "points"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit closed the pull request at:

    https://github.com/apache/incubator-trafodion/pull/379


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56196579
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/operational_controls.adoc ---
    @@ -53,12 +53,89 @@ then a large number of queries may be impacted. Therefore, you need to assess if
     |===
     
     <<<
    +[[explain-description-column-size]]
    +== EXPLAIN_DESCRIPTION_COLUMN_SIZE
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Specifies maximum length of DESCRIPTION column for EXPLAIN virtual tables.
    +| *Values*                    |
    +Positive integer > 10,000 +
    + +
    +Default: -1, indicating a maximum size of 10,000.
    +| *Usage*                     | Query-plan information for a SQL DML statement is stored temporarily in the Explain virtual table. 
    +For large queries or queries with complex predicates, the default size of 10 KB may be insufficient to describe certain nodes in the query plan. 
    +Specifying a larger value for this CQD allows more bytes to be stored in the description column. +
    + +
    +Change this setting if you see explain plan being undesirably truncated only.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | The explain plan truncation is reduced or removed.
    +| *Level*                     | System.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-region-server-max-heap-size]]
    +== HBASE_REGION_SERVER_MAX_HEAP_SIZE
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Enables Trafodion to use HBase block cache in an optimal manner.  Defines the maximum Java
    +heap size (-Xmx option) the HBase Region Server are assigned, in MB units.
    +| *Values*                    |
    +Positive integer. +
    + +
    +Default: *'1024'*.
    +| *Usage*                     | If the HBase Region servers are configured with a maximum Java heap size different than 1 GB, then
    +set this attribute so that Trafodion is aware of the actual maximum heap size of the Region Servers.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | When set correctly, this CQD ensures that HBase block cache are be used optimally. Small scans
    +are cached and larger scans are not cached to avoid cache trashing.
    +| *Level*                     | System.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hive-metadata-refresh-interval]]
    +== HIVE_METADATA_REFRESH_INTERVAL
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Controls the metadata cache for Hive tables.
    +| *Values*                    | 
    +*-1*: Never invalidate any cache entries. +
    +*0*: Always check the latest meta-data from Hive. +
    +*> 0*: The cached Hive meta-data is valid only for <value> seconds. +
    + +
    +Default: *'0'*.
    +| *Usage*                     | Use of value -1 when the Hive tables are read-only and no updates are possible to avoid reading the
    --- End diff --
    
    Suggested wordsmith: "Use a value of -1 when the Hive tables are read-only. This allows Trafodion to avoid repeatedly reading the metadata when the table is referenced in multiple queries.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56198891
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/query_execution.adoc ---
    @@ -0,0 +1,239 @@
    +////
    +/**
    +* @@@ START COPYRIGHT @@@
    +*
    +* Licensed to the Apache Software Foundation (ASF) under one
    +* or more contributor license agreements.  See the NOTICE file
    +* distributed with this work for additional information
    +* regarding copyright ownership.  The ASF licenses this file
    +* to you under the Apache License, Version 2.0 (the
    +* "License"); you may not use this file except in compliance
    +* with the License.  You may obtain a copy of the License at
    +*
    +*   http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing,
    +* software distributed under the License is distributed on an
    +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    +* KIND, either express or implied.  See the License for the
    +* specific language governing permissions and limitations
    +* under the License.
    +*
    +* @@@ END COPYRIGHT @@@
    +  */
    +////
    +
    +[[query-execution]]
    += Query Execution
    +
    +This section describes CQDs that are used to influence query execution.
    +
    +[[hbase-async-operation]]
    +== HBASE_ASYNC_OPERATION
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Allows index maintenance to be performed concurrently with base table operation. 
    +| *Values*                    | *'ON'* Index maintenance is allowed. +
    +*'OFF'* Index maintenance is not allowed. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | HBase `put` operations are blocking. When the table has one or more indexes, 
    +then the insert/update/delete (IUD) operation response time is improved by executing the index maintenance 
    +operations concurrently with the base table operation: the put operations to these HBase tables are executed 
    +in different threads.
    +| *Production Usage*          | Yes.  It is 'ON' by default. This feature can be disabled by setting this CQD to 'OFF'.
    +| *Impact*                    | IUD operations on tables with one or more indexes can become slower.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-cache-blocks]]
    +== HBASE_CACHE_BLOCKS
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Influences HBase to retain the data blocks in memory after they are read. 
    +| *Values*                    |
    +*'ON'/'OFF'/'SYSTEM'*  +
    + +
    +The default value is *'SYSTEM'*.
    +| *Usage*                     | HBase maintains the block cache structure to retain the data blocks in memory after they are read.
    +In LRU block cache configuration, the amount of block cache retained in memory is proportional to the amount of reserved maximum
    +Java heap size of the region server. LRU Block Cache is the default in HBase. +
    + +
    +The Trafodion Optimizer determines whether a sequential scan of the HBase table in a query would cause the full eviction of the
    +data blocks cached earlier thereby impacting the performance of the random reads. The cache blocks option is turned off for the table
    +in such a case. +
    + +
    +Set the CQD <<hbase-region-server-max-heap-size,HBASE_REGION_SERVER_MAX_HEAP_SIZE>> value to reflect the amount of java heap size reserved for the region servers.
    +This CQD is used by the Trafodion Optimizer to evaluate if the block cache to be turned off. 
    +| *Production Usage*          | Leave the setting to be 'SYSTEM' when HBase is configured to use LRU block cache. If needed,
    +you can override this settings with 'ON' or 'OFF'.  +
    + +
    +With other HBase configurations, you need to set HBASE_CACHE_BLOCKS to 'ON' or 'OFF' based on your application needs.
    +| *Impact*                    | Automatically retains the random read performance.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-filter-preds]]
    +== HBASE_FILTER_PREDS
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Allows push down of predicates to HBase Region Servers using HBase filters and optimize the columns retrieved
    +from Region Servers. Only supported for NON ALIGN FORMAT tables.
    +| *Values*                    |
    +*'OFF'*: Predicates are never pushed down. +
    +*'ON'*: A first implementation targeted for deprecation is enabled. Support simple predicate formed by a combination of AND only.
    +Could be counter-productive when applied on nullable columns. +
    +*'1'*: Same as *'ON'*. +
    +*'2'*: Full feature is enabled. +
    + +
    +An explain plan can show whether predicates are successfully pushed down to the Region Servers and what columns are really retrieved. +
    + +
    +The default value is *'OFF'*.
    +| *Usage*                     | Used to improve performance by reducing the number of columns retrieved to a strict minimum
    +and filter out rows as early as possible.
    +| *Production Usage*          | Please consult the Trafodion community.
    +| *Impact*                    | Using this CQD increases the amount of work done in the HBase Region Servers.
    +| *Level*                     | System or Session.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 2.0.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-hash2-partitioning]]
    +== HBASE_HASH2_PARTITIONING
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Treat salted Trafodion tables as hash-partitioned on the salt columns.
    +| *Values*                    |
    +*'OFF'*: Salted Trafodion tables are not hash-partitioned on the salt columns. +
    +*'ON'*: Salted Trafodion tables are hash-partitioned on the salt columns. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | If, for any reason, there are issues with parallel plans on salted tables (especially with data skew) then try setting this CQD to OFF.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | Not applicable.
    +| *Level*                     | System or Session.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 2.0.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase_num_cache_rows_max]]
    +== HBASE_NUM_CACHE_ROWS_MAX
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Determines the number of rows obtained from HBase in one RPC call to the HBase Region Server in a sequential scan operation,
    +| *Values*                    |
    +Numeric value. +
    + +
    +The default value is *'10000'*.
    +| *Usage*                     | This CQD can be used to tune the query to perform optimally by reducing the number of interactions to the HBase Region Servers during
    +a sequential scan of a table. +
    + +
    +You need to consider how soon the maximum number of rows are materialized on the Region Servers.  When filtering is pushed down to Region Servers,
    +then it can take a longer time depending upon the query and the predicates involved. This can result in HBase scanner timeouts. 
    +| *Production Usage*          | Use the default setting and reduce the value to avoid HBase scanner timeouts. Consult with the Trafodion community
    +if you think that you need to use this CQD.
    +| *Impact*                    | Not applicable.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-rowset-vssb-opt]]
    +== HBASE_ROWSET_VSSB_OPT
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               |	Allows INSERT, UPDATE, and DELETE (IUD) operations to be performed as an HBase batch `put` operation. 
    +| *Values*                    |
    +*'ON'*: Perform IUD operations as an HBase batch `put` operation. +
    +*'OFF'*: Do not perform IUD operations as an HBase batch `put` operation. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | When IUD operation involves multiple tuples, then the Trafodion Optimizer evaluates whether these operations
    +can be done in a batch manner at the HBase level thereby reducing the network interactions between the client applications and the HBase Region Servers. +
    + +
    +If possible, then the query plan involves VSBB operators. The Virtual Sequential Block Buffer(VSBB) name is retained in Trafodion though it is unrelated to HBase.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | IUD operations can become slower if this CQD is set to 'OFF'.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-rowset-vssb-size]]
    +== HBASE_ROWSET_VSSB_SIZE
    --- End diff --
    
    Typo. Should be HBASE_ROWSET_VSBB_SIZE


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56207665
  
    --- Diff: docs/load_transform/src/asciidoc/_chapters/about.adoc ---
    @@ -32,17 +32,19 @@ The information herein is complementary to the following Trafodion documentation
     * http://trafodion.apache.org/docs/odb/index.html[Trafodion odb User Guide]
     
     == Intended Audience
    -This guide targets anyone wanting to load data into a Trafodion database. You need to have the
    -following skill sets to make full of the information in this guide:
    +This guide targets anyone wanting to load data into a Trafodion database. 
    +
    +You need to have skills in the following areas to make full use of the information in this guide:
     
     * SQL DDL and DML.
    -* Install and configure Linux software.
    +* Installion and configuration of Linux software.
    --- End diff --
    
    Typo, should be "Installation"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56198719
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/query_execution.adoc ---
    @@ -0,0 +1,239 @@
    +////
    +/**
    +* @@@ START COPYRIGHT @@@
    +*
    +* Licensed to the Apache Software Foundation (ASF) under one
    +* or more contributor license agreements.  See the NOTICE file
    +* distributed with this work for additional information
    +* regarding copyright ownership.  The ASF licenses this file
    +* to you under the Apache License, Version 2.0 (the
    +* "License"); you may not use this file except in compliance
    +* with the License.  You may obtain a copy of the License at
    +*
    +*   http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing,
    +* software distributed under the License is distributed on an
    +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    +* KIND, either express or implied.  See the License for the
    +* specific language governing permissions and limitations
    +* under the License.
    +*
    +* @@@ END COPYRIGHT @@@
    +  */
    +////
    +
    +[[query-execution]]
    += Query Execution
    +
    +This section describes CQDs that are used to influence query execution.
    +
    +[[hbase-async-operation]]
    +== HBASE_ASYNC_OPERATION
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Allows index maintenance to be performed concurrently with base table operation. 
    +| *Values*                    | *'ON'* Index maintenance is allowed. +
    +*'OFF'* Index maintenance is not allowed. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | HBase `put` operations are blocking. When the table has one or more indexes, 
    +then the insert/update/delete (IUD) operation response time is improved by executing the index maintenance 
    +operations concurrently with the base table operation: the put operations to these HBase tables are executed 
    +in different threads.
    +| *Production Usage*          | Yes.  It is 'ON' by default. This feature can be disabled by setting this CQD to 'OFF'.
    +| *Impact*                    | IUD operations on tables with one or more indexes can become slower.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-cache-blocks]]
    +== HBASE_CACHE_BLOCKS
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Influences HBase to retain the data blocks in memory after they are read. 
    +| *Values*                    |
    +*'ON'/'OFF'/'SYSTEM'*  +
    + +
    +The default value is *'SYSTEM'*.
    +| *Usage*                     | HBase maintains the block cache structure to retain the data blocks in memory after they are read.
    +In LRU block cache configuration, the amount of block cache retained in memory is proportional to the amount of reserved maximum
    +Java heap size of the region server. LRU Block Cache is the default in HBase. +
    + +
    +The Trafodion Optimizer determines whether a sequential scan of the HBase table in a query would cause the full eviction of the
    +data blocks cached earlier thereby impacting the performance of the random reads. The cache blocks option is turned off for the table
    +in such a case. +
    + +
    +Set the CQD <<hbase-region-server-max-heap-size,HBASE_REGION_SERVER_MAX_HEAP_SIZE>> value to reflect the amount of java heap size reserved for the region servers.
    +This CQD is used by the Trafodion Optimizer to evaluate if the block cache to be turned off. 
    +| *Production Usage*          | Leave the setting to be 'SYSTEM' when HBase is configured to use LRU block cache. If needed,
    +you can override this settings with 'ON' or 'OFF'.  +
    + +
    +With other HBase configurations, you need to set HBASE_CACHE_BLOCKS to 'ON' or 'OFF' based on your application needs.
    +| *Impact*                    | Automatically retains the random read performance.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-filter-preds]]
    +== HBASE_FILTER_PREDS
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Allows push down of predicates to HBase Region Servers using HBase filters and optimize the columns retrieved
    +from Region Servers. Only supported for NON ALIGN FORMAT tables.
    +| *Values*                    |
    +*'OFF'*: Predicates are never pushed down. +
    +*'ON'*: A first implementation targeted for deprecation is enabled. Support simple predicate formed by a combination of AND only.
    +Could be counter-productive when applied on nullable columns. +
    +*'1'*: Same as *'ON'*. +
    +*'2'*: Full feature is enabled. +
    + +
    +An explain plan can show whether predicates are successfully pushed down to the Region Servers and what columns are really retrieved. +
    + +
    +The default value is *'OFF'*.
    +| *Usage*                     | Used to improve performance by reducing the number of columns retrieved to a strict minimum
    +and filter out rows as early as possible.
    +| *Production Usage*          | Please consult the Trafodion community.
    +| *Impact*                    | Using this CQD increases the amount of work done in the HBase Region Servers.
    +| *Level*                     | System or Session.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 2.0.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-hash2-partitioning]]
    +== HBASE_HASH2_PARTITIONING
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Treat salted Trafodion tables as hash-partitioned on the salt columns.
    +| *Values*                    |
    +*'OFF'*: Salted Trafodion tables are not hash-partitioned on the salt columns. +
    +*'ON'*: Salted Trafodion tables are hash-partitioned on the salt columns. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | If, for any reason, there are issues with parallel plans on salted tables (especially with data skew) then try setting this CQD to OFF.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | Not applicable.
    +| *Level*                     | System or Session.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 2.0.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase_num_cache_rows_max]]
    +== HBASE_NUM_CACHE_ROWS_MAX
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Determines the number of rows obtained from HBase in one RPC call to the HBase Region Server in a sequential scan operation,
    +| *Values*                    |
    +Numeric value. +
    + +
    +The default value is *'10000'*.
    +| *Usage*                     | This CQD can be used to tune the query to perform optimally by reducing the number of interactions to the HBase Region Servers during
    +a sequential scan of a table. +
    + +
    +You need to consider how soon the maximum number of rows are materialized on the Region Servers.  When filtering is pushed down to Region Servers,
    +then it can take a longer time depending upon the query and the predicates involved. This can result in HBase scanner timeouts. 
    +| *Production Usage*          | Use the default setting and reduce the value to avoid HBase scanner timeouts. Consult with the Trafodion community
    +if you think that you need to use this CQD.
    +| *Impact*                    | Not applicable.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-rowset-vssb-opt]]
    +== HBASE_ROWSET_VSSB_OPT
    --- End diff --
    
    Typo. Should be HBASE_ROWSET_VSBB_OPT


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56197067
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/operational_controls.adoc ---
    @@ -53,12 +53,89 @@ then a large number of queries may be impacted. Therefore, you need to assess if
     |===
     
     <<<
    +[[explain-description-column-size]]
    +== EXPLAIN_DESCRIPTION_COLUMN_SIZE
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Specifies maximum length of DESCRIPTION column for EXPLAIN virtual tables.
    +| *Values*                    |
    +Positive integer > 10,000 +
    + +
    +Default: -1, indicating a maximum size of 10,000.
    +| *Usage*                     | Query-plan information for a SQL DML statement is stored temporarily in the Explain virtual table. 
    +For large queries or queries with complex predicates, the default size of 10 KB may be insufficient to describe certain nodes in the query plan. 
    +Specifying a larger value for this CQD allows more bytes to be stored in the description column. +
    + +
    +Change this setting if you see explain plan being undesirably truncated only.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | The explain plan truncation is reduced or removed.
    +| *Level*                     | System.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-region-server-max-heap-size]]
    +== HBASE_REGION_SERVER_MAX_HEAP_SIZE
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Enables Trafodion to use HBase block cache in an optimal manner.  Defines the maximum Java
    +heap size (-Xmx option) the HBase Region Server are assigned, in MB units.
    +| *Values*                    |
    +Positive integer. +
    + +
    +Default: *'1024'*.
    +| *Usage*                     | If the HBase Region servers are configured with a maximum Java heap size different than 1 GB, then
    +set this attribute so that Trafodion is aware of the actual maximum heap size of the Region Servers.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | When set correctly, this CQD ensures that HBase block cache are be used optimally. Small scans
    +are cached and larger scans are not cached to avoid cache trashing.
    +| *Level*                     | System.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hive-metadata-refresh-interval]]
    +== HIVE_METADATA_REFRESH_INTERVAL
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Controls the metadata cache for Hive tables.
    +| *Values*                    | 
    +*-1*: Never invalidate any cache entries. +
    +*0*: Always check the latest meta-data from Hive. +
    +*> 0*: The cached Hive meta-data is valid only for <value> seconds. +
    + +
    +Default: *'0'*.
    +| *Usage*                     | Use of value -1 when the Hive tables are read-only and no updates are possible to avoid reading the
    +Hive metadata when the same table is referenced in queries again. +
    + +
    +Use of value 0 when frequent update of Hive tables are possible. +
    + +
    +Use of a positive value when when infrequent update of Hive tables can take place and the value can be set so that it is impossible
    --- End diff --
    
    Suggested wordsmith: Use a positive value n to cause Trafodion to re-read metadata after n seconds has elapsed. Use this option when updates to the Hive table happen at least n seconds apart.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56199253
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/query_execution.adoc ---
    @@ -0,0 +1,239 @@
    +////
    +/**
    +* @@@ START COPYRIGHT @@@
    +*
    +* Licensed to the Apache Software Foundation (ASF) under one
    +* or more contributor license agreements.  See the NOTICE file
    +* distributed with this work for additional information
    +* regarding copyright ownership.  The ASF licenses this file
    +* to you under the Apache License, Version 2.0 (the
    +* "License"); you may not use this file except in compliance
    +* with the License.  You may obtain a copy of the License at
    +*
    +*   http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing,
    +* software distributed under the License is distributed on an
    +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    +* KIND, either express or implied.  See the License for the
    +* specific language governing permissions and limitations
    +* under the License.
    +*
    +* @@@ END COPYRIGHT @@@
    +  */
    +////
    +
    +[[query-execution]]
    += Query Execution
    +
    +This section describes CQDs that are used to influence query execution.
    +
    +[[hbase-async-operation]]
    +== HBASE_ASYNC_OPERATION
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Allows index maintenance to be performed concurrently with base table operation. 
    +| *Values*                    | *'ON'* Index maintenance is allowed. +
    +*'OFF'* Index maintenance is not allowed. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | HBase `put` operations are blocking. When the table has one or more indexes, 
    +then the insert/update/delete (IUD) operation response time is improved by executing the index maintenance 
    +operations concurrently with the base table operation: the put operations to these HBase tables are executed 
    +in different threads.
    +| *Production Usage*          | Yes.  It is 'ON' by default. This feature can be disabled by setting this CQD to 'OFF'.
    +| *Impact*                    | IUD operations on tables with one or more indexes can become slower.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-cache-blocks]]
    +== HBASE_CACHE_BLOCKS
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Influences HBase to retain the data blocks in memory after they are read. 
    +| *Values*                    |
    +*'ON'/'OFF'/'SYSTEM'*  +
    + +
    +The default value is *'SYSTEM'*.
    +| *Usage*                     | HBase maintains the block cache structure to retain the data blocks in memory after they are read.
    +In LRU block cache configuration, the amount of block cache retained in memory is proportional to the amount of reserved maximum
    +Java heap size of the region server. LRU Block Cache is the default in HBase. +
    + +
    +The Trafodion Optimizer determines whether a sequential scan of the HBase table in a query would cause the full eviction of the
    +data blocks cached earlier thereby impacting the performance of the random reads. The cache blocks option is turned off for the table
    +in such a case. +
    + +
    +Set the CQD <<hbase-region-server-max-heap-size,HBASE_REGION_SERVER_MAX_HEAP_SIZE>> value to reflect the amount of java heap size reserved for the region servers.
    +This CQD is used by the Trafodion Optimizer to evaluate if the block cache to be turned off. 
    +| *Production Usage*          | Leave the setting to be 'SYSTEM' when HBase is configured to use LRU block cache. If needed,
    +you can override this settings with 'ON' or 'OFF'.  +
    + +
    +With other HBase configurations, you need to set HBASE_CACHE_BLOCKS to 'ON' or 'OFF' based on your application needs.
    +| *Impact*                    | Automatically retains the random read performance.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-filter-preds]]
    +== HBASE_FILTER_PREDS
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Allows push down of predicates to HBase Region Servers using HBase filters and optimize the columns retrieved
    +from Region Servers. Only supported for NON ALIGN FORMAT tables.
    +| *Values*                    |
    +*'OFF'*: Predicates are never pushed down. +
    +*'ON'*: A first implementation targeted for deprecation is enabled. Support simple predicate formed by a combination of AND only.
    +Could be counter-productive when applied on nullable columns. +
    +*'1'*: Same as *'ON'*. +
    +*'2'*: Full feature is enabled. +
    + +
    +An explain plan can show whether predicates are successfully pushed down to the Region Servers and what columns are really retrieved. +
    + +
    +The default value is *'OFF'*.
    +| *Usage*                     | Used to improve performance by reducing the number of columns retrieved to a strict minimum
    +and filter out rows as early as possible.
    +| *Production Usage*          | Please consult the Trafodion community.
    +| *Impact*                    | Using this CQD increases the amount of work done in the HBase Region Servers.
    +| *Level*                     | System or Session.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 2.0.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-hash2-partitioning]]
    +== HBASE_HASH2_PARTITIONING
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Treat salted Trafodion tables as hash-partitioned on the salt columns.
    +| *Values*                    |
    +*'OFF'*: Salted Trafodion tables are not hash-partitioned on the salt columns. +
    +*'ON'*: Salted Trafodion tables are hash-partitioned on the salt columns. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | If, for any reason, there are issues with parallel plans on salted tables (especially with data skew) then try setting this CQD to OFF.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | Not applicable.
    +| *Level*                     | System or Session.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 2.0.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase_num_cache_rows_max]]
    +== HBASE_NUM_CACHE_ROWS_MAX
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Determines the number of rows obtained from HBase in one RPC call to the HBase Region Server in a sequential scan operation,
    +| *Values*                    |
    +Numeric value. +
    + +
    +The default value is *'10000'*.
    +| *Usage*                     | This CQD can be used to tune the query to perform optimally by reducing the number of interactions to the HBase Region Servers during
    +a sequential scan of a table. +
    + +
    +You need to consider how soon the maximum number of rows are materialized on the Region Servers.  When filtering is pushed down to Region Servers,
    +then it can take a longer time depending upon the query and the predicates involved. This can result in HBase scanner timeouts. 
    +| *Production Usage*          | Use the default setting and reduce the value to avoid HBase scanner timeouts. Consult with the Trafodion community
    +if you think that you need to use this CQD.
    +| *Impact*                    | Not applicable.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-rowset-vssb-opt]]
    +== HBASE_ROWSET_VSSB_OPT
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               |	Allows INSERT, UPDATE, and DELETE (IUD) operations to be performed as an HBase batch `put` operation. 
    +| *Values*                    |
    +*'ON'*: Perform IUD operations as an HBase batch `put` operation. +
    +*'OFF'*: Do not perform IUD operations as an HBase batch `put` operation. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | When IUD operation involves multiple tuples, then the Trafodion Optimizer evaluates whether these operations
    +can be done in a batch manner at the HBase level thereby reducing the network interactions between the client applications and the HBase Region Servers. +
    + +
    +If possible, then the query plan involves VSBB operators. The Virtual Sequential Block Buffer(VSBB) name is retained in Trafodion though it is unrelated to HBase.
    +| *Production Usage*          | Yes.
    +| *Impact*                    | IUD operations can become slower if this CQD is set to 'OFF'.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-rowset-vssb-size]]
    +== HBASE_ROWSET_VSSB_SIZE
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               |	Determines the maximum number of rows in a batch `put` operation to HBase. 
    +| *Values*                    |
    +Numeric value.
    + +
    +The default value is *'1024'*.
    +| *Usage*                     | The Trafodion execution engine already adjusts the number of rows in a batch depending upon how fast
    +the queue to IUD (INSERT,UPDATE,DELETE) operator is filled up in the data flow architecture of Trafodion. +
    + +
    +You can adjust the maximum size to suit your application needs and thus tune it to perform optimally.
    +| *Production Usage*          | Yes. You can disable this feature by setting the HBASE_ROWSET_VSSB_OPT CQD to 'OFF'.
    +| *Impact*                    | The performance of your application may be affected by setting this CQD too low.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-small-scanner]]
    +== HBASE_SMALL_SCANNER
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               |	Enables Trafodion to leverage the HBase small scanner optimization. This optimization reduces I/O usage with up to 66% 
    +and enables non-blocking reads for higher concurrency support. When a scan is known to require less than a HBASE BLOCK SIZE (default is 64K),
    --- End diff --
    
    In the phrase, "reduces I/O usage with up to 66%" suggest striking the word "with"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56197806
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/query_execution.adoc ---
    @@ -0,0 +1,239 @@
    +////
    +/**
    +* @@@ START COPYRIGHT @@@
    +*
    +* Licensed to the Apache Software Foundation (ASF) under one
    +* or more contributor license agreements.  See the NOTICE file
    +* distributed with this work for additional information
    +* regarding copyright ownership.  The ASF licenses this file
    +* to you under the Apache License, Version 2.0 (the
    +* "License"); you may not use this file except in compliance
    +* with the License.  You may obtain a copy of the License at
    +*
    +*   http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* Unless required by applicable law or agreed to in writing,
    +* software distributed under the License is distributed on an
    +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    +* KIND, either express or implied.  See the License for the
    +* specific language governing permissions and limitations
    +* under the License.
    +*
    +* @@@ END COPYRIGHT @@@
    +  */
    +////
    +
    +[[query-execution]]
    += Query Execution
    +
    +This section describes CQDs that are used to influence query execution.
    +
    +[[hbase-async-operation]]
    +== HBASE_ASYNC_OPERATION
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Allows index maintenance to be performed concurrently with base table operation. 
    +| *Values*                    | *'ON'* Index maintenance is allowed. +
    +*'OFF'* Index maintenance is not allowed. +
    + +
    +The default value is *'ON'*.
    +| *Usage*                     | HBase `put` operations are blocking. When the table has one or more indexes, 
    +then the insert/update/delete (IUD) operation response time is improved by executing the index maintenance 
    +operations concurrently with the base table operation: the put operations to these HBase tables are executed 
    +in different threads.
    +| *Production Usage*          | Yes.  It is 'ON' by default. This feature can be disabled by setting this CQD to 'OFF'.
    +| *Impact*                    | IUD operations on tables with one or more indexes can become slower.
    +| *Level*                     | Query.
    +| *Conflicts/Synergies*       | Not applicable.
    +| *Real Problem Addressed*    | Not applicable.
    +| *Introduced In Release*     | Trafodion 1.3.0.
    +| *Deprecated In Release*     | Not applicable.
    +|===
    +
    +<<<
    +[[hbase-cache-blocks]]
    +== HBASE_CACHE_BLOCKS
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Influences HBase to retain the data blocks in memory after they are read. 
    +| *Values*                    |
    +*'ON'/'OFF'/'SYSTEM'*  +
    + +
    +The default value is *'SYSTEM'*.
    +| *Usage*                     | HBase maintains the block cache structure to retain the data blocks in memory after they are read.
    +In LRU block cache configuration, the amount of block cache retained in memory is proportional to the amount of reserved maximum
    +Java heap size of the region server. LRU Block Cache is the default in HBase. +
    + +
    +The Trafodion Optimizer determines whether a sequential scan of the HBase table in a query would cause the full eviction of the
    +data blocks cached earlier thereby impacting the performance of the random reads. The cache blocks option is turned off for the table
    +in such a case. +
    + +
    +Set the CQD <<hbase-region-server-max-heap-size,HBASE_REGION_SERVER_MAX_HEAP_SIZE>> value to reflect the amount of java heap size reserved for the region servers.
    +This CQD is used by the Trafodion Optimizer to evaluate if the block cache to be turned off. 
    --- End diff --
    
    Suggested wordsmith: "This CQD is used by the Trafodion Optimizer to decide if the block cache should be turned off."


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56195722
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/histograms.adoc ---
    @@ -51,10 +50,10 @@ being updated during that time. On the other hand, if you are updating statistic
     enough, and you want these to be picked up immediately by the compiler because you have seen this to have a dramatic impact on plan quality, then you can
     make the refresh more frequent.
     | *Production Usage*          | Not applicable.
    -| *Impact*                    | Longer histogram refresh intervals can improve compile times. However, the longer the refresh interval the more obsolete
    -the histograms. That could result in poor performance for queries that could leverage recently updated statistics.
    +| *Impact*                    | Longer histogram refresh intervals can improve compile times. However, longer refresh intervals yield more obsolete
    +the histograms. More obsolete histograms may result in poor performance for queries that could leverage recently updated statistics.
     | *Level*                     | System or Service.
    -| *Conflicts/Synergies*       | Frequency of update statistics run either using MAINTAIN or using Update Statistics Automation Server.
    +| *Conflicts/Synergies*       | Frequency of update statistics run either using MAINTAIN.
    --- End diff --
    
    Suggest striking the word, "either"


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-trafodion pull request: Trafodion 1851: Publication of n...

Posted by DaveBirdsall <gi...@git.apache.org>.
Github user DaveBirdsall commented on a diff in the pull request:

    https://github.com/apache/incubator-trafodion/pull/379#discussion_r56197250
  
    --- Diff: docs/cqd_reference/src/asciidoc/_chapters/operational_controls.adoc ---
    @@ -108,3 +185,52 @@ If the plan object is not produced due to a text cache miss, then the plan is st
     | *Introduced In Release*     | Trafodion 1.3.0.
     | *Deprecated In Release*     | Not applicable.
     |===
    +
    +<<<
    +[[traf-load-allow-risky-index-maintenance]]
    +== TRAF_LOAD_ALLOW_RISKY_INDEX_MAINTENANCE
    +
    +[cols="25%h,75%"]
    +|===
    +| *Description*               | Allows incremental index maintenance during bulk load.
    +| *Values*                    |
    +*'ON'*: Incremental index maintenance enabled. +
    +*'OFF'*: Incremental index maintenance disabled. +
    + +
    +Default: *'OFF'*.
    +| *Usage*                     | When this CQD is ON during a bulk load, then any indexes on a table are maintained incrementally.
    +New rows are added to the base table and all the indexes in HFiles and then during LOAD COMPLETE phase all new files are moved to HBase.
    +Indexes are not offline. However, it causes the index to be inconsistent with the base table if any of the new rows have the same key value as an existing.
    --- End diff --
    
    Suggest adding "row" to the end of this sentence.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---