Repository: drill
Updated Branches:
  refs/heads/gh-pages f36b4e8eb -> 89b616b12


1.13 doc updates and edits


Project: http://git-wip-us.apache.org/repos/asf/drill/repo
Commit: http://git-wip-us.apache.org/repos/asf/drill/commit/89b616b1
Tree: http://git-wip-us.apache.org/repos/asf/drill/tree/89b616b1
Diff: http://git-wip-us.apache.org/repos/asf/drill/diff/89b616b1

Branch: refs/heads/gh-pages
Commit: 89b616b12102ce6b6ea84650b9e10dacf97f90a8
Parents: f36b4e8
Author: Bridget Bevens <[email protected]>
Authored: Mon Mar 26 10:37:48 2018 -0700
Committer: Bridget Bevens <[email protected]>
Committed: Mon Mar 26 10:37:48 2018 -0700

----------------------------------------------------------------------
 _data/docs.json                                 | 140 +++++++++----------
 .../020-configuring-drill-memory.md             |   6 +-
 .../026-parquet-filter-pushdown.md              |  34 +++--
 .../010-partition-pruning-introduction.md       |  12 +-
 .../data-types/010-supported-data-types.md      |   4 +-
 .../sql-functions/020-data-type-conversion.md   |  26 +++-
 6 files changed, 126 insertions(+), 96 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/drill/blob/89b616b1/_data/docs.json
----------------------------------------------------------------------
diff --git a/_data/docs.json b/_data/docs.json
index bbddf77..0cfe386 100644
--- a/_data/docs.json
+++ b/_data/docs.json
@@ -771,8 +771,8 @@
                 }
             ], 
             "children": [], 
-            "next_title": "Appendix E: Using cgroups to Control CPU Usage", 
-            "next_url": 
"/docs/appendix-e-using-cgroups-to-control-cpu-usage/", 
+            "next_title": "Install Drill", 
+            "next_url": "/docs/install-drill/", 
             "parent": "Drill-on-YARN", 
             "previous_title": "Appendix C: Troubleshooting", 
             "previous_url": "/docs/appendix-c-troubleshooting/", 
@@ -780,23 +780,6 @@
             "title": "Appendix D: Recreate the Drill Archive", 
             "url": "/docs/appendix-d-recreate-the-drill-archive/"
         }, 
-        "Appendix E: Using cgroups to Control CPU Usage": {
-            "breadcrumbs": [
-                {
-                    "title": "Drill-on-YARN", 
-                    "url": "/docs/drill-on-yarn/"
-                }
-            ], 
-            "children": [], 
-            "next_title": "Install Drill", 
-            "next_url": "/docs/install-drill/", 
-            "parent": "Drill-on-YARN", 
-            "previous_title": "Appendix D: Recreate the Drill Archive", 
-            "previous_url": "/docs/appendix-d-recreate-the-drill-archive/", 
-            "relative_path": 
"_docs/drill-on-yarn/094-appendix-e-using-cgroups-to-control-cpu-usage.md", 
-            "title": "Appendix E: Using cgroups to Control CPU Usage", 
-            "url": "/docs/appendix-e-using-cgroups-to-control-cpu-usage/"
-        }, 
         "Architecture": {
             "breadcrumbs": [], 
             "children": [
@@ -1731,14 +1714,31 @@
                         }
                     ], 
                     "children": [], 
-                    "next_title": "Connect a Data Source", 
-                    "next_url": "/docs/connect-a-data-source/", 
+                    "next_title": "Configuring cgroups to Control CPU Usage", 
+                    "next_url": 
"/docs/configuring-cgroups-to-control-cpu-usage/", 
                     "parent": "Configure Drill", 
                     "previous_title": "Ports Used by Drill", 
                     "previous_url": "/docs/ports-used-by-drill/", 
                     "relative_path": 
"_docs/configure-drill/120-configuring-the-drill-shell.md", 
                     "title": "Configuring the Drill Shell", 
                     "url": "/docs/configuring-the-drill-shell/"
