drill-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bridg...@apache.org
Subject drill git commit: 1.13 doc updates and edits
Date Mon, 26 Mar 2018 17:39:06 GMT
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 <bbevens@maprtech.com>
Authored: Mon Mar 26 10:37:48 2018 -0700
Committer: Bridget Bevens <bbevens@maprtech.com>
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
 


Mime
View raw message