This is an automated email from the ASF dual-hosted git repository.
bridgetb pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/drill-site.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 7d96ce4 doc edits and updates for Drill 1.14
7d96ce4 is described below
commit 7d96ce4604f9b57371ae9441105b1779aa476433
Author: Bridget Bevens <[email protected]>
AuthorDate: Wed Jun 27 15:16:55 2018 -0700
doc edits and updates for Drill 1.14
---
.../aggregate-and-aggregate-statistical/index.html | 26 +++++-----
docs/aggregate-window-functions/index.html | 38 +++++++-------
docs/configuration-options-introduction/index.html | 6 +--
docs/custom-function-interfaces/index.html | 10 ++--
docs/data-type-conversion/index.html | 16 ++----
.../index.html | 6 ++-
docs/handling-different-data-types/index.html | 4 +-
docs/mapr-db-format/index.html | 4 +-
docs/math-and-trig/index.html | 14 ++---
docs/parquet-format/index.html | 4 +-
docs/querying-hive/index.html | 6 +--
docs/supported-data-types/index.html | 60 ++++++++++++++++------
feed.xml | 4 +-
13 files changed, 112 insertions(+), 86 deletions(-)
diff --git a/docs/aggregate-and-aggregate-statistical/index.html
b/docs/aggregate-and-aggregate-statistical/index.html
index 8400143..71d3734 100644
--- a/docs/aggregate-and-aggregate-statistical/index.html
+++ b/docs/aggregate-and-aggregate-statistical/index.html
@@ -1232,7 +1232,7 @@
</div>
-
+ Jun 26, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1241,7 +1241,7 @@
<h2 id="aggregate-functions">Aggregate Functions</h2>
<p>The following tables list the aggregate and aggregate statistical functions
that you can use in
-Drill queries:</p>
+Drill queries: </p>
<table><thead>
<tr>
@@ -1252,12 +1252,12 @@ Drill queries:</p>
</thead><tbody>
<tr>
<td>AVG(expression)</td>
-<td>SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, DECIMAL, INTERVAL</td>
-<td>DECIMAL for any integer-type argument, DOUBLE for a floating-point
argument, otherwise the same as the argument data type</td>
+<td>SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, DECIMAL, INTERVAL</td>
+<td>DECIMAL for DECIMAL argument, DOUBLE for all other arguments</td>
</tr>
<tr>
<td>COUNT(*)</td>
-<td><em>-</em></td>
+<td>-</td>
<td>BIGINT</td>
</tr>
<tr>
@@ -1267,22 +1267,22 @@ Drill queries:</p>
</tr>
<tr>
<td>MAX(expression)</td>
-<td>BINARY, DECIMAL, VARCHAR, DATE, TIME, or TIMESTAMP</td>
-<td>same as argument type</td>
+<td>BINARY, DECIMAL, VARCHAR, DATE, TIME, or TIMESTAMP</td>
+<td>same as argument type</td>
</tr>
<tr>
<td>MIN(expression)</td>
-<td>BINARY, DECIMAL, VARCHAR, DATE, TIME, or TIMESTAMP</td>
-<td>same as argument type</td>
+<td>BINARY, DECIMAL, VARCHAR, DATE, TIME, or TIMESTAMP</td>
+<td>same as argument type</td>
</tr>
<tr>
<td>SUM(expression)</td>
-<td>SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, DECIMAL, INTERVAL</td>
-<td>BIGINT for SMALLINT or INTEGER arguments, DECIMAL for BIGINT arguments,
DOUBLE for floating-point arguments, otherwise the same as the argument data
type</td>
+<td>SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, DECIMAL, INTERVAL</td>
+<td>DECIMAL for DECIMAL argument, BIGINT for any integer-type argument
(including BIGINT), DOUBLE for floating-point arguments</td>
</tr>
</tbody></table>
-<p>* In this release, Drill disables the DECIMAL data type, including casting
to DECIMAL and reading DECIMAL types from Parquet and Hive. You can <a
href="docs/supported-data-types/#enabling-the-decimal-type">enable the DECIMAL
type</a>, but this is not recommended.</p>
+<p>Starting in Drill 1.14, the DECIMAL data type is enabled by default. </p>
<p>AVG, COUNT, MIN, MAX, and SUM accept ALL and DISTINCT keywords. The default
is ALL.</p>
@@ -1500,7 +1500,7 @@ Population variance of input values (the population
standard deviated squared)</
Sample variance of input values (sample standard deviation squared)</li>
</ul>
-<p>These functions take a SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, or DECIMAL
expression as the argument. If the expression is FLOAT, the function returns
DOUBLE; otherwise, the function returns DECIMAL. As previously mentioned,
DECIMAL is disabled. You can <a
href="docs/supported-data-types/#enabling-the-decimal-type">enable the DECIMAL
type</a>, but this is not recommended.</p>
+<p>These functions take a SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, or DECIMAL
expression as the argument. The functions return DECIMAL for DECIMAL arguments
and DOUBLE for all other arguments.</p>
diff --git a/docs/aggregate-window-functions/index.html
b/docs/aggregate-window-functions/index.html
index dbf2491..f0b509f 100644
--- a/docs/aggregate-window-functions/index.html
+++ b/docs/aggregate-window-functions/index.html
@@ -1232,7 +1232,7 @@
</div>
-
+ Jun 26, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1244,41 +1244,41 @@
<table><thead>
<tr>
-<th>Window Function</th>
-<th>Argument Type</th>
-<th>Return Type</th>
-<th>Description</th>
+<th><strong>Window Function</strong></th>
+<th><strong>Argument Type</strong></th>
+<th><strong>Return Type</strong></th>
+<th><strong>Description</strong></th>
</tr>
</thead><tbody>
<tr>
<td>AVG()</td>
-<td>SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, DECIMAL, INTERVALYEAR or
INTERVALDAY</td>
-<td>DECIMAL for any integer-type argument, DOUBLE for a floating-point
argument, otherwise the same as the argument data type</td>
-<td>The AVG window function returns the average value for the input expression
values. The AVG function works with numeric values and ignores NULL values.</td>
+<td>SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, DECIMAL, INTERVALYEAR or
INTERVALDAY</td>
+<td>DECIMAL for DECIMAL argument, DOUBLE for all other arguments</td>
+<td>The AVG window function returns the average value for the input
expression values. The AVG function works with numeric values and ignores
NULL values.</td>
</tr>
<tr>
<td>COUNT()</td>
-<td>All argument data types</td>
+<td>All argument data types</td>
<td>BIGINT</td>
-<td>The COUNT() window function counts the number of input rows. COUNT(*)
counts all of the rows in the target table if they do or do not include nulls.
COUNT(expression) computes the number of rows with non-NULL values in a
specific column or expression.</td>
+<td>The COUNT() window function counts the number of input rows. COUNT(*)
counts all of the rows in the target table if they do or do not include
nulls. COUNT(expression) computes the number of rows with non-NULL values in
a specific column or expression.</td>
</tr>
<tr>
<td>MAX()</td>
-<td>BINARY, DECIMAL, VARCHAR, DATE, TIME, or TIMESTAMP</td>
-<td>Same as argument type</td>
-<td>The MAX() window function returns the maximum value of the expression
across all input values. The MAX function works with numeric values and ignores
NULL values.</td>
+<td>BINARY, DECIMAL, VARCHAR, DATE, TIME, or TIMESTAMP</td>
+<td>Same as argument type</td>
+<td>The MAX() window function returns the maximum value of the expression
across all input values. The MAX function works with numeric values and
ignores NULL values.</td>
</tr>
<tr>
<td>MIN()</td>
-<td>BINARY, DECIMAL, VARCHAR, DATE, TIME, or TIMESTAMP</td>
-<td>Same as argument type</td>
-<td>The MIN () window function returns the minimum value of the expression
across all input values. The MIN function works with numeric values and ignores
NULL values.</td>
+<td>BINARY, DECIMAL, VARCHAR, DATE, TIME, or TIMESTAMP</td>
+<td>Same as argument type</td>
+<td>The MIN () window function returns the minimum value of the expression
across all input values. The MIN function works with numeric values and
ignores NULL values.</td>
</tr>
<tr>
<td>SUM()</td>
-<td>SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, DECIMAL, INTERVALDAY, or
INTERVALYEAR</td>
-<td>BIGINT for SMALLINT or INTEGER arguments, DECIMAL for BIGINT arguments,
DOUBLE for floating-point arguments, otherwise the same as the argument data
type</td>
-<td>The SUM () window function returns the sum of the expression across all
input values. The SUM function works with numeric values and ignores NULL
values.</td>
+<td>SMALLINT, INTEGER, BIGINT, FLOAT, DOUBLE, DECIMAL, INTERVALDAY, or
INTERVALYEAR</td>
+<td>DECIMAL for DECIMAL argument, BIGINT for any integer-type argument
(including BIGINT), DOUBLE for floating-point arguments</td>
+<td>The SUM () window function returns the sum of the expression across all
input values. The SUM function works with numeric values and ignores NULL
values.</td>
</tr>
</tbody></table>
diff --git a/docs/configuration-options-introduction/index.html
b/docs/configuration-options-introduction/index.html
index 2ec2714..27db26a 100644
--- a/docs/configuration-options-introduction/index.html
+++ b/docs/configuration-options-introduction/index.html
@@ -1232,7 +1232,7 @@
</div>
- Jun 14, 2018
+ Jun 26, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1626,9 +1626,9 @@
<td>Output format for data written to tables with the CREATE TABLE AS (CTAS)
command. Allowed values are parquet, json, psv, csv, or tsv.</td>
</tr>
<tr>
-<td>store.hive.optimize_scan_with_native_readers</td>
+<td>store.hive.parquet.optimize_scan_with_native_reader</td>
<td>FALSE</td>
-<td>By default, Drill reads Hive tables using the native Hive reader. When
you enable this option, Drill reads Hive tables using Drill native readers,
which enables faster reads and enforces direct memory usage. Starting in
Drill 1.14, this option also enables Drill to apply filter push down
optimizations.</td>
+<td>By default, Drill reads Hive tables using the native Hive reader. When
you enable this option, Drill reads Hive tables using Drill native readers,
which enables faster reads and enforces direct memory usage. Starting in
Drill 1.14, this option also enables Drill to apply filter push down
optimizations. Previously, this was the
store.hive.optimize_scan_with_native_readers option, which is scheduled to be
deprecated in Drill 1.15.</td>
</tr>
<tr>
<td>store.json.all_text_mode</td>
diff --git a/docs/custom-function-interfaces/index.html
b/docs/custom-function-interfaces/index.html
index bef29bf..082d7a1 100644
--- a/docs/custom-function-interfaces/index.html
+++ b/docs/custom-function-interfaces/index.html
@@ -1230,7 +1230,7 @@
</div>
-
+ Jun 27, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1334,7 +1334,7 @@ You provide the code in this method that determines the
action Drill takes when
<h2 id="example">Example</h2>
-<p>The following example shows the program created for the
<code>mysecondmin</code> function:</p>
+<p>The following example shows the program created for the
<code>mysecondmin</code> function. The <code>mysecondmin</code> function looks
at all the incoming values to determine if there is a new minimum value. When
an incoming value is less than the minimum value, the function replaces the
second minimum value with the value that was previously the minimum value.</p>
<div class="highlight"><pre><code class="language-text"
data-lang="text">package org.apache.drill.udfs;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -1370,8 +1370,8 @@ public class MyUdfs {
public void add() {
if (in.value < min.value) {
- min.value = in.value;
secondMin.value = min.value;
+ min.value = in.value;
}
}
@@ -1381,8 +1381,8 @@ public class MyUdfs {
}
@Override
public void reset() {
- min.value = 0;
- secondMin.value = 0;
+ min.value = 999999999;
+ secondMin.value = 999999999;
}
}
diff --git a/docs/data-type-conversion/index.html
b/docs/data-type-conversion/index.html
index d6111c7..2b2af7a 100644
--- a/docs/data-type-conversion/index.html
+++ b/docs/data-type-conversion/index.html
@@ -1232,7 +1232,7 @@
</div>
- Mar 26, 2018
+ Jun 27, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1280,12 +1280,9 @@
<h3 id="casting-a-character-string-to-a-number">Casting a Character String to
a Number</h3>
-<p>You cannot cast a character string that includes a decimal point to an INT
or BIGINT. For example, if you have "1200.50" in a JSON file,
attempting to select and cast the string to an INT fails. As a workaround, cast
to a FLOAT or DOUBLE type, and then cast to an INT, assuming you want to lose
digits to the right of the decimal point. </p>
+<p>You can cast strings or numeric values to decimals, even if they contain
decimal points. In cases where a value has a scale and precision greater than
the scale and precision specified in the query, the value is rounded to fit the
specified scale and precision.</p>
-<div class="admonition note">
- <p class="first admonition-title">Note</p>
- <p class="last">In this release, Drill disables the DECIMAL data type. To
enable, set the planner.enable_decimal_data_type option to true. </p>
-</div>
+<p>You cannot cast a character string that includes a decimal point to an INT
or BIGINT. For example, if you have "1200.50" in a JSON file,
attempting to select and cast the string to an INT fails. As a workaround, cast
to a FLOAT or DOUBLE type, and then cast to an INT, assuming you want to lose
digits to the right of the decimal point. </p>
<p>The following example shows how to cast a character to a DECIMAL having two
decimal places.</p>
<div class="highlight"><pre><code class="language-text"
data-lang="text">SELECT CAST('1' as DECIMAL(28, 2)) FROM (VALUES(1));
@@ -1322,13 +1319,8 @@ SELECT CAST(456 as CHAR(3)) FROM (VALUES(1));
| EXPR$0 |
+-----------------+
| -2.147483648E9 |
-+-----------------+
++-----------------+
</code></pre></div>
-<div class="admonition note">
- <p class="first admonition-title">Note</p>
- <p class="last">In this release, Drill disables the DECIMAL data type. To
enable, set the planner.enable_decimal_data_type option to true. </p>
-</div>
-
<h3 id="casting-intervals">Casting Intervals</h3>
<p>To cast interval data to interval types you can query from a data source
such as JSON, for example, use the following syntax, respectively:</p>
diff --git a/docs/develop-custom-functions-introduction/index.html
b/docs/develop-custom-functions-introduction/index.html
index d125f1b..4c8e7d0 100644
--- a/docs/develop-custom-functions-introduction/index.html
+++ b/docs/develop-custom-functions-introduction/index.html
@@ -1230,7 +1230,7 @@
</div>
- Nov 21, 2016
+ Jun 27, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1261,7 +1261,9 @@ separate aggregate value for each combination of values
from the GROUP BY clause
<p>To develop custom functions for Drill, create a Java program that
implements Drill’s <a href="/docs/developing-a-simple-function/">simple</a> or
<a href="/docs/developing-an-aggregate-function/">aggregate</a> interface and
then add your custom function(s) to Drill. </p>
-<p>As of Drill 1.9, there are two methods for adding custom functions to
Drill. Administrators can manually add custom functions to Drill, or users can
issue the CREATE FUNCTION USING JAR command to register their custom functions.
The CREATE FUNCTION USING JAR command is part of the <a
href="/docs/dynamic-udfs/">Dynamic UDF feature</a> which requires assistance
from an administrator. </p>
+<p>As of Drill 1.9, there are two methods for adding custom functions to
Drill. Administrators can manually add custom functions to Drill, or users can
issue the CREATE FUNCTION USING JAR command to register their custom functions.
The CREATE FUNCTION USING JAR command is part of the <a
href="/docs/dynamic-udfs/">Dynamic UDF feature</a> which requires assistance
from an administrator. </p>
+
+<p><strong>Note:</strong> Starting in Drill 1.14, Drill supports vardecimal as
the decimal data type. For custom functions that return values with a decimal
data type, you must specify an appropriate FunctionTemplate.ReturnType in the
FunctionTemplate. Also, verify the result of functions in queries that have a
LIMIT 0 clause when LIMIT 0 optimization is enabled. </p>
diff --git a/docs/handling-different-data-types/index.html
b/docs/handling-different-data-types/index.html
index 4269ea6..f5102c9 100644
--- a/docs/handling-different-data-types/index.html
+++ b/docs/handling-different-data-types/index.html
@@ -1232,7 +1232,7 @@
</div>
-
+ Jun 27, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1298,7 +1298,7 @@
<p>FLOAT and DOUBLE yield approximate results. These are variable-precision
numeric types. Drill does not cast/convert all values precisely to the internal
format, but instead stores approximations. Slight differences can occur in the
value stored and retrieved. The following guidelines are recommended:</p>
<ul>
-<li>For conversions involving monetary calculations, for example, that require
precise results use the DECIMAL type instead of FLOAT or DOUBLE. In this
release, Drill disables the DECIMAL data type, including casting to DECIMAL and
reading DECIMAL types from Parquet and Hive. </li>
+<li>For conversions involving monetary calculations, for example, that require
precise results use the DECIMAL type instead of FLOAT or DOUBLE. Starting in
Drill 1.14, the DECIMAL data type is enabled by default. </li>
<li>For complex calculations or mission-critical applications, especially
those involving infinity and underflow situations, carefully consider the
limitations of type casting that involves FLOAT or DOUBLE.</li>
<li>Equality comparisons between floating-point values can produce unexpected
results.</li>
</ul>
diff --git a/docs/mapr-db-format/index.html b/docs/mapr-db-format/index.html
index 87a95d0..a773f64 100644
--- a/docs/mapr-db-format/index.html
+++ b/docs/mapr-db-format/index.html
@@ -1230,7 +1230,7 @@
</div>
- Jun 20, 2018
+ Jun 26, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1247,7 +1247,7 @@
<p><strong>Example</strong> </p>
<div class="highlight"><pre><code class="language-text" data-lang="text">
SELECT * FROM mfs.`/users/max/mytable`;
</code></pre></div>
-<p><strong>Note:</strong> Starting in Drill 1.14, the MapR Drill installation
package includes a hive-maprdb-json-handler, which enables you to create a Hive
external table from a MapR-DB JSON table and then query the table from the Hive
schema. The hive-maprdb-json-handler is not included in the Apache Drill
installation package.</p>
+<p><strong>Note:</strong> Starting in Drill 1.14, the MapR Drill installation
package includes a hive-maprdb-json-handler, which enables you to create Hive
external tables from MapR-DB JSON tables and then query the tables using the
Hive schema. Drill can use the native Drill reader to read the Hive external
tables. The native Drill reader enables Drill to perform faster reads of data
and apply filter pushdown optimizations. The hive-maprdb-json-handler is not
included in the Apache Dril [...]
diff --git a/docs/math-and-trig/index.html b/docs/math-and-trig/index.html
index acc7721..17805da 100644
--- a/docs/math-and-trig/index.html
+++ b/docs/math-and-trig/index.html
@@ -1232,7 +1232,7 @@
</div>
-
+ Jun 27, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1245,12 +1245,14 @@
<li>BIGINT</li>
<li>FLOAT</li>
<li>DOUBLE</li>
-<li>SMALLINT*</li>
+<li>SMALLINT*<br></li>
+<li>DECIMAL**</li>
</ul>
-<p>* Not supported in this release.</p>
+<p>* Not supported. Drill treats SMALLINT as INT when reading from Parquet.<br>
+** Drill implicitly casts DECIMAL to DOUBLE for functions that take DOUBLE.
</p>
-<p>Exceptions are the LSHIFT and RSHIFT functions, which take all types except
FLOAT and DOUBLE types. DEGREES, EXP, RADIANS, and the multiple LOG functions
take the input types in this list plus the DECIMAL type. In this release, Drill
disables the DECIMAL data type. To enable the DECIMAL type, set the
<code>planner.enable_decimal_data_type</code> option to <code>true</code>.</p>
+<p>Exceptions are the LSHIFT and RSHIFT functions, which take all types except
FLOAT and DOUBLE types. DEGREES, EXP, RADIANS, and the multiple LOG functions
take the input types in this list plus the DECIMAL type. </p>
<h2 id="table-of-math-functions">Table of Math Functions</h2>
@@ -1342,9 +1344,9 @@
<td>Returns the value of x to the y power.</td>
</tr>
<tr>
-<td>RADIANS</td>
+<td>RADIANS(x)</td>
<td>FLOAT8</td>
-<td>Converts x degress to radians.</td>
+<td>Converts x degrees to radians.</td>
</tr>
<tr>
<td>RAND</td>
diff --git a/docs/parquet-format/index.html b/docs/parquet-format/index.html
index ffaafd0..c25476b 100644
--- a/docs/parquet-format/index.html
+++ b/docs/parquet-format/index.html
@@ -1230,7 +1230,7 @@
</div>
- Aug 9, 2017
+ Jun 27, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1551,7 +1551,7 @@ FROM dfs.tmp.`sampleparquet` t;
</tr>
</tbody></table>
-<p>* In this release, Drill disables the DECIMAL data type, including casting
to DECIMAL and reading DECIMAL types from Parquet and Hive. To enable the
DECIMAL type, set the <code>planner.enable_decimal_data_type</code> option to
<code>true</code>.</p>
+<p>* Starting in Drill 1.14, the DECIMAL data type is enabled by default.</p>
<h2 id="data-description-language-support">Data Description Language
Support</h2>
diff --git a/docs/querying-hive/index.html b/docs/querying-hive/index.html
index 0f7f55c..4a7fff2 100644
--- a/docs/querying-hive/index.html
+++ b/docs/querying-hive/index.html
@@ -1230,7 +1230,7 @@
</div>
- Aug 4, 2016
+ Jun 26, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1284,9 +1284,9 @@ download the <a
href="http://doc.mapr.com/download/attachments/28868943/customer
<h2 id="optimizing-reads-of-parquet-backed-tables">Optimizing Reads of
Parquet-Backed Tables</h2>
-<p>Use the <code>store.hive.optimize_scan_with_native_readers</code> option to
optimize reads of Parquet-backed external tables from Hive. When set to TRUE,
this option uses Drill native readers instead of the Hive Serde interface,
resulting in more performant queries of Parquet-backed external tables. (Drill
1.2 and later)</p>
+<p>Use the <code>store.hive.parquet.optimize_scan_with_native_reader</code>
option to optimize reads of Parquet-backed external tables from Hive. When set
to TRUE, this option uses Drill native readers instead of the Hive Serde
interface, resulting in more performant queries of Parquet-backed external
tables. (Drill 1.2 and later)</p>
-<p>Set the <code>store.hive.optimize_scan_with_native_readers</code> option as
described in the section, <a
href="/docs/planning-and-execution-options/">"Planning and Execution
Options"</a>.</p>
+<p>Set the <code>store.hive.parquet.optimize_scan_with_native_reader</code>
option as described in the section, <a
href="/docs/planning-and-execution-options/">"Planning and Execution
Options"</a>.</p>
diff --git a/docs/supported-data-types/index.html
b/docs/supported-data-types/index.html
index 7239bd4..32fcb6a 100644
--- a/docs/supported-data-types/index.html
+++ b/docs/supported-data-types/index.html
@@ -1232,7 +1232,7 @@
</div>
- Mar 26, 2018
+ Jun 27, 2018
<link href="/css/docpage.css" rel="stylesheet" type="text/css">
@@ -1314,28 +1314,58 @@
</tr>
</tbody></table>
-<p>* In the 1.0 release, Drill disables the DECIMAL data type (an alpha
feature), including casting to DECIMAL and reading DECIMAL types from Parquet
and Hive. The NUMERIC data type is an alias for the DECIMAL data type.<br>
+<p>* Starting in Drill 1.14, the DECIMAL data type is enabled by default.<br>
** Internally, INTERVAL is represented as INTERVALDAY or INTERVALYEAR.<br>
*** SMALLINT is not currently supported.<br>
-**** The CHAR data type is internally represented as VARCHAR by Drill. </p>
+**** The CHAR data type is internally represented as VARCHAR by Drill. </p>
-<h2 id="enabling-the-decimal-type">Enabling the DECIMAL Type</h2>
+<h2 id="decimal-data-type">DECIMAL Data Type</h2>
-<p>To enable the DECIMAL type, set the
<code>planner.enable_decimal_data_type</code> option to <code>true</code>. The
DECIMAL type is released as an alpha feature and not recommended for production
use.</p>
-<div class="highlight"><pre><code class="language-text" data-lang="text">
ALTER SYSTEM SET `planner.enable_decimal_data_type` = true;
+<p>Starting in Drill 1.14, DECIMAL data type support is enabled by default.
Drill uses the vardecimal data type to store decimal and numeric data types in
a compressed format that optimizes storage space. The vardecimal data type
stores decimal and numeric values as variable length columns that can represent
any decimal precision. </p>
-+-------+--------------------------------------------+
-| ok | summary |
-+-------+--------------------------------------------+
-| true | planner.enable_decimal_data_type updated. |
-+-------+--------------------------------------------+
-1 row selected (0.08 seconds)
+<p>In Drill, the SQL DECIMAL and NUMERIC data types map to the <a
href="https://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html">java.math.BigDecimal</a>
Java data type. </p>
+
+<h3 id="syntax">Syntax</h3>
+
+<p>The DECIMAL data type accepts numeric values, for which you can define a
precision and a scale, as shown: </p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">
column_name DECIMAL[(precision[,scale])]
</code></pre></div>
-<h2 id="disabling-the-decimal-type">Disabling the DECIMAL Type</h2>
+<p>Precision is an integer that indicates how many digits the number will
contain. Scale is an integer that indicates the number of digits to the right
of the decimal point. For example, the number 2325.67 has a precision of 6 and
scale of 2. In a query, DECIMAL (6,2). </p>
+
+<p>Scale cannot be greater than the precision. If you do not indicate a
precision or scale, the default precision is 38 and scale is 0. </p>
+
+<h3 id="decimal-data-type-storage-format-support">Decimal Data Type Storage
Format Support</h3>
+
+<p>Drill can read and write decimal data types for the following storage
formats: </p>
+
+<ul>
+<li>hive<br></li>
+<li>jdbc </li>
+<li>avro<br></li>
+</ul>
-<p>By default, Drill disables the DECIMAL data type (an alpha feature),
including casting to DECIMAL and reading DECIMAL types from Parquet and Hive.
If you enabled the DECIMAL type by setting
<code>planner.enable_decimal_data_type</code> = true, set the option to false
to disable DECIMAL.</p>
+<p>Drill can only write decimal data types to the following storage format:
</p>
-<p>When the DECIMAL type is disabled, you might see DECIMAL in the query plan,
but Drill internally converts DECIMAL to NUMERIC.</p>
+<ul>
+<li>parquet<br></li>
+</ul>
+
+<h3 id="decimal-type-options">Decimal Type Options</h3>
+
+<p>You can use the <a href="/docs/set/">SET command</a> with the
<code>planner.enable_decimal_data_type</code> option to turn DECIMAL data type
support off and on. If you disable the
<code>planner.enable_decimal_data_type</code> option (by setting it to false),
Drill treats decimal literals as DOUBLE. </p>
+
+<p>Drill 1.14 introduces the following additional decimal-related options for
the Parquet storage format that you can modify using the <a
href="/docs/set/">SET command</a>: </p>
+
+<ul>
+<li><p><code>store.parquet.writer.use_primitive_types_for_decimals
(boolean)</code><br>
+Allows Drill to use INT32 and INT64 logical types when storing decimal values
in Parquet if the precision of the value allows it. Default is true. Set to
false to prevent Drill from using INT32 and INT64 logical types, as shown:
</p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">SET
`store.parquet.writer.use_primitive_types_for_decimals` = false;
+</code></pre></div></li>
+<li><p><code>store.parquet.writer.logical_type_for_decimals</code>
+Indicates the logical type that Drill should use to store decimals. The
default is fixed_len_byte_array. Alternatively, you can set this option to
binary, as shown: </p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">SET
`store.parquet.writer.logical_type_for_decimals` = 'binary';
+</code></pre></div></li>
+</ul>
<h2 id="composite-types">Composite Types</h2>
diff --git a/feed.xml b/feed.xml
index 26cf88a..1c87678 100644
--- a/feed.xml
+++ b/feed.xml
@@ -6,8 +6,8 @@
</description>
<link>/</link>
<atom:link href="/feed.xml" rel="self" type="application/rss+xml"/>
- <pubDate>Thu, 21 Jun 2018 16:44:14 -0700</pubDate>
- <lastBuildDate>Thu, 21 Jun 2018 16:44:14 -0700</lastBuildDate>
+ <pubDate>Wed, 27 Jun 2018 15:06:38 -0700</pubDate>
+ <lastBuildDate>Wed, 27 Jun 2018 15:06:38 -0700</lastBuildDate>
<generator>Jekyll v2.5.2</generator>
<item>