+                }, 
+                {
+                    "breadcrumbs": [
+                        {
+                            "title": "Configure Drill", 
+                            "url": "/docs/configure-drill/"
+                        }
+                    ], 
+                    "children": [], 
+                    "next_title": "Connect a Data Source", 
+                    "next_url": "/docs/connect-a-data-source/", 
+                    "parent": "Configure Drill", 
+                    "previous_title": "Configuring the Drill Shell", 
+                    "previous_url": "/docs/configuring-the-drill-shell/", 
+                    "relative_path": 
"_docs/configure-drill/121-configuring-cgroups-to-control-cpu-usage.md", 
+                    "title": "Configuring cgroups to Control CPU Usage", 
+                    "url": "/docs/configuring-cgroups-to-control-cpu-usage/"
                 }
             ], 
             "next_title": "Configure Drill Introduction", 
@@ -2324,7 +2324,7 @@
             "title": "Configuring a Multitenant Cluster Introduction", 
             "url": "/docs/configuring-a-multitenant-cluster-introduction/"
         }, 
-        "Configuring the Drill Shell": {
+        "Configuring cgroups to Control CPU Usage": {
             "breadcrumbs": [
                 {
                     "title": "Configure Drill", 
@@ -2335,6 +2335,23 @@
             "next_title": "Connect a Data Source", 
             "next_url": "/docs/connect-a-data-source/", 
             "parent": "Configure Drill", 
+            "previous_title": "Configuring the Drill Shell", 
+            "previous_url": "/docs/configuring-the-drill-shell/", 
+            "relative_path": 
"_docs/configure-drill/121-configuring-cgroups-to-control-cpu-usage.md", 
+            "title": "Configuring cgroups to Control CPU Usage", 
+            "url": "/docs/configuring-cgroups-to-control-cpu-usage/"
+        }, 
+        "Configuring the Drill Shell": {
+            "breadcrumbs": [
+                {
+                    "title": "Configure Drill", 
+                    "url": "/docs/configure-drill/"
+                }
+            ], 
+            "children": [], 
+            "next_title": "Configuring cgroups to Control CPU Usage", 
+            "next_url": "/docs/configuring-cgroups-to-control-cpu-usage/", 
+            "parent": "Configure Drill", 
             "previous_title": "Ports Used by Drill", 
             "previous_url": "/docs/ports-used-by-drill/", 
             "relative_path": 
"_docs/configure-drill/120-configuring-the-drill-shell.md", 
@@ -2633,8 +2650,8 @@
             "next_title": "Connect a Data Source Introduction", 
             "next_url": "/docs/connect-a-data-source-introduction/", 
             "parent": "", 
-            "previous_title": "Configuring the Drill Shell", 
-            "previous_url": "/docs/configuring-the-drill-shell/", 
+            "previous_title": "Configuring cgroups to Control CPU Usage", 
+            "previous_url": "/docs/configuring-cgroups-to-control-cpu-usage/", 
             "relative_path": "_docs/050-connect-a-data-source.md", 
             "title": "Connect a Data Source", 
             "url": "/docs/connect-a-data-source/"
@@ -4282,31 +4299,14 @@
                         }
                     ], 
                     "children": [], 
-                    "next_title": "Appendix E: Using cgroups to Control CPU 
Usage", 
-                    "next_url": 
"/docs/appendix-e-using-cgroups-to-control-cpu-usage/", 
+                    "next_title": "Install Drill", 
+                    "next_url": "/docs/install-drill/", 
                     "parent": "Drill-on-YARN", 
                     "previous_title": "Appendix C: Troubleshooting", 
                     "previous_url": "/docs/appendix-c-troubleshooting/", 
                     "relative_path": 
"_docs/drill-on-yarn/093-appendix-d-recreate-the-drill-archive.md", 
                     "title": "Appendix D: Recreate the Drill Archive", 
                     "url": "/docs/appendix-d-recreate-the-drill-archive/"
-                }, 
-                {
-                    "breadcrumbs": [
-                        {
-                            "title": "Drill-on-YARN", 
-                            "url": "/docs/drill-on-yarn/"
-                        }
-                    ], 
-                    "children": [], 
-                    "next_title": "Install Drill", 
-                    "next_url": "/docs/install-drill/", 
-                    "parent": "Drill-on-YARN", 
-                    "previous_title": "Appendix D: Recreate the Drill 
Archive", 
-                    "previous_url": 
"/docs/appendix-d-recreate-the-drill-archive/", 
-                    "relative_path": 
"_docs/drill-on-yarn/094-appendix-e-using-cgroups-to-control-cpu-usage.md", 
-                    "title": "Appendix E: Using cgroups to Control CPU Usage", 
-                    "url": 
"/docs/appendix-e-using-cgroups-to-control-cpu-usage/"
                 }
             ], 
             "next_title": "Drill-on-YARN Introduction", 
@@ -5181,8 +5181,8 @@
             "next_title": "Install Drill Introduction", 
             "next_url": "/docs/install-drill-introduction/", 
             "parent": "", 
-            "previous_title": "Appendix E: Using cgroups to Control CPU 
Usage", 
-            "previous_url": 
"/docs/appendix-e-using-cgroups-to-control-cpu-usage/", 
+            "previous_title": "Appendix D: Recreate the Drill Archive", 
+            "previous_url": "/docs/appendix-d-recreate-the-drill-archive/", 
             "relative_path": "_docs/040-install-drill.md", 
             "title": "Install Drill", 
             "url": "/docs/install-drill/"
@@ -15097,31 +15097,14 @@
                         }
                     ], 
                     "children": [], 
-                    "next_title": "Appendix E: Using cgroups to Control CPU 
Usage", 
-                    "next_url": 
"/docs/appendix-e-using-cgroups-to-control-cpu-usage/", 
+                    "next_title": "Install Drill", 
+                    "next_url": "/docs/install-drill/", 
                     "parent": "Drill-on-YARN", 
                     "previous_title": "Appendix C: Troubleshooting", 
                     "previous_url": "/docs/appendix-c-troubleshooting/", 
                     "relative_path": 
"_docs/drill-on-yarn/093-appendix-d-recreate-the-drill-archive.md", 
                     "title": "Appendix D: Recreate the Drill Archive", 
                     "url": "/docs/appendix-d-recreate-the-drill-archive/"
-                }, 
-                {
-                    "breadcrumbs": [
-                        {
-                            "title": "Drill-on-YARN", 
-                            "url": "/docs/drill-on-yarn/"
-                        }
-                    ], 
-                    "children": [], 
-                    "next_title": "Install Drill", 
-                    "next_url": "/docs/install-drill/", 
-                    "parent": "Drill-on-YARN", 
-                    "previous_title": "Appendix D: Recreate the Drill 
Archive", 
-                    "previous_url": 
"/docs/appendix-d-recreate-the-drill-archive/", 
-                    "relative_path": 
"_docs/drill-on-yarn/094-appendix-e-using-cgroups-to-control-cpu-usage.md", 
-                    "title": "Appendix E: Using cgroups to Control CPU Usage", 
-                    "url": 
"/docs/appendix-e-using-cgroups-to-control-cpu-usage/"
                 }
             ], 
             "next_title": "Drill-on-YARN Introduction", 
@@ -15412,8 +15395,8 @@
             "next_title": "Install Drill Introduction", 
             "next_url": "/docs/install-drill-introduction/", 
             "parent": "", 
-            "previous_title": "Appendix E: Using cgroups to Control CPU 
Usage", 
-            "previous_url": 
"/docs/appendix-e-using-cgroups-to-control-cpu-usage/", 
+            "previous_title": "Appendix D: Recreate the Drill Archive", 
+            "previous_url": "/docs/appendix-d-recreate-the-drill-archive/", 
             "relative_path": "_docs/040-install-drill.md", 
             "title": "Install Drill", 
             "url": "/docs/install-drill/"
@@ -15933,14 +15916,31 @@
                         }
                     ], 
                     "children": [], 
-                    "next_title": "Connect a Data Source", 
-                    "next_url": "/docs/connect-a-data-source/", 
+                    "next_title": "Configuring cgroups to Control CPU Usage", 
+                    "next_url": 
"/docs/configuring-cgroups-to-control-cpu-usage/", 
                     "parent": "Configure Drill", 
                     "previous_title": "Ports Used by Drill", 
                     "previous_url": "/docs/ports-used-by-drill/", 
                     "relative_path": 
"_docs/configure-drill/120-configuring-the-drill-shell.md", 
                     "title": "Configuring the Drill Shell", 
                     "url": "/docs/configuring-the-drill-shell/"
+                }, 
+                {
+                    "breadcrumbs": [
+                        {
+                            "title": "Configure Drill", 
+                            "url": "/docs/configure-drill/"
+                        }
+                    ], 
+                    "children": [], 
+                    "next_title": "Connect a Data Source", 
+                    "next_url": "/docs/connect-a-data-source/", 
+                    "parent": "Configure Drill", 
+                    "previous_title": "Configuring the Drill Shell", 
+                    "previous_url": "/docs/configuring-the-drill-shell/", 
+                    "relative_path": 
"_docs/configure-drill/121-configuring-cgroups-to-control-cpu-usage.md", 
+                    "title": "Configuring cgroups to Control CPU Usage", 
+                    "url": "/docs/configuring-cgroups-to-control-cpu-usage/"
                 }
             ], 
             "next_title": "Configure Drill Introduction", 
@@ -16244,8 +16244,8 @@
             "next_title": "Connect a Data Source Introduction", 
             "next_url": "/docs/connect-a-data-source-introduction/", 
             "parent": "", 
-            "previous_title": "Configuring the Drill Shell", 
-            "previous_url": "/docs/configuring-the-drill-shell/", 
+            "previous_title": "Configuring cgroups to Control CPU Usage", 
+            "previous_url": "/docs/configuring-cgroups-to-control-cpu-usage/", 
             "relative_path": "_docs/050-connect-a-data-source.md", 
             "title": "Connect a Data Source", 
             "url": "/docs/connect-a-data-source/"

http://git-wip-us.apache.org/repos/asf/drill/blob/89b616b1/_docs/configure-drill/020-configuring-drill-memory.md
----------------------------------------------------------------------
diff --git a/_docs/configure-drill/020-configuring-drill-memory.md 
b/_docs/configure-drill/020-configuring-drill-memory.md
index c9018bc..f42e887 100644
--- a/_docs/configure-drill/020-configuring-drill-memory.md
+++ b/_docs/configure-drill/020-configuring-drill-memory.md
@@ -1,6 +1,6 @@
 ---
 title: "Configuring Drill Memory"
-date: 2018-03-22 18:52:44 UTC
+date: 2018-03-26 17:37:50 UTC
 parent: "Configure Drill"
 ---
 
@@ -65,7 +65,7 @@ If you do not set this variable, it is disabled. If you set 
this variable, you c
 
 **Example**  
 
-If a system has 48GB of free memory and you set the following parameters in 
drill-env.sh:  
+If a system has 48GB of memory and you set the following parameters in 
drill-env.sh:  
 
        DRILLBIT_MAX_PROC_MEM=25%
        DRILL_HEAP=8G
@@ -78,7 +78,7 @@ The Drillbit fails on startup with the following messages:
        [ERROR] Unable to start Drillbit due to memory constraint violations 
Total Memory Requested : 19 GB 
        Check and modify the settings or increase the maximum amount of memory 
permitted.
 
-If DRILLBIT_MAX_PROC_MEM is increased to 50%; the Drillbit starts up with the 
following warnings:  
+If `DRILLBIT_MAX_PROC_MEM` is increased to 50%; the Drillbit starts up with 
the following warnings:  
 
        [WARN] 50% of the system memory (48 GB) translates to 24 GB.
        [WARN] You have an allocation of 4 GB that is currently unused from a 
total of 24 GB. 

http://git-wip-us.apache.org/repos/asf/drill/blob/89b616b1/_docs/performance-tuning/026-parquet-filter-pushdown.md
----------------------------------------------------------------------
diff --git a/_docs/performance-tuning/026-parquet-filter-pushdown.md 
b/_docs/performance-tuning/026-parquet-filter-pushdown.md
index 71b5782..a249ae7 100644
--- a/_docs/performance-tuning/026-parquet-filter-pushdown.md
+++ b/_docs/performance-tuning/026-parquet-filter-pushdown.md
@@ -1,6 +1,6 @@
 ---
 title: "Parquet Filter Pushdown"
-date: 2016-11-21 21:25:59 UTC
+date: 2018-03-26 17:37:50 UTC
 parent: "Performance Tuning"
 ---
 
@@ -8,6 +8,14 @@ Drill 1.9 introduces the Parquet filter pushdown option. 
Parquet filter pushdown
  
 Parquet filter pushdown is enabled by default. When a query contains a filter 
expression, you can run the [EXPLAIN PLAN 
command]({{site.baseurl}}/docs/explain-commands/) to see if Drill applies 
Parquet filter pushdown to the query. You can enable and disable this feature 
using the [ALTER SYSTEM|SESSION SET]({{site.baseurl}}/docs/alter-system/) 
command with the `planner.store.parquet.rowgroup.filter.pushdown` option.  
 
+As of Drill 1.13, the query planner in Drill can apply project push down, 
filter push down, and partition pruning to star queries in common table 
expressions (CTEs), views, and subqueries, for example:  
+  
+       select col1 from (select * from t)  
+
+When a CTE, view, or subquery contains a star filter condition, the query 
planner in Drill can apply the filter and prune extraneous data, further 
reducing the amount of data that the scanner reads and improving performance. 
+ 
+**Note:** Currently, Drill only supports pushdown for simple star subselect 
queries without filters. See 
[DRILL-6219](https://www.google.com/url?q=https://issues.apache.org/jira/browse/DRILL-6219&sa=D&ust=1522084453671000&usg=AFQjCNFXp-nWMRXzM466BSRFlV3F63_ZYA)
 for more information.  
+
 ##How Parquet Filter Pushdown Works
 Drill applies Parquet filter pushdown during the query planning phase. The 
query planner in Drill performs Parquet filter pushdown by evaluating the 
filter expressions in the query. If no filter expression exists, the underlying 
scan operator reads all of the data in a Parquet file and then sends the data 
to operators downstream. When filter expressions exist, the planner applies 
each filter and prunes the data, reducing the amount of data that the scanner 
and Parquet reader must read.
  
@@ -36,15 +44,15 @@ Because Drill applies Parquet filter pushdown during the 
query planning phase, y
 Run the [EXPLAIN PLAN command]({{site.baseurl}}/docs/explain-commands/) to see 
the execution plan for the query. See [Query 
Plans]({{site.baseurl}}/docs/query-plans/) for more information. 
 
 ##Support 
-The following table lists the supported and unsupported clauses, operators, 
data types, and scenarios for Parquet filter pushdown:  
-
-|                      | Supported                                             
                                                                                
                                             | Not Supported                    
                                                                        |
-|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|
-| Clauses              | WHERE,   HAVING (HAVING is supported if Drill can 
pass the filter through GROUP   BY.)                                            
                                                 |                              
                                                                            |
-| Operators            | AND,   OR, IN (An IN list is converted to OR if the 
number in the IN list is within   a certain threshold, for example 20. If 
greater than the threshold, pruning   cannot occur.) | NOT,   ITEM (Drill does 
not push the filter past the ITEM operator, which is used   for complex 
fields.) |
-| Comparison Operators | <>,   <, >, <=, >=, =                                 
                                                                                
| IS [NOT] NULL                                                                 
                           |
-| Data Types           | INT,   BIGINT, FLOAT, DOUBLE, DATE, TIMESTAMP, TIME   
                                                                                
                                             | CHAR,   VARCHAR columns, Hive 
TIMESTAMP                                                                  |
-| Function             | CAST   is supported among these four numeric types 
only: int, bigint, float, double                                                
                                                |                               
                                                                           |
-| Other                | --                                                    
                                                                                
                                             | Joins,   Files with multiple row 
groups, Enabled Native Hive reader                                      | 
-
-
+The following table lists the supported and unsupported clauses, operators, 
data types, function, and scenarios for Parquet filter pushdown:  
+
+**Note:** An asterisk (*) indicates support as of Drill 1.13
+
+|                        | **Supported**                                       
                                                                                
                                                                                
              | **Not Supported**                                               
                                       |
+|------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------|
+| **Clauses**                | WHERE, *WITH, HAVING (HAVING is   supported if 
Drill can pass the filter through GROUP BY.)                                    
                                                                                
               | --                                                             
                                    |
+| **Operators**              | AND, OR, NOT, *IS [NOT] NULL, *IS   [NOT] 
TRUE|FALSE, IN (An IN list is converted to OR if the number in the IN   list is 
within a certain threshold, for example 20. If greater than the   threshold, 
pruning cannot occur.) | ITEM (Drill does not push the filter   past the ITEM 
operator, which is used for complex fields.)  |
+| Comparison   Operators | <>, <, >, <=, >=, =                                 
                                                                                
                                                                                
          | --                                                                  
                               |
+| **Data   Types**           | INT, BIGINT, FLOAT, DOUBLE, DATE,   TIMESTAMP, 
TIME, *BOOLEAN (true|false)                                                     
                                                                                
               | CHAR, VARCHAR columns, Hive TIMESTAMP                          
                                    |
+| **Function**               | CAST is supported among the following   types 
only: int, bigint, float, double, *date, *timestamp, and *time                  
                                                                                
                | --                                                            
                                     |
+| **Other**                  | Files with multiple row groups                  
                                                                                
                                                                                
              | Joins, Enabled Native Hive reader                               
                                   |
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/drill/blob/89b616b1/_docs/performance-tuning/partition-pruning/010-partition-pruning-introduction.md
----------------------------------------------------------------------
diff --git 
a/_docs/performance-tuning/partition-pruning/010-partition-pruning-introduction.md
 
b/_docs/performance-tuning/partition-pruning/010-partition-pruning-introduction.md
index 5a157fd..4e600e1 100644
--- 
a/_docs/performance-tuning/partition-pruning/010-partition-pruning-introduction.md
+++ 
b/_docs/performance-tuning/partition-pruning/010-partition-pruning-introduction.md
@@ -1,6 +1,6 @@
 ---
 title: "Partition Pruning Introduction"
-date: 2016-08-15 18:40:27 UTC
+date: 2018-03-26 17:37:51 UTC
 parent: "Partition Pruning"
 --- 
 
@@ -8,7 +8,15 @@ Partition pruning is a performance optimization that limits 
the number of files
 
 As of Drill 1.8, partition pruning also applies to the Parquet metadata cache. 
When data is partitioned in a directory hierarchy, Drill attempts to read the 
metadata cache file from a sub-partition, based on matching filter criteria 
instead of reading from the top level partition, to reduce the amount of 
metadata read during the query planning time. If you created a metadata cache 
file in a previous version of Drill, you must issue the REFRESH TABLE METADATA 
command to regenerate the metadata cache file before running queries for 
metadata cache pruning to occur. See [Optimizing Parquet Metadata 
Reading]({{site.baseurl}}/docs/optimizing-parquet-metadata-reading/) for more 
information.  
 
-The query planner in Drill performs partition pruning by evaluating the 
filters. If no partition filters are present, the underlying Scan operator 
reads all files in all directories and then sends the data to operators, such 
as Filter, downstream. When partition filters are present, the query planner 
pushes the filters down to the Scan if possible. The Scan reads only the 
directories that match the partition filters, thus reducing disk I/O.
+The query planner in Drill performs partition pruning by evaluating the 
filters. If no partition filters are present, the underlying Scan operator 
reads all files in all directories and then sends the data to operators, such 
as Filter, downstream. When partition filters are present, the query planner 
pushes the filters down to the Scan if possible. The Scan reads only the 
directories that match the partition filters, thus reducing disk I/O.  
+
+As of Drill 1.13, the query planner in Drill can apply project push down, 
filter push down, and partition pruning to star queries in common table 
expressions (CTEs), views, and subqueries, for example:  
+  
+       select col1 from (select * from t)  
+
+When a CTE, view, or subquery contains a star filter condition, the query 
planner in Drill can apply the filter and prune extraneous data, further 
reducing the amount of data that the scanner reads and improving performance. 
+ 
+**Note:** Currently, Drill only supports pushdown for simple star subselect 
queries without filters. See 
[DRILL-6219](https://www.google.com/url?q=https://issues.apache.org/jira/browse/DRILL-6219&sa=D&ust=1522084453671000&usg=AFQjCNFXp-nWMRXzM466BSRFlV3F63_ZYA)
 for more information.
 
 ## Using Partitioned Drill Data
 Before using Parquet data created by Drill 1.2 or earlier in later releases, 
you need to migrate the data. Migrate Parquet data as described in ["Migrating 
Parquet Data"]({{site.baseurl}}/docs/migrating-parquet-data/). 

http://git-wip-us.apache.org/repos/asf/drill/blob/89b616b1/_docs/sql-reference/data-types/010-supported-data-types.md
----------------------------------------------------------------------
diff --git a/_docs/sql-reference/data-types/010-supported-data-types.md 
b/_docs/sql-reference/data-types/010-supported-data-types.md
index 28560c3..bcde2ec 100644
--- a/_docs/sql-reference/data-types/010-supported-data-types.md
+++ b/_docs/sql-reference/data-types/010-supported-data-types.md
@@ -1,6 +1,6 @@
 ---
 title: "Supported Data Types"
-date: 2017-04-05 00:09:57 UTC
+date: 2018-03-26 17:37:51 UTC
 parent: "Data Types"
 ---
 Drill reads from and writes to data sources having a wide variety of types. 
@@ -197,7 +197,7 @@ The [CONVERT_TO 
function]({{site.baseurl}}/docs/data-type-conversion/#convert_to
 
     CONVERT_TO(mycolumn, 'INT_BE')
 
-The following table lists the data types for use with the CONVERT_TO
+The following table lists the data types you can use with the CONVERT_TO
 and CONVERT_FROM functions:
 
 **Type**| **Input Type**| **Output Type**  

http://git-wip-us.apache.org/repos/asf/drill/blob/89b616b1/_docs/sql-reference/sql-functions/020-data-type-conversion.md
----------------------------------------------------------------------
diff --git a/_docs/sql-reference/sql-functions/020-data-type-conversion.md 
b/_docs/sql-reference/sql-functions/020-data-type-conversion.md
index 14e7cf4..5273bad 100644
--- a/_docs/sql-reference/sql-functions/020-data-type-conversion.md
+++ b/_docs/sql-reference/sql-functions/020-data-type-conversion.md
@@ -1,6 +1,6 @@
 ---
 title: "Data Type Conversion"
-date:  
+date: 2018-03-26 17:37:51 UTC
 parent: "SQL Functions"
 ---
 Drill supports the following functions for casting and converting data types:
@@ -151,15 +151,29 @@ The CONVERT_TO and CONVERT_FROM functions convert binary 
data to/from Drill inte
 *type* is one of the encoding types listed in the [CONVERT_TO/FROM data 
types]({{ site.baseurl 
}}/docs/supported-data-types/#data-types-for-convert_to-and-convert_from-functions)
 table. 
 
 
-### CONVERT_TO and CONVERT_FROM Usage Notes
+### CONVERT_TO and CONVERT_FROM Usage Notes  
 
-CONVERT_FROM and CONVERT_TO methods transform a known binary 
representation/encoding to a Drill internal format. Use CONVERT_TO and 
CONVERT_FROM instead of the CAST function for converting binary data types. 
CONVERT_TO/FROM functions work for data in a binary representation and are more 
efficient to use than CAST. 
 
-Drill can optimize scans of HBase tables when you use the \*\_BE encoded types 
shown in section  ["Data Types for CONVERT_TO and CONVERT_FROM Functions"]({{ 
site.baseurl 
}}/docs/supported-data-types/#data-types-for-convert_to-and-convert_from-functions)
 on big endian-encoded data. You need to use the HBase storage plugin and query 
data as described in ["Querying Hbase"]({{ site.baseurl 
}}/docs/querying-hbase). To write Parquet binary data, convert SQL data *to* 
binary data and store the data in a Parquet table while creating a table as a 
selection (CTAS).
+- CONVERT_FROM and CONVERT_TO methods transform a known binary 
representation/encoding to a Drill internal format. Use CONVERT_TO and 
CONVERT_FROM instead of the CAST function for converting binary data types. 
CONVERT_TO/FROM functions work for data in a binary representation and are more 
efficient to use than CAST. 
 
-CONVERT_TO also converts an SQL data type to complex types, including HBase 
byte arrays, JSON and Parquet arrays, and maps. CONVERT_FROM converts from 
complex types, including HBase arrays, JSON and Parquet arrays and maps to an 
SQL data type. 
 
-You can use [STRING_BINARY]({{ site.baseurl 
}}/docs/data-type-conversion/#string_binary-function) and [BINARY_STRING]({{ 
site.baseurl }}/docs/data-type-conversion/#binary_string-function) custom Drill 
functions with CONVERT_TO and CONVERT_FROM to get meaningful results.
+- Drill can optimize scans on HBase tables when you use the \*\_BE encoded 
types shown in section  ["Data Types for CONVERT_TO and CONVERT_FROM 
Functions"]({{ site.baseurl 
}}/docs/supported-data-types/#data-types-for-convert_to-and-convert_from-functions)
 on big endian-encoded data. You need to use the HBase storage plugin and query 
data as described in ["Querying Hbase"]({{ site.baseurl 
}}/docs/querying-hbase). To write Parquet binary data, convert SQL data *to* 
binary data and store the data in a Parquet table while creating a table as a 
selection (CTAS).  
+
+
+- CONVERT_TO also converts an SQL data type to complex types, including HBase 
byte arrays, JSON and Parquet arrays, and maps. CONVERT_FROM converts from 
complex types, including HBase arrays, JSON and Parquet arrays and maps to an 
SQL data type. 
+
+
+- You can use [STRING_BINARY]({{ site.baseurl 
}}/docs/data-type-conversion/#string_binary-function) and [BINARY_STRING]({{ 
site.baseurl }}/docs/data-type-conversion/#binary_string-function) custom Drill 
functions with CONVERT_TO and CONVERT_FROM to get meaningful results.  
+
+
+
+- Drill 1.13 and later supports [NaN and Infinity values as numeric data 
types]({{site.baseurl}}/docs/json-data-model/). 
+You can use the convert_to and convert_from functions in queries on JSON data 
with NaN and Infinity values, as shown in the following query examples:  
+ 
+            select convert_fromJSON('{"num": 55, "nan": NaN, "inf": 
-Infinity}'); 
+            select convert_fromJSON(jsonColumn) from mysql.someTable;  
+            select string_binary(convert_toJSON(convert_fromJSON(jsonColumn) 
from mysql.someTable;
+
 
 ### Conversion of Data Types Examples
 

Reply via email to