drill-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bridg...@apache.org
Subject svn commit: r1667403 [4/5] - in /drill/site/trunk/content/drill: ./ docs/ docs/apache-drill-contribution-guidelines/ docs/apache-drill-in-10-minutes/ docs/connect-to-a-data-source/ docs/data-sources-and-file-formats/ docs/data-type-casting/ docs/date-t...
Date Tue, 17 Mar 2015 21:08:22 GMT
Added: drill/site/trunk/content/drill/docs/mapr-db-format/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/mapr-db-format/index.html?rev=1667403&view=auto
==============================================================================
--- drill/site/trunk/content/drill/docs/mapr-db-format/index.html (added)
+++ drill/site/trunk/content/drill/docs/mapr-db-format/index.html Tue Mar 17 21:08:21 2015
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+
+<meta charset="UTF-8">
+
+
+<title>MapR-DB Format - Apache Drill</title>
+
+<link href="/css/syntax.css" rel="stylesheet" type="text/css">
+<link href="/css/style.css" rel="stylesheet" type="text/css">
+<link href="/css/arrows.css" rel="stylesheet" type="text/css">
+<link href="/css/button.css" rel="stylesheet" type="text/css">
+
+<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
+<link rel="icon" href="/favicon.ico" type="image/x-icon">
+
+<script language="javascript" type="text/javascript" src="/js/lib/jquery-1.11.1.min.js"></script>
+<script language="javascript" type="text/javascript" src="/js/lib/jquery.easing.1.3.js"></script>
+<script language="javascript" type="text/javascript" src="/js/modernizr.custom.js"></script>
+<script language="javascript" type="text/javascript" src="/js/script.js"></script>
+
+</head>
+
+<body onResize="resized();">
+
+<div class="bui"></div>
+
+<div id="search">
+<input type="text" placeholder="Enter search term here">
+</div>
+
+<div id="menu" class="mw">
+<ul>
+  <li class="logo"><a href="/"></a></li>
+  <li>
+    <a href="/overview/">Documentation</a>
+    <ul>
+      <li><a href="/overview/">Overview&nbsp;&nbsp;&nbsp;&nbsp;</a></li>
+      <li><a href="https://cwiki.apache.org/confluence/display/DRILL/Apache+Drill+in+10+Minutes" target="_blank">Drill in 10 Minutes</a></li>
+      <li><a href="/why/">Why Drill? &nbsp;&nbsp;&nbsp;&nbsp;</a></li>
+      <li><a href="/architecture/">Architecture</a></li>
+    </ul>
+  </li>
+  <li>
+    <a href="/community/">Community</a>
+    <ul>
+      <li><a href="/team/">Team</a></li>
+      <li><a href="/community/#events">Events and Meetups</a></li>
+      <li><a href="/community/#mailinglists">Mailing Lists</a></li>
+      <li><a href="/community/#getinvolved">Get Involved</a></li>
+      <li><a href="https://issues.apache.org/jira/browse/DRILL/" target="_blank">Issue Tracker</a></li>
+      <li><a href="https://github.com/apache/drill" target="_blank">GitHub</a></li>
+    </ul>
+  </li>
+  <li><a href="/faq/">FAQ</a></li>
+  <li><a href="/blog/">Blog</a></li>
+  <li style="width:30px; padding-left: 2px; padding-right:10px"><a href="https://twitter.com/apachedrill" target="_blank"><img src="/images/twitterbw.png" alt="" align="center" width="22" style="padding: 0px 10px 1px 0px;"></a> </li>
+  <li class="l"><span>&nbsp;</span></li>
+  <li class="d"><a href="/download/">Download</a></li>
+</ul>
+</div>
+
+<div class="int_title">
+<h1>MapR-DB Format</h1>
+
+</div>
+
+<div class="int_text" align="left"><p>Drill includes a <code>maprdb</code> format for reading MapR-DB data. The <code>dfs</code> storage plugin defines the format when you install Drill from the <code>mapr-drill</code> package on a MapR node. The <code>maprdb</code> format plugin improves the
+estimated number of rows that Drill uses to plan a query. It also enables you
+to query tables like you would query files in a file system because MapR-DB
+and MapR-FS share the same namespace.</p>
+
+<p>You can query tables stored across multiple directories. You do not need to
+create a table mapping to a directory before you query a table in the
+directory. You can select from any table in any directory the same way you
+would select from files in MapR-FS, using the same syntax.</p>
+
+<p>Instead of including the name of a file, you include the table name in the
+query.</p>
+
+<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>Drill stores the <code>maprdb</code> format plugin in the <code>dfs</code> storage plugin instance,
+which you can view in the Drill Web UI. You can access the Web UI at
+<a href="http://localhost:8047/storage">http://localhost:8047/storage</a>. Click <strong>Update</strong> next to the <code>dfs</code> instance
+in the Web UI to view the configuration for the <code>dfs</code> instance.</p>
+
+<p>The following image shows a portion of the configuration with the <code>maprdb</code>
+format plugin for the <code>dfs</code> instance:</p>
+
+<p><img src="/docs/img/18.png" alt="drill query flow"></p>
+</div>
+
+
+<div id="footer" class="mw">
+<div class="wrapper">
+Copyright © 2012-2014 The Apache Software Foundation, licensed under the Apache License, Version 2.0.<br>
+Apache and the Apache feather logo are trademarks of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.<br/><br/>
+</div>
+</div>
+
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+ga('create', 'UA-53379651-1', 'auto');
+ga('send', 'pageview');
+</script>
+
+</body>
+</html>

Added: drill/site/trunk/content/drill/docs/parquet-format/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/parquet-format/index.html?rev=1667403&view=auto
==============================================================================
--- drill/site/trunk/content/drill/docs/parquet-format/index.html (added)
+++ drill/site/trunk/content/drill/docs/parquet-format/index.html Tue Mar 17 21:08:21 2015
@@ -0,0 +1,370 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+
+<meta charset="UTF-8">
+
+
+<title>Parquet Format - Apache Drill</title>
+
+<link href="/css/syntax.css" rel="stylesheet" type="text/css">
+<link href="/css/style.css" rel="stylesheet" type="text/css">
+<link href="/css/arrows.css" rel="stylesheet" type="text/css">
+<link href="/css/button.css" rel="stylesheet" type="text/css">
+
+<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
+<link rel="icon" href="/favicon.ico" type="image/x-icon">
+
+<script language="javascript" type="text/javascript" src="/js/lib/jquery-1.11.1.min.js"></script>
+<script language="javascript" type="text/javascript" src="/js/lib/jquery.easing.1.3.js"></script>
+<script language="javascript" type="text/javascript" src="/js/modernizr.custom.js"></script>
+<script language="javascript" type="text/javascript" src="/js/script.js"></script>
+
+</head>
+
+<body onResize="resized();">
+
+<div class="bui"></div>
+
+<div id="search">
+<input type="text" placeholder="Enter search term here">
+</div>
+
+<div id="menu" class="mw">
+<ul>
+  <li class="logo"><a href="/"></a></li>
+  <li>
+    <a href="/overview/">Documentation</a>
+    <ul>
+      <li><a href="/overview/">Overview&nbsp;&nbsp;&nbsp;&nbsp;</a></li>
+      <li><a href="https://cwiki.apache.org/confluence/display/DRILL/Apache+Drill+in+10+Minutes" target="_blank">Drill in 10 Minutes</a></li>
+      <li><a href="/why/">Why Drill? &nbsp;&nbsp;&nbsp;&nbsp;</a></li>
+      <li><a href="/architecture/">Architecture</a></li>
+    </ul>
+  </li>
+  <li>
+    <a href="/community/">Community</a>
+    <ul>
+      <li><a href="/team/">Team</a></li>
+      <li><a href="/community/#events">Events and Meetups</a></li>
+      <li><a href="/community/#mailinglists">Mailing Lists</a></li>
+      <li><a href="/community/#getinvolved">Get Involved</a></li>
+      <li><a href="https://issues.apache.org/jira/browse/DRILL/" target="_blank">Issue Tracker</a></li>
+      <li><a href="https://github.com/apache/drill" target="_blank">GitHub</a></li>
+    </ul>
+  </li>
+  <li><a href="/faq/">FAQ</a></li>
+  <li><a href="/blog/">Blog</a></li>
+  <li style="width:30px; padding-left: 2px; padding-right:10px"><a href="https://twitter.com/apachedrill" target="_blank"><img src="/images/twitterbw.png" alt="" align="center" width="22" style="padding: 0px 10px 1px 0px;"></a> </li>
+  <li class="l"><span>&nbsp;</span></li>
+  <li class="d"><a href="/download/">Download</a></li>
+</ul>
+</div>
+
+<div class="int_title">
+<h1>Parquet Format</h1>
+
+</div>
+
+<div class="int_text" align="left"><h2 id="parquet-format">Parquet Format</h2>
+
+<p><a href="http://parquet.incubator.apache.org/documentation/latest">Apache Parquet</a> has the following characteristics:</p>
+
+<ul>
+<li>Self-describing</li>
+<li>Columnar format</li>
+<li>Language-independent </li>
+</ul>
+
+<p>Self-describing data embeds the schema or structure with the data itself. Hadoop use cases drive the growth of self-describing data formats, such as Parquet and JSON, and of NoSQL databases, such as HBase. These formats and databases are well suited for the agile and iterative development cycle of Hadoop applications and BI/analytics. Optimized for working with large files, Parquet arranges data in columns, putting related values in close proximity to each other to optimize query performance, minimize I/O, and facilitate compression. Parquet detects and encodes the same or similar data using a technique that conserves resources.</p>
+
+<p>Apache Drill includes the following support for Parquet:</p>
+
+<ul>
+<li>Querying self-describing data in files or NoSQL databases without having to define and manage schema overlay definitions in centralized metastores</li>
+<li>Creating Parquet files from other file formats, such as JSON, without any set up</li>
+<li>Generating Parquet files that have evolving or changing schemas and querying the data on the fly</li>
+<li>Handling Parquet data types</li>
+</ul>
+
+<h3 id="reading-parquet-files">Reading Parquet Files</h3>
+
+<p>When a read of Parquet data occurs, Drill loads only the necessary columns of data, which reduces I/O. Reading only a small piece of the Parquet data from a data file or table, Drill can examine and analyze all values for a column across multiple files. You can create a Drill table from one format and store the data in another format, including Parquet.</p>
+
+<h3 id="writing-parquet-files">Writing Parquet Files</h3>
+
+<p>CREATE TABLE AS SELECT (CTAS) can use any data source provided by the storage plugin. To write Parquet data using the CTAS command, set the session store.format option as shown in the next section. Alternatively, configure the storage plugin to point to the directory containing the Parquet files.</p>
+
+<p>Although the data resides in a single table, Parquet output generally consists of multiple files that resemble MapReduce output having numbered file names,  such as 0_0_0.parquet in a directory.</p>
+
+<h3 id="configuring-the-parquet-storage-format">Configuring the Parquet Storage Format</h3>
+
+<p>To read or write Parquet data, you need to include the Parquet format in the storage plugin format definitions. The <code>dfs</code> plugin definition includes the Parquet format. </p>
+
+<p>Use the <code>store.format</code> option to set the CTAS output format of a Parquet row group at the session or system level.</p>
+
+<p>Use the ALTER command to set the <code>store.format</code> option.</p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">    ALTER SESSION SET `store.format` = &#39;parquet&#39;;
+    ALTER SYSTEM SET `store.format` = &#39;parquet&#39;;
+</code></pre></div>
+<h3 id="configuring-the-size-of-parquet-files">Configuring the Size of Parquet Files</h3>
+
+<p>Configuring the size of Parquet files by setting the <code>store.parquet.block-size</code> can improve write performance. The block size is the size of MFS, HDFS, or the file system. </p>
+
+<p>The larger the block size, the more memory Drill needs for buffering data. Parquet files that contain a single block maximize the amount of data Drill stores contiguously on disk. Given a single row group per file, Drill stores the entire Parquet file onto the block, avoiding network I/O.</p>
+
+<p>To maximize performance, set the target size of a Parquet row group to the number of bytes less than or equal to the block size of MFS, HDFS, or the file system by using the <code>store.parquet.block-size</code>:         </p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">    ALTER SESSION SET `store.parquet.block-size` = 536870912;         
+    ALTER SYSTEM SET `store.parquet.block-size` = 536870912  
+</code></pre></div>
+<p>The default block size is 536870912 bytes.</p>
+
+<h3 id="type-mapping">Type Mapping</h3>
+
+<p>The high correlation between Parquet and SQL data types makes reading Parquet files effortless in Drill. Writing to Parquet files takes more work than reading. Because SQL does not support all Parquet data types, to prevent Drill from inferring a type other than one you want, use the <a href="/docs/sql-functions">cast function</a> Drill offers more liberal casting capabilities than SQL for Parquet conversions if the Parquet data is of a logical type. </p>
+
+<p>The following general process converts a file from JSON to Parquet:</p>
+
+<ul>
+<li>Create or use an existing storage plugin that specifies the storage location of the Parquet file, mutability of the data, and supported file formats.</li>
+<li>Take a look at the JSON data. </li>
+<li>Create a table that selects the JSON file.</li>
+<li>In the CTAS command, cast JSON string data to corresponding <a href="/docs/json-data-model/data-type-mapping">SQL types</a>.</li>
+</ul>
+
+<h3 id="example:-read-json,-write-parquet">Example: Read JSON, Write Parquet</h3>
+
+<p>This example demonstrates a storage plugin definition, a sample row of data from a JSON file, and a Drill query that writes the JSON input to Parquet output. </p>
+
+<h4 id="storage-plugin-definition">Storage Plugin Definition</h4>
+
+<p>You can use the default dfs storage plugin installed with Drill for reading and writing Parquet files. The storage plugin needs to configure the writable option of the workspace to true, so Drill can write the Parquet output. The dfs storage plugin defines the tmp writable workspace, which you can use in the CTAS command to create a Parquet table.</p>
+
+<h4 id="sample-row-of-json-data">Sample Row of JSON Data</h4>
+
+<p>A JSON file called sample.json contains data consisting of strings, typical of JSON data. The following example shows one row of the JSON file:</p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">    {&quot;trans_id&quot;:0,&quot;date&quot;:&quot;2013-07-26&quot;,&quot;time&quot;:&quot;04:56:59&quot;,&quot;amount&quot;:80.5,&quot;user_info&quot;:
+      {&quot;cust_id&quot;:28,&quot;device&quot;:&quot;WEARABLE2&quot;,&quot;state&quot;:&quot;mt&quot;
+      },&quot;marketing_info&quot;:
+        {&quot;camp_id&quot;:4,&quot;keywords&quot;: [&quot;go&quot;,&quot;to&quot;,&quot;thing&quot;,&quot;watch&quot;,&quot;made&quot;,&quot;laughing&quot;,&quot;might&quot;,&quot;pay&quot;,&quot;in&quot;,&quot;your&quot;,&quot;hold&quot;]
+        },
+        &quot;trans_info&quot;:
+          {&quot;prod_id&quot;:[16],
+           &quot;purch_flag&quot;:&quot;false&quot;
+          }
+    }
+</code></pre></div>
+<h4 id="ctas-query">CTAS Query</h4>
+
+<p>The following example shows a CTAS query that creates a table from JSON data shown in the last example. The command casts the date, time, and amount strings to SQL types DATE, TIME, and DOUBLE. String-to-VARCHAR casting of the other strings occurs automatically.</p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">CREATE TABLE dfs.tmp.sampleparquet AS 
+(SELECT trans_id, 
+cast(`date` AS date) transdate, 
+cast(`time` AS time) transtime, 
+cast(amount AS double) amountm,
+user_info, marketing_info, trans_info 
+FROM dfs.`/Users/drilluser/sample.json`);
+</code></pre></div>
+<p>The CTAS query does not specify a file name extension for the output. Drill creates a parquet file by default, as indicated by the file name in the output:</p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">+------------+---------------------------+
+|  Fragment  | Number of records written |
++------------+---------------------------+
+| 0_0        | 5                         |
++------------+---------------------------+
+1 row selected (1.369 seconds)
+</code></pre></div>
+<p>You can query the Parquet file to verify that Drill now interprets the converted string as a date.</p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">SELECT extract(year from transdate) AS `Year`, t.user_info.cust_id AS Customer 
+FROM dfs.tmp.`sampleparquet` t;
+
++------------+------------+
+|    Year    |  Customer  |
++------------+------------+
+| 2013       | 28         |
+| 2013       | 86623      |
+| 2013       | 11         |
+| 2013       | 666        |
+| 2013       | 999        |
++------------+------------+
+5 rows selected (0.039 seconds)
+</code></pre></div>
+<p>For more examples of and information about using Parquet data, see <a href="https://www.mapr.com/blog/evolving-parquet-self-describing-data-format-new-paradigms-consumerization-hadoop-data#.VNeqQbDF_8f">&quot;Evolving Parquet as self-describing data format – New paradigms for consumerization of Hadoop data&quot;</a>.</p>
+
+<h4 id="sql-data-types-to-parquet">SQL Data Types to Parquet</h4>
+
+<p>The first table in this section maps SQL data types to Parquet data types, limited intentionally by Parquet creators to minimize the impact on disk storage:</p>
+
+<table>
+  <tr>
+    <th>SQL Type</th>
+    <th>Parquet Type</th>
+    <th>Description</th>
+  </tr>
+  <tr>
+    <td>BIGINT</td>
+    <td>INT64</td>
+    <td>8-byte signed integer</td>
+  </tr>
+  <tr>
+    <td>BOOLEAN</td>
+    <td>BOOLEAN</td>
+    <td>TRUE (1) or FALSE (0)</td>
+  </tr>
+  <tr>
+    <td>N/A</td>
+    <td>BYTE_ARRAY</td>
+    <td>Arbitrarily long byte array</td>
+  </tr>
+  <tr>
+    <td>FLOAT</td>
+    <td>FLOAT</td>
+    <td>4-byte single precision floating point number</td>
+  </tr>
+  <tr>
+    <td>DOUBLE</td>
+    <td>DOUBLE</td>
+    <td>8-byte double precision floating point number</td>
+  </tr>
+  <tr>
+    <td>INTEGER</td>
+    <td>INT32</td>
+    <td>4-byte signed integer</td>
+  </tr>
+  <tr>
+    <td>None</td>
+    <td>INT96</td>
+    <td>12-byte signed int</td>
+  </tr>
+</table>
+
+<h4 id="sql-types-to-parquet-logical-types">SQL Types to Parquet Logical Types</h4>
+
+<p>Parquet also supports logical types, fully described on the <a href="https://github.com/Parquet/parquet-format/blob/master/LogicalTypes.md">Apache Parquet site</a>. Embedded types, JSON and BSON, annotate a binary primitive type representing a JSON or BSON document. The logical types and their mapping to SQL types are:</p>
+
+<table>
+  <tr>
+    <th>SQL Type</th>
+    <th>Drill Description</th>
+    <th>Parquet Logical Type</th>
+    <th>Parquet Description</th>
+  </tr>
+  <tr>
+    <td>DATE</td>
+    <td>Years months and days in the form in the form YYYY-­MM-­DD</td>
+    <td>DATE</td>
+    <td>Date, not including time of day. Uses the int32 annotation. Stores the number of days from the Unix epoch, 1 January 1970.</td>
+  </tr>
+  <tr>
+    <td>VARCHAR</td>
+    <td>Character string variable length</td>
+    <td>UTF8 (Strings)</td>
+    <td>Annotates the binary primitive type. The byte array is interpreted as a UTF-8 encoded character string.</td>
+  </tr>
+  <tr>
+    <td>None</td>
+    <td></td>
+    <td>INT_8</td>
+    <td>8 bits, signed</td>
+  </tr>
+  <tr>
+    <td>None</td>
+    <td></td>
+    <td>INT_16</td>
+    <td>16 bits, usigned</td>
+  </tr>
+  <tr>
+    <td>INT</td>
+    <td>4-byte signed integer</td>
+    <td>INT_32</td>
+    <td>32 bits, signed</td>
+  </tr>
+  <tr>
+    <td>DOUBLE</td>
+    <td>8-byte double precision floating point number</td>
+    <td>INT_64</td>
+    <td>64 bits, signed</td>
+  </tr>
+  <tr>
+    <td>None</td>
+    <td></td>
+    <td>UINT_8</td>
+    <td>8 bits, unsigned</td>
+  </tr>
+  <tr>
+    <td>None</td>
+    <td></td>
+    <td>UINT_16</td>
+    <td>16 bits, unsigned</td>
+  </tr>
+  <tr>
+    <td>None</td>
+    <td></td>
+    <td>UINT_32</td>
+    <td>32 bits, unsigned</td>
+  </tr>
+  <tr>
+    <td>None</td>
+    <td></td>
+    <td>UINT_64</td>
+    <td>64 bits, unsigned</td>
+  </tr>
+  <tr>
+    <td>DECIMAL</td>
+    <td>38-digit precision</td>
+    <td>DECIMAL</td>
+    <td>Arbitrary-precision signed decimal numbers of the form unscaledValue * 10^(-scale)</td>
+  </tr>
+  <tr>
+    <td>TIME</td>
+    <td>Hours, minutes, seconds, milliseconds; 24-hour basis</td>
+    <td>TIME_MILLIS</td>
+    <td>Logical time, not including the date. Annotates int32. Number of milliseconds after midnight.</td>
+  </tr>
+  <tr>
+    <td>TIMESTAMP</td>
+    <td>Year, month, day, and seconds</td>
+    <td>TIMESTAMP_MILLIS</td>
+    <td>Logical date and time. Annotates an int64 that stores the number of milliseconds from the Unix epoch, 00:00:00.000 on 1 January 1970, UTC.</td>
+  </tr>
+  <tr>
+    <td>INTERVAL</td>
+    <td>Integer fields representing a period of time depending on the type of interval</td>
+    <td>INTERVAL</td>
+    <td>An interval of time. Annotates a fixed_len_byte_array of length 12. Months, days, and ms in unsigned little-endian format.</td>
+  </tr>
+</table>
+
+<h3 id="data-description-language-support">Data Description Language Support</h3>
+
+<p>Parquet supports the following data description languages:</p>
+
+<ul>
+<li>Apache Avro</li>
+<li>Apache Thrift</li>
+<li>Google Protocol Buffers </li>
+</ul>
+
+<p>Implement custom storage plugins, such as an Avro plugin, to create Parquet readers/writers for these formats. </p>
+</div>
+
+
+<div id="footer" class="mw">
+<div class="wrapper">
+Copyright © 2012-2014 The Apache Software Foundation, licensed under the Apache License, Version 2.0.<br>
+Apache and the Apache feather logo are trademarks of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.<br/><br/>
+</div>
+</div>
+
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+ga('create', 'UA-53379651-1', 'auto');
+ga('send', 'pageview');
+</script>
+
+</body>
+</html>

Modified: drill/site/trunk/content/drill/docs/persistent-configuration-storage/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/persistent-configuration-storage/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/persistent-configuration-storage/index.html (original)
+++ drill/site/trunk/content/drill/docs/persistent-configuration-storage/index.html Tue Mar 17 21:08:21 2015
@@ -77,8 +77,7 @@ depends on the Drill installation mode.<
 <p>The following table provides the persistent storage mode for each of the Drill
 modes:</p>
 
-<table ><tbody><tr><th >Mode</th><th >Description</th></tr><tr><td valign="top" >Embedded</td><td valign="top" >Drill stores persistent data in the local file system. <br />You cannot modify the PStore location for Drill in embedded mode.</td></tr><tr><td valign="top" >Distributed</td><td valign="top" >Drill stores persistent data in ZooKeeper, by default. <br />You can modify where ZooKeeper offloads data, <br />or you can change the persistent storage mode to HBase or MapR-DB.</td></tr></tbody></table>
-  
+<p><table ><tbody><tr><th >Mode</th><th >Description</th></tr><tr><td valign="top" >Embedded</td><td valign="top" >Drill stores persistent data in the local file system. <br />You cannot modify the PStore location for Drill in embedded mode.</td></tr><tr><td valign="top" >Distributed</td><td valign="top" >Drill stores persistent data in ZooKeeper, by default. <br />You can modify where ZooKeeper offloads data, <br />or you can change the persistent storage mode to HBase or MapR-DB.</td></tr></tbody></table></div></p>
 
 <p><strong>Note:</strong> Switching between storage modes does not migrate configuration data.</p>
 

Modified: drill/site/trunk/content/drill/docs/planning-and-execution-options/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/planning-and-execution-options/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/planning-and-execution-options/index.html (original)
+++ drill/site/trunk/content/drill/docs/planning-and-execution-options/index.html Tue Mar 17 21:08:21 2015
@@ -92,8 +92,7 @@ at the system or session level:</p>
 <script type="syntaxhighlighter" class="theme: Default; brush: java; gutter: false"><![CDATA[number of active drillbits (typically one per node) 
 * number of cores per node
 * 0.7]]></script>
-<p>For example, on a single-node test system with 2 cores and hyper-threading enabled:</p>
-<script type="syntaxhighlighter" class="theme: Default; brush: java; gutter: false"><![CDATA[1 * 4 * 0.7 = 3]]></script>
+<p>For example, on a single-node test system with 2 cores and hyper-threading enabled:</p><script type="syntaxhighlighter" class="theme: Default; brush: java; gutter: false"><![CDATA[1 * 4 * 0.7 = 3]]></script>
 <p>When you modify the default setting, you can supply any meaningful number. The system does not automatically scale down your setting.</p></td></tr><tr><td valign="top" colspan="1" >planner.width.max_per_query</td><td valign="top" colspan="1" >1000</td><td valign="top" colspan="1" ><p>The max_per_query value also sets the maximum degree of parallelism for any given stage of a query, but the setting applies to the query as executed by the whole cluster (multiple nodes). In effect, the actual maximum width per query is the <em>minimum of two values</em>:</p>
 <script type="syntaxhighlighter" class="theme: Default; brush: java; gutter: false"><![CDATA[min((number of nodes * width.max_per_node), width.max_per_query)]]></script>
 <p>For example, on a 4-node cluster where <span><code>width.max_per_node</code> is set to 6 and </span><span><code>width.max_per_query</code> is set to 30:</span></p>

Modified: drill/site/trunk/content/drill/docs/ports-used-by-drill/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/ports-used-by-drill/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/ports-used-by-drill/index.html (original)
+++ drill/site/trunk/content/drill/docs/ports-used-by-drill/index.html Tue Mar 17 21:08:21 2015
@@ -70,7 +70,7 @@
 <div class="int_text" align="left"><p>The following table provides a list of the ports that Drill uses, the port
 type, and a description of how Drill uses the port:</p>
 
-<table ><tbody><tr><th >Port</th><th colspan="1" >Type</th><th >Description</th></tr><tr><td valign="top" >8047</td><td valign="top" colspan="1" >TCP</td><td valign="top" >Needed for <span style="color: rgb(34,34,34);">the Drill Web UI.</span><span style="color: rgb(34,34,34);"> </span></td></tr><tr><td valign="top" >31010</td><td valign="top" colspan="1" >TCP</td><td valign="top" >User port address. Used between nodes in a Drill cluster. <br />Needed for an external client, such as Tableau, to connect into the<br />cluster nodes. Also needed for the Drill Web UI.</td></tr><tr><td valign="top" >31011</td><td valign="top" colspan="1" >TCP</td><td valign="top" >Control port address. Used between nodes in a Drill cluster. <br />Needed for multi-node installation of Apache Drill.</td></tr><tr><td valign="top" colspan="1" >31012</td><td valign="top" colspan="1" >TCP</td><td valign="top" colspan="1" >Data port address. Used between nodes in a Drill cluster. <br />Needed for multi-node ins
 tallation of Apache Drill.</td></tr><tr><td valign="top" colspan="1" >46655</td><td valign="top" colspan="1" >UDP</td><td valign="top" colspan="1" >Used for JGroups and Infinispan. Needed for multi-node installation of Apache Drill.</td></tr></tbody></table>
+<p><table ><tbody><tr><th >Port</th><th colspan="1" >Type</th><th >Description</th></tr><tr><td valign="top" >8047</td><td valign="top" colspan="1" >TCP</td><td valign="top" >Needed for <span style="color: rgb(34,34,34);">the Drill Web UI.</span><span style="color: rgb(34,34,34);"> </span></td></tr><tr><td valign="top" >31010</td><td valign="top" colspan="1" >TCP</td><td valign="top" >User port address. Used between nodes in a Drill cluster. <br />Needed for an external client, such as Tableau, to connect into the<br />cluster nodes. Also needed for the Drill Web UI.</td></tr><tr><td valign="top" >31011</td><td valign="top" colspan="1" >TCP</td><td valign="top" >Control port address. Used between nodes in a Drill cluster. <br />Needed for multi-node installation of Apache Drill.</td></tr><tr><td valign="top" colspan="1" >31012</td><td valign="top" colspan="1" >TCP</td><td valign="top" colspan="1" >Data port address. Used between nodes in a Drill cluster. <br />Needed for multi-node 
 installation of Apache Drill.</td></tr><tr><td valign="top" colspan="1" >46655</td><td valign="top" colspan="1" >UDP</td><td valign="top" colspan="1" >Used for JGroups and Infinispan. Needed for multi-node installation of Apache Drill.</td></tr></tbody></table></div></p>
 </div>
 
 

Modified: drill/site/trunk/content/drill/docs/querying-complex-data/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/querying-complex-data/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/querying-complex-data/index.html (original)
+++ drill/site/trunk/content/drill/docs/querying-complex-data/index.html Tue Mar 17 21:08:21 2015
@@ -111,7 +111,7 @@ your own queries, you need to be aware o
 
 <ul>
 <li>string (all data inside double quotes), such as <code>&quot;0001&quot;</code> or <code>&quot;Cake&quot;</code></li>
-<li>numeric types: integers, decimals, and floats, such as <code>0.55</code> or <code>10</code></li>
+<li>number: integers, decimals, and floats, such as <code>0.55</code> or <code>10</code></li>
 <li>null values</li>
 <li>boolean values: true, false</li>
 </ul>

Modified: drill/site/trunk/content/drill/docs/querying-hive/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/querying-hive/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/querying-hive/index.html (original)
+++ drill/site/trunk/content/drill/docs/querying-hive/index.html Tue Mar 17 21:08:21 2015
@@ -84,7 +84,7 @@ download the <a href="http://doc.mapr.co
 <div class="highlight"><pre><code class="language-text" data-lang="text">hive&gt; load data local inpath &#39;/&lt;directory path&gt;/customers.csv&#39; overwrite into table customers;`
 </code></pre></div></li>
 <li><p>Issue <code>quit</code> or <code>exit</code> to leave the Hive shell.</p></li>
-<li><p>Start Drill. Refer to <a href="/docs/starting-stopping-drill">Starting/Stopping Drill</a> for instructions.</p></li>
+<li><p>Start Drill. Refer to [/docs/starting-stopping-drill) for instructions.</p></li>
 <li><p>Issue the following query to Drill to get the first and last names of the first ten customers in the Hive table:  </p>
 <div class="highlight"><pre><code class="language-text" data-lang="text">0: jdbc:drill:schema=hiveremote&gt; SELECT firstname,lastname FROM hiveremote.`customers` limit 10;`
 </code></pre></div>

Modified: drill/site/trunk/content/drill/docs/reserved-keywords/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/reserved-keywords/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/reserved-keywords/index.html (original)
+++ drill/site/trunk/content/drill/docs/reserved-keywords/index.html Tue Mar 17 21:08:21 2015
@@ -77,7 +77,7 @@ keyword:</p>
 <p>The following table provides the Drill reserved keywords that require back
 ticks:</p>
 
-<table ><tbody><tr><td valign="top" ><h1 id="ReservedKeywords-A">A</h1><p>ABS<br />ALL<br />ALLOCATE<br />ALLOW<br />ALTER<br />AND<br />ANY<br />ARE<br />ARRAY<br />AS<br />ASENSITIVE<br />ASYMMETRIC<br />AT<br />ATOMIC<br />AUTHORIZATION<br />AVG</p><h1 id="ReservedKeywords-B">B</h1><p>BEGIN<br />BETWEEN<br />BIGINT<br />BINARY<br />BIT<br />BLOB<br />BOOLEAN<br />BOTH<br />BY</p><h1 id="ReservedKeywords-C">C</h1><p>CALL<br />CALLED<br />CARDINALITY<br />CASCADED<br />CASE<br />CAST<br />CEIL<br />CEILING<br />CHAR<br />CHARACTER<br />CHARACTER_LENGTH<br />CHAR_LENGTH<br />CHECK<br />CLOB<br />CLOSE<br />COALESCE<br />COLLATE<br />COLLECT<br />COLUMN<br />COMMIT<br />CONDITION<br />CONNECT<br />CONSTRAINT<br />CONVERT<br />CORR<br />CORRESPONDING<br />COUNT<br />COVAR_POP<br />COVAR_SAMP<br />CREATE<br />CROSS<br />CUBE<br />CUME_DIST<br />CURRENT<br />CURRENT_CATALOG<br />CURRENT_DATE<br />CURRENT_DEFAULT_TRANSFORM_GROUP<br />CURRENT_PATH<br />CURRENT_ROLE<br />CURRENT_SCHEMA<br 
 />CURRENT_TIME<br />CURRENT_TIMESTAMP<br />CURRENT_TRANSFORM_GROUP_FOR_TYPE<br />CURRENT_USER<br />CURSOR<br />CYCLE</p></td><td valign="top" ><h1 id="ReservedKeywords-D">D</h1><p>DATABASES<br />DATE<br />DAY<br />DEALLOCATE<br />DEC<br />DECIMAL<br />DECLARE<br />DEFAULT<br />DEFAULT_KW<br />DELETE<br />DENSE_RANK<br />DEREF<br />DESCRIBE<br />DETERMINISTIC<br />DISALLOW<br />DISCONNECT<br />DISTINCT<br />DOUBLE<br />DROP<br />DYNAMIC</p><h1 id="ReservedKeywords-E">E</h1><p>EACH<br />ELEMENT<br />ELSE<br />END<br />END_EXEC<br />ESCAPE<br />EVERY<br />EXCEPT<br />EXEC<br />EXECUTE<br />EXISTS<br />EXP<br />EXPLAIN<br />EXTERNAL<br />EXTRACT</p><h1 id="ReservedKeywords-F">F</h1><p>FALSE<br />FETCH<br />FILES<br />FILTER<br />FIRST_VALUE<br />FLOAT<br />FLOOR<br />FOR<br />FOREIGN<br />FREE<br />FROM<br />FULL<br />FUNCTION<br />FUSION</p><h1 id="ReservedKeywords-G">G</h1><p>GET<br />GLOBAL<br />GRANT<br />GROUP<br />GROUPING</p><h1 id="ReservedKeywords-H">H</h1><p>HAVING<br />HOLD<b
 r />HOUR</p></td><td valign="top" ><h1 id="ReservedKeywords-I">I</h1><p>IDENTITY<br />IMPORT<br />IN<br />INDICATOR<br />INNER<br />INOUT<br />INSENSITIVE<br />INSERT<br />INT<br />INTEGER<br />INTERSECT<br />INTERSECTION<br />INTERVAL<br />INTO<br />IS</p><h1 id="ReservedKeywords-J">J</h1><p>JOIN</p><h1 id="ReservedKeywords-L">L</h1><p>LANGUAGE<br />LARGE<br />LAST_VALUE<br />LATERAL<br />LEADING<br />LEFT<br />LIKE<br />LIMIT<br />LN<br />LOCAL<br />LOCALTIME<br />LOCALTIMESTAMP<br />LOWER</p><h1 id="ReservedKeywords-M">M</h1><p>MATCH<br />MAX<br />MEMBER<br />MERGE<br />METHOD<br />MIN<br />MINUTE<br />MOD<br />MODIFIES<br />MODULE<br />MONTH<br />MULTISET</p><h1 id="ReservedKeywords-N">N</h1><p>NATIONAL<br />NATURAL<br />NCHAR<br />NCLOB<br />NEW<br />NO<br />NONE<br />NORMALIZE<br />NOT<br />NULL<br />NULLIF<br />NUMERIC</p><h1 id="ReservedKeywords-O">O</h1><p>OCTET_LENGTH<br />OF<br />OFFSET<br />OLD<br />ON<br />ONLY<br />OPEN<br />OR<br />ORDER<br />OUT<br />OUTER<br />OVER<
 br />OVERLAPS<br />OVERLAY</p></td><td valign="top" colspan="1" ><h1 id="ReservedKeywords-P">P</h1><p>PARAMETER<br />PARTITION<br />PERCENTILE_CONT<br />PERCENTILE_DISC<br />PERCENT_RANK<br />POSITION<br />POWER<br />PRECISION<br />PREPARE<br />PRIMARY<br />PROCEDURE</p><h1 id="ReservedKeywords-R">R</h1><p>RANGE<br />RANK<br />READS<br />REAL<br />RECURSIVE<br />REF<br />REFERENCES<br />REFERENCING<br />REGR_AVGX<br />REGR_AVGY<br />REGR_COUNT<br />REGR_INTERCEPT<br />REGR_R2<br />REGR_SLOPE<br />REGR_SXX<br />REGR_SXY<br />RELEASE<br />REPLACE<br />RESULT<br />RETURN<br />RETURNS<br />REVOKE<br />RIGHT<br />ROLLBACK<br />ROLLUP<br />ROW<br />ROWS<br />ROW_NUMBER</p><h1 id="ReservedKeywords-S">S</h1><p>SAVEPOINT<br />SCHEMAS<br />SCOPE<br />SCROLL<br />SEARCH<br />SECOND<br />SELECT<br />SENSITIVE<br />SESSION_USER<br />SET<br />SHOW<br />SIMILAR<br />SMALLINT<br />SOME<br />SPECIFIC<br />SPECIFICTYPE<br />SQL<br />SQLEXCEPTION<br />SQLSTATE<br />SQLWARNING<br />SQRT<br />START<br /
 >STATIC<br />STDDEV_POP<br />STDDEV_SAMP<br />SUBMULTISET<br />SUBSTRING<br />SUM<br />SYMMETRIC<br />SYSTEM<br />SYSTEM_USER</p></td><td valign="top" colspan="1" ><h1 id="ReservedKeywords-T">T</h1><p>TABLE<br />TABLES<br />TABLESAMPLE<br />THEN<br />TIME<br />TIMESTAMP<br />TIMEZONE_HOUR<br />TIMEZONE_MINUTE<br />TINYINT<br />TO<br />TRAILING<br />TRANSLATE<br />TRANSLATION<br />TREAT<br />TRIGGER<br />TRIM<br />TRUE</p><h1 id="ReservedKeywords-U">U</h1><p>UESCAPE<br />UNION<br />UNIQUE<br />UNKNOWN<br />UNNEST<br />UPDATE<br />UPPER<br />USE<br />USER<br />USING</p><h1 id="ReservedKeywords-V">V</h1><p>VALUE<br />VALUES<br />VARBINARY<br />VARCHAR<br />VARYING<br />VAR_POP<br />VAR_SAMP</p><h1 id="ReservedKeywords-W">W</h1><p>WHEN<br />WHENEVER<br />WHERE<br />WIDTH_BUCKET<br />WINDOW<br />WITH<br />WITHIN<br />WITHOUT</p><h1 id="ReservedKeywords-Y">Y</h1><p>YEAR</p></td></tr></tbody></table>
+<p><table ><tbody><tr><td valign="top" ><h1 id="ReservedKeywords-A">A</h1><p>ABS<br />ALL<br />ALLOCATE<br />ALLOW<br />ALTER<br />AND<br />ANY<br />ARE<br />ARRAY<br />AS<br />ASENSITIVE<br />ASYMMETRIC<br />AT<br />ATOMIC<br />AUTHORIZATION<br />AVG</p><h1 id="ReservedKeywords-B">B</h1><p>BEGIN<br />BETWEEN<br />BIGINT<br />BINARY<br />BIT<br />BLOB<br />BOOLEAN<br />BOTH<br />BY</p><h1 id="ReservedKeywords-C">C</h1><p>CALL<br />CALLED<br />CARDINALITY<br />CASCADED<br />CASE<br />CAST<br />CEIL<br />CEILING<br />CHAR<br />CHARACTER<br />CHARACTER_LENGTH<br />CHAR_LENGTH<br />CHECK<br />CLOB<br />CLOSE<br />COALESCE<br />COLLATE<br />COLLECT<br />COLUMN<br />COMMIT<br />CONDITION<br />CONNECT<br />CONSTRAINT<br />CONVERT<br />CORR<br />CORRESPONDING<br />COUNT<br />COVAR_POP<br />COVAR_SAMP<br />CREATE<br />CROSS<br />CUBE<br />CUME_DIST<br />CURRENT<br />CURRENT_CATALOG<br />CURRENT_DATE<br />CURRENT_DEFAULT_TRANSFORM_GROUP<br />CURRENT_PATH<br />CURRENT_ROLE<br />CURRENT_SCHEMA<
 br />CURRENT_TIME<br />CURRENT_TIMESTAMP<br />CURRENT_TRANSFORM_GROUP_FOR_TYPE<br />CURRENT_USER<br />CURSOR<br />CYCLE</p></td><td valign="top" ><h1 id="ReservedKeywords-D">D</h1><p>DATABASES<br />DATE<br />DAY<br />DEALLOCATE<br />DEC<br />DECIMAL<br />DECLARE<br />DEFAULT<br />DEFAULT_KW<br />DELETE<br />DENSE_RANK<br />DEREF<br />DESCRIBE<br />DETERMINISTIC<br />DISALLOW<br />DISCONNECT<br />DISTINCT<br />DOUBLE<br />DROP<br />DYNAMIC</p><h1 id="ReservedKeywords-E">E</h1><p>EACH<br />ELEMENT<br />ELSE<br />END<br />END_EXEC<br />ESCAPE<br />EVERY<br />EXCEPT<br />EXEC<br />EXECUTE<br />EXISTS<br />EXP<br />EXPLAIN<br />EXTERNAL<br />EXTRACT</p><h1 id="ReservedKeywords-F">F</h1><p>FALSE<br />FETCH<br />FILES<br />FILTER<br />FIRST_VALUE<br />FLOAT<br />FLOOR<br />FOR<br />FOREIGN<br />FREE<br />FROM<br />FULL<br />FUNCTION<br />FUSION</p><h1 id="ReservedKeywords-G">G</h1><p>GET<br />GLOBAL<br />GRANT<br />GROUP<br />GROUPING</p><h1 id="ReservedKeywords-H">H</h1><p>HAVING<br />HOL
 D<br />HOUR</p></td><td valign="top" ><h1 id="ReservedKeywords-I">I</h1><p>IDENTITY<br />IMPORT<br />IN<br />INDICATOR<br />INNER<br />INOUT<br />INSENSITIVE<br />INSERT<br />INT<br />INTEGER<br />INTERSECT<br />INTERSECTION<br />INTERVAL<br />INTO<br />IS</p><h1 id="ReservedKeywords-J">J</h1><p>JOIN</p><h1 id="ReservedKeywords-L">L</h1><p>LANGUAGE<br />LARGE<br />LAST_VALUE<br />LATERAL<br />LEADING<br />LEFT<br />LIKE<br />LIMIT<br />LN<br />LOCAL<br />LOCALTIME<br />LOCALTIMESTAMP<br />LOWER</p><h1 id="ReservedKeywords-M">M</h1><p>MATCH<br />MAX<br />MEMBER<br />MERGE<br />METHOD<br />MIN<br />MINUTE<br />MOD<br />MODIFIES<br />MODULE<br />MONTH<br />MULTISET</p><h1 id="ReservedKeywords-N">N</h1><p>NATIONAL<br />NATURAL<br />NCHAR<br />NCLOB<br />NEW<br />NO<br />NONE<br />NORMALIZE<br />NOT<br />NULL<br />NULLIF<br />NUMERIC</p><h1 id="ReservedKeywords-O">O</h1><p>OCTET_LENGTH<br />OF<br />OFFSET<br />OLD<br />ON<br />ONLY<br />OPEN<br />OR<br />ORDER<br />OUT<br />OUTER<br />OV
 ER<br />OVERLAPS<br />OVERLAY</p></td><td valign="top" colspan="1" ><h1 id="ReservedKeywords-P">P</h1><p>PARAMETER<br />PARTITION<br />PERCENTILE_CONT<br />PERCENTILE_DISC<br />PERCENT_RANK<br />POSITION<br />POWER<br />PRECISION<br />PREPARE<br />PRIMARY<br />PROCEDURE</p><h1 id="ReservedKeywords-R">R</h1><p>RANGE<br />RANK<br />READS<br />REAL<br />RECURSIVE<br />REF<br />REFERENCES<br />REFERENCING<br />REGR_AVGX<br />REGR_AVGY<br />REGR_COUNT<br />REGR_INTERCEPT<br />REGR_R2<br />REGR_SLOPE<br />REGR_SXX<br />REGR_SXY<br />RELEASE<br />REPLACE<br />RESULT<br />RETURN<br />RETURNS<br />REVOKE<br />RIGHT<br />ROLLBACK<br />ROLLUP<br />ROW<br />ROWS<br />ROW_NUMBER</p><h1 id="ReservedKeywords-S">S</h1><p>SAVEPOINT<br />SCHEMAS<br />SCOPE<br />SCROLL<br />SEARCH<br />SECOND<br />SELECT<br />SENSITIVE<br />SESSION_USER<br />SET<br />SHOW<br />SIMILAR<br />SMALLINT<br />SOME<br />SPECIFIC<br />SPECIFICTYPE<br />SQL<br />SQLEXCEPTION<br />SQLSTATE<br />SQLWARNING<br />SQRT<br />START<b
 r />STATIC<br />STDDEV_POP<br />STDDEV_SAMP<br />SUBMULTISET<br />SUBSTRING<br />SUM<br />SYMMETRIC<br />SYSTEM<br />SYSTEM_USER</p></td><td valign="top" colspan="1" ><h1 id="ReservedKeywords-T">T</h1><p>TABLE<br />TABLES<br />TABLESAMPLE<br />THEN<br />TIME<br />TIMESTAMP<br />TIMEZONE_HOUR<br />TIMEZONE_MINUTE<br />TINYINT<br />TO<br />TRAILING<br />TRANSLATE<br />TRANSLATION<br />TREAT<br />TRIGGER<br />TRIM<br />TRUE</p><h1 id="ReservedKeywords-U">U</h1><p>UESCAPE<br />UNION<br />UNIQUE<br />UNKNOWN<br />UNNEST<br />UPDATE<br />UPPER<br />USE<br />USER<br />USING</p><h1 id="ReservedKeywords-V">V</h1><p>VALUE<br />VALUES<br />VARBINARY<br />VARCHAR<br />VARYING<br />VAR_POP<br />VAR_SAMP</p><h1 id="ReservedKeywords-W">W</h1><p>WHEN<br />WHENEVER<br />WHERE<br />WIDTH_BUCKET<br />WINDOW<br />WITH<br />WITHIN<br />WITHOUT</p><h1 id="ReservedKeywords-Y">Y</h1><p>YEAR</p></td></tr></tbody></table></div></p>
 </div>
 
 

Modified: drill/site/trunk/content/drill/docs/sql-commands-summary/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/sql-commands-summary/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/sql-commands-summary/index.html (original)
+++ drill/site/trunk/content/drill/docs/sql-commands-summary/index.html Tue Mar 17 21:08:21 2015
@@ -70,8 +70,7 @@
 <div class="int_text" align="left"><p>The following table provides a list of the SQL commands that Drill supports,
 with their descriptions and example syntax:</p>
 
-<table ><tbody><tr><th >Command</th><th >Description</th><th >Syntax</th></tr><tr><td valign="top" >ALTER SESSION</td><td valign="top" >Changes a system setting for the duration of a session. A session ends when you quit the Drill shell. For a list of Drill options and their descriptions, refer to <a href="/docs/planning-and-execution-options" rel="nofollow">Planning and Execution Options</a>.</td><td valign="top" ><code>ALTER SESSION SET `option_name`='string';<br />ALTER SESSION SET `option_name`=TRUE | FALSE;</code></td></tr><tr><td valign="top" >ALTER SYSTEM</td><td valign="top" >Permanently changes a system setting. The new settings persist across all sessions. For a list of Drill options and their descriptions, refer to <a href="/docs/planning-and-execution-options/" rel="nofollow">Planning and Execution Options</a>.</td><td valign="top" ><code>ALTER SYSTEM `option_name`='string'<br />ALTER SYSTEM `option_name`=TRUE | FALSE;</code></td></tr><tr><td valign="top" ><a href="/docs
 /create-table-as-ctas-command">CREATE TABLE AS<br />(CTAS)</a></p></td><td valign="top" >Creates a new table and populates the new table with rows returned from a SELECT query. Use the CREATE TABLE AS (CTAS) statement in place of INSERT INTO. When you issue the CTAS command, you create a directory that contains parquet or CSV files. Each workspace in a file system has a default file type.<p>You can specify which writer you want Drill to use when creating a table: parquet, CSV, or JSON (as specified with <span style="line-height: 1.4285715;">the </span><code>store.format</code><span style="line-height: 1.4285715;"> option<span><span>).</span></span></span></p></td><td valign="top" ><code>CREATE TABLE new_table_name AS &lt;query&gt;;</code></td></tr><tr><td valign="top" colspan="1" >CREATE VIEW</td><td valign="top" colspan="1" >Creates a new view based on the results of a SELECT query.</td><td valign="top" colspan="1" ><code>CREATE VIEW view_name [(column_list)] AS &lt;query&gt;;</cod
 e></td></tr><tr><td valign="top" colspan="1" >DROP VIEW</td><td valign="top" colspan="1" >Removes one or more views.</td><td valign="top" colspan="1" ><code>DROP VIEW view_name [, <em class="replaceable">view_name</em>] ...;     </code></td></tr><tr><td valign="top" colspan="1" ><a href="/docs/explain-commands" rel="nofollow">EXPLAIN PLAN FOR</a></td><td valign="top" colspan="1" >Returns the physical plan for a particular query.</td><td valign="top" colspan="1" ><code>EXPLAIN PLAN FOR &lt;query&gt;;</code></td></tr><tr><td valign="top" colspan="1" ><a href="/docs/explain-commands/" rel="nofollow">EXPLAIN PLAN WITHOUT IMPLEMENTATION FOR</a></td><td valign="top" colspan="1" >Returns the logical plan for a particular query.</td><td valign="top" colspan="1" ><code>EXPLAIN PLAN WITHOUT IMPLEMENTATION FOR &lt;query&gt;;</code></td></tr><tr><td valign="top" colspan="1" ><a href="/docs/select-statements" rel="nofollow">SELECT</a></td><td valign="top" colspan="1" >Retrieves data from tables 
 and files.</td><td valign="top" colspan="1" ><code>[WITH subquery]<br />SELECT column_list FROM table_name <br />[WHERE clause]<br />[GROUP BY clause]<br />[HAVING clause]<br />[ORDER BY clause];</code></td></tr><tr><td valign="top" colspan="1" >SHOW DATABASES</td><td valign="top" colspan="1" >Returns a list of available schemas. Equivalent to SHOW SCHEMAS.</td><td valign="top" colspan="1" ><code>SHOW DATABASES;</code></td></tr><tr><td valign="top" colspan="1" ><a href="/docs/show-files-command/" rel="nofollow">SHOW FILES</a></td><td valign="top" colspan="1" >Returns a list of files in a file system schema.</td><td valign="top" colspan="1" ><code>SHOW FILES IN filesystem.`schema_name`;<br />SHOW FILES FROM filesystem.`schema_name`;</code></td></tr><tr><td valign="top" colspan="1" >SHOW SCHEMAS</td><td valign="top" colspan="1" >Returns a list of available schemas. Equivalent to SHOW DATABASES.</td><td valign="top" colspan="1" ><code>SHOW SCHEMAS;</code></td></tr><tr><td valign="top" 
 colspan="1" >SHOW TABLES</td><td valign="top" colspan="1" >Returns a list of tables for all schemas. Optionally, you can first issue the <code>USE </code>command to identify the schema for which you want to view tables.<br />For example, the following <code>USE</code> statement tells Drill that you only want information from the <code>hive.default</code> schema:<br /><code>USE hive.`default`;</code></td><td valign="top" colspan="1" ><code>SHOW TABLES;</code></td></tr><tr><td valign="top" colspan="1" >USE</td><td valign="top" colspan="1" >Change to a particular schema. When you opt to use a particular schema, Drill issues queries on that schema only.</td><td valign="top" colspan="1" ><code>USE schema_name;</code></td></tr></tbody></table> 
-  
+<p><table ><tbody><tr><th >Command</th><th >Description</th><th >Syntax</th></tr><tr><td valign="top" >ALTER SESSION</td><td valign="top" >Changes a system setting for the duration of a session. A session ends when you quit the Drill shell. For a list of Drill options and their descriptions, refer to <a href="/docs/planning-and-execution-options" rel="nofollow">Planning and Execution Options</a>.</td><td valign="top" ><code>ALTER SESSION SET <code>option_name</code>=&#39;string&#39;;<br />ALTER SESSION SET <code>option_name</code>=TRUE | FALSE;</code></td></tr><tr><td valign="top" >ALTER SYSTEM</td><td valign="top" >Permanently changes a system setting. The new settings persist across all sessions. For a list of Drill options and their descriptions, refer to <a href="/docs/planning-and-execution-options/" rel="nofollow">Planning and Execution Options</a>.</td><td valign="top" ><code>ALTER SYSTEM <code>option_name</code>=&#39;string&#39;<br />ALTER SYSTEM <code>option_name</code>=TRU
 E | FALSE;</code></td></tr><tr><td valign="top" ><a href="/docs/create-table-as-ctas-command">CREATE TABLE AS<br />(CTAS)</a></p></td><td valign="top" >Creates a new table and populates the new table with rows returned from a SELECT query. Use the CREATE TABLE AS (CTAS) statement in place of INSERT INTO. When you issue the CTAS command, you create a directory that contains parquet or CSV files. Each workspace in a file system has a default file type.<p>You can specify which writer you want Drill to use when creating a table: parquet, CSV, or JSON (as specified with <span style="line-height: 1.4285715;">the </span><code>store.format</code><span style="line-height: 1.4285715;"> option<span><span>).</span></span></span></p></td><td valign="top" ><code>CREATE TABLE new_table_name AS &lt;query&gt;;</code></td></tr><tr><td valign="top" colspan="1" >CREATE VIEW</td><td valign="top" colspan="1" >Creates a new view based on the results of a SELECT query.</td><td valign="top" colspan="1" ><co
 de>CREATE VIEW view_name [(column_list)] AS &lt;query&gt;;</code></td></tr><tr><td valign="top" colspan="1" >DROP VIEW</td><td valign="top" colspan="1" >Removes one or more views.</td><td valign="top" colspan="1" ><code>DROP VIEW view_name [, <em class="replaceable">view_name</em>] ...;     </code></td></tr><tr><td valign="top" colspan="1" ><a href="/docs/explain-commands" rel="nofollow">EXPLAIN PLAN FOR</a></td><td valign="top" colspan="1" >Returns the physical plan for a particular query.</td><td valign="top" colspan="1" ><code>EXPLAIN PLAN FOR &lt;query&gt;;</code></td></tr><tr><td valign="top" colspan="1" ><a href="/docs/explain-commands/" rel="nofollow">EXPLAIN PLAN WITHOUT IMPLEMENTATION FOR</a></td><td valign="top" colspan="1" >Returns the logical plan for a particular query.</td><td valign="top" colspan="1" ><code>EXPLAIN PLAN WITHOUT IMPLEMENTATION FOR &lt;query&gt;;</code></td></tr><tr><td valign="top" colspan="1" ><a href="/docs/select-statements" rel="nofollow">SELECT</a
 ></td><td valign="top" colspan="1" >Retrieves data from tables and files.</td><td valign="top" colspan="1" ><code>[WITH subquery]<br />SELECT column_list FROM table_name <br />[WHERE clause]<br />[GROUP BY clause]<br />[HAVING clause]<br />[ORDER BY clause];</code></td></tr><tr><td valign="top" colspan="1" >SHOW DATABASES</td><td valign="top" colspan="1" >Returns a list of available schemas. Equivalent to SHOW SCHEMAS.</td><td valign="top" colspan="1" ><code>SHOW DATABASES;</code></td></tr><tr><td valign="top" colspan="1" ><a href="/docs/show-files-command/" rel="nofollow">SHOW FILES</a></td><td valign="top" colspan="1" >Returns a list of files in a file system schema.</td><td valign="top" colspan="1" ><code>SHOW FILES IN filesystem.<code>schema_name</code>;<br />SHOW FILES FROM filesystem.<code>schema_name</code>;</code></td></tr><tr><td valign="top" colspan="1" >SHOW SCHEMAS</td><td valign="top" colspan="1" >Returns a list of available schemas. Equivalent to SHOW DATABASES.</td><t
 d valign="top" colspan="1" ><code>SHOW SCHEMAS;</code></td></tr><tr><td valign="top" colspan="1" >SHOW TABLES</td><td valign="top" colspan="1" >Returns a list of tables for all schemas. Optionally, you can first issue the <code>USE </code>command to identify the schema for which you want to view tables.<br />For example, the following <code>USE</code> statement tells Drill that you only want information from the <code>hive.default</code> schema:<br /><code>USE hive.<code>default</code>;</code></td><td valign="top" colspan="1" ><code>SHOW TABLES;</code></td></tr><tr><td valign="top" colspan="1" >USE</td><td valign="top" colspan="1" >Change to a particular schema. When you opt to use a particular schema, Drill issues queries on that schema only.</td><td valign="top" colspan="1" ><code>USE schema_name;</code></td></tr></tbody></table></div>  </p>
 </div>
 
 

Modified: drill/site/trunk/content/drill/docs/sql-functions/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/sql-functions/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/sql-functions/index.html (original)
+++ drill/site/trunk/content/drill/docs/sql-functions/index.html Tue Mar 17 21:08:21 2015
@@ -70,16 +70,17 @@
 <div class="int_text" align="left"><p>You can use the following types of functions in your Drill queries:</p>
 
 <ul>
-<li>Scalar Functions</li>
+<li>Math Functions</li>
+<li>String Functions</li>
+<li>Date/Time Functions</li>
+<li>Data Type Formatting Functions</li>
 <li>Aggregate Functions</li>
 <li>Aggregate Statistics Functions</li>
-<li>Convert Functions</li>
+<li>Convert and Cast Functions</li>
 <li>Nested Data Functions</li>
 </ul>
 
-<h2 id="scalar-functions">Scalar Functions</h2>
-
-<h3 id="math">Math</h3>
+<h2 id="math">Math</h2>
 
 <p>You can use the following scalar math functions in your Drill queries:</p>
 
@@ -98,7 +99,7 @@
 <li>TRUNC</li>
 </ul>
 
-<h3 id="string-functions">String Functions</h3>
+<h2 id="string-functions">String Functions</h2>
 
 <p>The following table provides the string functions that you can use in your
 Drill queries:</p>
@@ -118,12 +119,12 @@ Drill queries:</p>
 <td>text</td>
 </tr>
 <tr>
-<td>convert_from(string bytea, src_encoding name)</td>
+<td>convert_from(string text, src_encoding name)</td>
 <td>text</td>
 </tr>
 <tr>
 <td>convert_to(string text, dest_encoding name)</td>
-<td>bytea</td>
+<td>byte array</td>
 </tr>
 <tr>
 <td>initcap(string)</td>
@@ -199,7 +200,7 @@ Drill queries:</p>
 </tr>
 </tbody></table>
 
-<h3 id="date/time-functions">Date/Time Functions</h3>
+<h2 id="date/time-functions">Date/Time Functions</h2>
 
 <p>The following table provides the date/time functions that you can use in your
 Drill queries:</p>
@@ -264,7 +265,7 @@ Drill queries:</p>
 </tr>
 </tbody></table>
 
-<h3 id="data-type-formatting-functions">Data Type Formatting Functions</h3>
+<h2 id="data-type-formatting-functions">Data Type Formatting Functions</h2>
 
 <p>The following table provides the data type formatting functions that you can
 use in your Drill queries:</p>
@@ -396,7 +397,7 @@ Drill queries:</p>
 </tr>
 </tbody></table>
 
-<h2 id="convert-functions">Convert Functions</h2>
+<h2 id="convert-and-cast-functions">Convert and Cast Functions</h2>
 
 <p>You can use the CONVERT_TO and CONVERT_FROM functions to encode and decode
 data when you query your data sources with Drill. For example, HBase stores

Modified: drill/site/trunk/content/drill/docs/sql-reference/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/sql-reference/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/sql-reference/index.html (original)
+++ drill/site/trunk/content/drill/docs/sql-reference/index.html Tue Mar 17 21:08:21 2015
@@ -71,11 +71,11 @@
 HBase, and distributed file system data sources. Drill can discover the form
 of the data when you submit a query. You can query text files and nested data
 formats, such as JSON and Parquet. Drill provides special operators and
-functions that you can use to _drill down _into nested data formats.</p>
+functions that you can use to drill down into nested data formats.</p>
 
 <p>Drill queries do not require information about the data that you are trying to
 access, regardless of its source system or its schema and data types. The
-sweet spot for Apache Drill is a SQL query workload against &quot;complex data&quot;:
+sweet spot for Apache Drill is a SQL query workload against <em>complex data</em>:
 data made up of various types of records and fields, rather than data in a
 recognizable relational form (discrete rows and columns).</p>
 </div>

Modified: drill/site/trunk/content/drill/docs/start-up-options/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/start-up-options/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/start-up-options/index.html (original)
+++ drill/site/trunk/content/drill/docs/start-up-options/index.html Tue Mar 17 21:08:21 2015
@@ -109,7 +109,7 @@ override.conf</code> file located in Dri
 <p>You may want to configure the following start-up options that control certain
 behaviors in Drill:</p>
 
-<table ><tbody><tr><th >Option</th><th >Default Value</th><th >Description</th></tr><tr><td valign="top" >drill.exec.sys.store.provider</td><td valign="top" >ZooKeeper</td><td valign="top" >Defines the persistent storage (PStore) provider. The PStore holds configuration and profile data. For more information about PStores, see <a href="/docs/persistent-configuration-storage" rel="nofollow">Persistent Configuration Storage</a>.</td></tr><tr><td valign="top" >drill.exec.buffer.size</td><td valign="top" > </td><td valign="top" >Defines the amount of memory available, in terms of record batches, to hold data on the downstream side of an operation. Drill pushes data downstream as quickly as possible to make data immediately available. This requires Drill to use memory to hold the data pending operations. When data on a downstream operation is required, that data is immediately available so Drill does not have to go over the network to process it. Providing more memory to this option incr
 eases the speed at which Drill completes a query.</td></tr><tr><td valign="top" >drill.exec.sort.external.directoriesdrill.exec.sort.external.fs</td><td valign="top" > </td><td valign="top" >These options control spooling. The drill.exec.sort.external.directories option tells Drill which directory to use when spooling. The drill.exec.sort.external.fs option tells Drill which file system to use when spooling beyond memory files. <span style="line-height: 1.4285715;background-color: transparent;"> </span>Drill uses a spool and sort operation for beyond memory operations. The sorting operation is designed to spool to a Hadoop file system. The default Hadoop file system is a local file system in the /tmp directory. Spooling performance (both writing and reading back from it) is constrained by the file system. <span style="line-height: 1.4285715;background-color: transparent;"> </span>For MapR clusters, use MapReduce volumes or set up local volumes to use for spooling purposes. Volumes i
 mprove performance and stripe data across as many disks as possible.</td></tr><tr><td valign="top" colspan="1" >drill.exec.debug.error_on_leak</td><td valign="top" colspan="1" >True</td><td valign="top" colspan="1" >Determines how Drill behaves when memory leaks occur during a query. By default, this option is enabled so that queries fail when memory leaks occur. If you disable the option, Drill issues a warning when a memory leak occurs and completes the query.</td></tr><tr><td valign="top" colspan="1" >drill.exec.zk.connect</td><td valign="top" colspan="1" >localhost:2181</td><td valign="top" colspan="1" >Provides Drill with the ZooKeeper quorum to use to connect to data sources. Change this setting to point to the ZooKeeper quorum that you want Drill to use. You must configure this option on each Drillbit node.</td></tr><tr><td valign="top" colspan="1" >drill.exec.cluster-id</td><td valign="top" colspan="1" >my_drillbit_cluster</td><td valign="top" colspan="1" >Identifies the clu
 ster that corresponds with the ZooKeeper quorum indicated. It also provides Drill with the name of the cluster used during UDP multicast. You must change the default cluster-id if there are multiple clusters on the same subnet. If you do not change the ID, the clusters will try to connect to each other to create one cluster.</td></tr></tbody></table>
+<p><table ><tbody><tr><th >Option</th><th >Default Value</th><th >Description</th></tr><tr><td valign="top" >drill.exec.sys.store.provider</td><td valign="top" >ZooKeeper</td><td valign="top" >Defines the persistent storage (PStore) provider. The PStore holds configuration and profile data. For more information about PStores, see <a href="/docs/persistent-configuration-storage" rel="nofollow">Persistent Configuration Storage</a>.</td></tr><tr><td valign="top" >drill.exec.buffer.size</td><td valign="top" > </td><td valign="top" >Defines the amount of memory available, in terms of record batches, to hold data on the downstream side of an operation. Drill pushes data downstream as quickly as possible to make data immediately available. This requires Drill to use memory to hold the data pending operations. When data on a downstream operation is required, that data is immediately available so Drill does not have to go over the network to process it. Providing more memory to this option i
 ncreases the speed at which Drill completes a query.</td></tr><tr><td valign="top" >drill.exec.sort.external.directoriesdrill.exec.sort.external.fs</td><td valign="top" > </td><td valign="top" >These options control spooling. The drill.exec.sort.external.directories option tells Drill which directory to use when spooling. The drill.exec.sort.external.fs option tells Drill which file system to use when spooling beyond memory files. <span style="line-height: 1.4285715;background-color: transparent;"> </span>Drill uses a spool and sort operation for beyond memory operations. The sorting operation is designed to spool to a Hadoop file system. The default Hadoop file system is a local file system in the /tmp directory. Spooling performance (both writing and reading back from it) is constrained by the file system. <span style="line-height: 1.4285715;background-color: transparent;"> </span>For MapR clusters, use MapReduce volumes or set up local volumes to use for spooling purposes. Volume
 s improve performance and stripe data across as many disks as possible.</td></tr><tr><td valign="top" colspan="1" >drill.exec.debug.error_on_leak</td><td valign="top" colspan="1" >True</td><td valign="top" colspan="1" >Determines how Drill behaves when memory leaks occur during a query. By default, this option is enabled so that queries fail when memory leaks occur. If you disable the option, Drill issues a warning when a memory leak occurs and completes the query.</td></tr><tr><td valign="top" colspan="1" >drill.exec.zk.connect</td><td valign="top" colspan="1" >localhost:2181</td><td valign="top" colspan="1" >Provides Drill with the ZooKeeper quorum to use to connect to data sources. Change this setting to point to the ZooKeeper quorum that you want Drill to use. You must configure this option on each Drillbit node.</td></tr><tr><td valign="top" colspan="1" >drill.exec.cluster-id</td><td valign="top" colspan="1" >my_drillbit_cluster</td><td valign="top" colspan="1" >Identifies the 
 cluster that corresponds with the ZooKeeper quorum indicated. It also provides Drill with the name of the cluster used during UDP multicast. You must change the default cluster-id if there are multiple clusters on the same subnet. If you do not change the ID, the clusters will try to connect to each other to create one cluster.</td></tr></tbody></table></div></p>
 </div>
 
 

Modified: drill/site/trunk/content/drill/docs/starting-stopping-drill/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/starting-stopping-drill/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/starting-stopping-drill/index.html (original)
+++ drill/site/trunk/content/drill/docs/starting-stopping-drill/index.html Tue Mar 17 21:08:21 2015
@@ -93,8 +93,7 @@ can indicate the schema name when you in
 <p>To start SQLLine, issue the appropriate command for your Drill installation
 type:</p>
 
-<table ><tbody><tr><td valign="top"><strong>Drill Install Type</strong></td><td valign="top"><strong>Example</strong></td><td valign="top"><strong>Command</strong></td></tr><tr><td valign="top">Embedded</td><td valign="top">Drill installed locally (embedded mode);Hive with embedded metastore</td><td valign="top">To connect without specifying a schema, navigate to the Drill installation directory and issue the following command:<code>$ bin/sqlline -u jdbc:drill:zk=local -n admin -p admin </code><span> </span>Once you are in the prompt, you can issue<code> USE &lt;schema&gt; </code>or you can use absolute notation: <code>schema.table.column.</code>To connect to a schema directly, issue the command with the schema name:<code>$ bin/sqlline -u jdbc:drill:schema=&lt;database&gt;;zk=local -n admin -p admin</code></td></tr><tr><td valign="top">Distributed</td><td valign="top">Drill installed in distributed mode;Hive with remote metastore;HBase</td><td valign="top">To connect without specify
 ing a schema, navigate to the Drill installation directory and issue the following command:<code>$ bin/sqlline -u jdbc:drill:zk=&lt;zk1host&gt;:&lt;port&gt;,&lt;zk2host&gt;:&lt;port&gt;,&lt;zk3host&gt;:&lt;port&gt; -n admin -p admin</code>Once you are in the prompt, you can issue<code> USE &lt;schema&gt; </code>or you can use absolute notation: <code>schema.table.column.</code>To connect to a schema directly, issue the command with the schema name:<code>$ bin/sqlline -u jdbc:drill:schema=&lt;database&gt;;zk=&lt;zk1host&gt;:&lt;port&gt;,&lt;zk2host&gt;:&lt;port&gt;,&lt;zk3host&gt;:&lt;port&gt; -n admin -p admin</code></td></tr></tbody></table>
-  
+<p><table ><tbody><tr><td valign="top"><strong>Drill Install Type</strong></td><td valign="top"><strong>Example</strong></td><td valign="top"><strong>Command</strong></td></tr><tr><td valign="top">Embedded</td><td valign="top">Drill installed locally (embedded mode);Hive with embedded metastore</td><td valign="top">To connect without specifying a schema, navigate to the Drill installation directory and issue the following command:<code>$ bin/sqlline -u jdbc:drill:zk=local -n admin -p admin </code><span> </span>Once you are in the prompt, you can issue<code> USE &lt;schema&gt; </code>or you can use absolute notation: <code>schema.table.column.</code>To connect to a schema directly, issue the command with the schema name:<code>$ bin/sqlline -u jdbc:drill:schema=&lt;database&gt;;zk=local -n admin -p admin</code></td></tr><tr><td valign="top">Distributed</td><td valign="top">Drill installed in distributed mode;Hive with remote metastore;HBase</td><td valign="top">To connect without spec
 ifying a schema, navigate to the Drill installation directory and issue the following command:<code>$ bin/sqlline -u jdbc:drill:zk=&lt;zk1host&gt;:&lt;port&gt;,&lt;zk2host&gt;:&lt;port&gt;,&lt;zk3host&gt;:&lt;port&gt; -n admin -p admin</code>Once you are in the prompt, you can issue<code> USE &lt;schema&gt; </code>or you can use absolute notation: <code>schema.table.column.</code>To connect to a schema directly, issue the command with the schema name:<code>$ bin/sqlline -u jdbc:drill:schema=&lt;database&gt;;zk=&lt;zk1host&gt;:&lt;port&gt;,&lt;zk2host&gt;:&lt;port&gt;,&lt;zk3host&gt;:&lt;port&gt; -n admin -p admin</code></td></tr></tbody></table></div></p>
 
 <p>When SQLLine starts, the system displays the following prompt:</p>
 

Modified: drill/site/trunk/content/drill/docs/step-3-connect-to-drill-data-sources-from-a-bi-tool/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/step-3-connect-to-drill-data-sources-from-a-bi-tool/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/step-3-connect-to-drill-data-sources-from-a-bi-tool/index.html (original)
+++ drill/site/trunk/content/drill/docs/step-3-connect-to-drill-data-sources-from-a-bi-tool/index.html Tue Mar 17 21:08:21 2015
@@ -79,7 +79,7 @@ Create Views</a>.</p>
 <p>In an ODBC-compliant BI tool, use the ODBC DSN to create an ODBC connection
 with one of the methods applicable to the data source type:</p>
 
-<table ><tbody><tr><th >Data Source Type</th><th>ODBC Connection Method</th></tr><tr><td valign="top">Hive</td><td valign="top">Connect to a table.<br />Connect to the table using custom SQL.<br />Use Drill Explorer to create a view. Then use ODBC to connect to the view as if it were a table.</td></tr><tr><td valign="top">HBase<br /><span style="line-height: 1.4285715;background-color: transparent;">Parquet<br /></span><span style="line-height: 1.4285715;background-color: transparent;">JSON<br /></span><span style="line-height: 1.4285715;background-color: transparent;">CSV<br /></span><span style="line-height: 1.4285715;background-color: transparent;">TSV</span></td><td valign="top">Use Drill Explorer to create a view. Then use ODBC to connect to the view as if it were a table.<br />Connect to the data using custom SQL.</td></tr></tbody></table>
+<table ><tbody><tr><th >Data Source Type</th><th >ODBC Connection Method</th></tr><tr><td valign="top">Hive</td><td valign="top">Connect to a table.<br />Connect to the table using custom SQL.<br />Use Drill Explorer to create a view. Then use ODBC to connect to the view as if it were a table.</td></tr><tr><td valign="top">HBase<br /><span style="line-height: 1.4285715;background-color: transparent;">Parquet<br /></span><span style="line-height: 1.4285715;background-color: transparent;">JSON<br /></span><span style="line-height: 1.4285715;background-color: transparent;">CSV<br /></span><span style="line-height: 1.4285715;background-color: transparent;">TSV</span></td><td valign="top">Use Drill Explorer to create a view. Then use ODBC to connect to the view as if it were a table.<br />Connect to the data using custom SQL.</td></tr></tbody></table>
   
 
 <p>For examples of how to connect to Drill data sources from a BI tool, see the

Added: drill/site/trunk/content/drill/docs/storage-plugin-configuration/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/storage-plugin-configuration/index.html?rev=1667403&view=auto
==============================================================================
--- drill/site/trunk/content/drill/docs/storage-plugin-configuration/index.html (added)
+++ drill/site/trunk/content/drill/docs/storage-plugin-configuration/index.html Tue Mar 17 21:08:21 2015
@@ -0,0 +1,218 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+
+<meta charset="UTF-8">
+
+
+<title>Storage Plugin Configuration - Apache Drill</title>
+
+<link href="/css/syntax.css" rel="stylesheet" type="text/css">
+<link href="/css/style.css" rel="stylesheet" type="text/css">
+<link href="/css/arrows.css" rel="stylesheet" type="text/css">
+<link href="/css/button.css" rel="stylesheet" type="text/css">
+
+<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
+<link rel="icon" href="/favicon.ico" type="image/x-icon">
+
+<script language="javascript" type="text/javascript" src="/js/lib/jquery-1.11.1.min.js"></script>
+<script language="javascript" type="text/javascript" src="/js/lib/jquery.easing.1.3.js"></script>
+<script language="javascript" type="text/javascript" src="/js/modernizr.custom.js"></script>
+<script language="javascript" type="text/javascript" src="/js/script.js"></script>
+
+</head>
+
+<body onResize="resized();">
+
+<div class="bui"></div>
+
+<div id="search">
+<input type="text" placeholder="Enter search term here">
+</div>
+
+<div id="menu" class="mw">
+<ul>
+  <li class="logo"><a href="/"></a></li>
+  <li>
+    <a href="/overview/">Documentation</a>
+    <ul>
+      <li><a href="/overview/">Overview&nbsp;&nbsp;&nbsp;&nbsp;</a></li>
+      <li><a href="https://cwiki.apache.org/confluence/display/DRILL/Apache+Drill+in+10+Minutes" target="_blank">Drill in 10 Minutes</a></li>
+      <li><a href="/why/">Why Drill? &nbsp;&nbsp;&nbsp;&nbsp;</a></li>
+      <li><a href="/architecture/">Architecture</a></li>
+    </ul>
+  </li>
+  <li>
+    <a href="/community/">Community</a>
+    <ul>
+      <li><a href="/team/">Team</a></li>
+      <li><a href="/community/#events">Events and Meetups</a></li>
+      <li><a href="/community/#mailinglists">Mailing Lists</a></li>
+      <li><a href="/community/#getinvolved">Get Involved</a></li>
+      <li><a href="https://issues.apache.org/jira/browse/DRILL/" target="_blank">Issue Tracker</a></li>
+      <li><a href="https://github.com/apache/drill" target="_blank">GitHub</a></li>
+    </ul>
+  </li>
+  <li><a href="/faq/">FAQ</a></li>
+  <li><a href="/blog/">Blog</a></li>
+  <li style="width:30px; padding-left: 2px; padding-right:10px"><a href="https://twitter.com/apachedrill" target="_blank"><img src="/images/twitterbw.png" alt="" align="center" width="22" style="padding: 0px 10px 1px 0px;"></a> </li>
+  <li class="l"><span>&nbsp;</span></li>
+  <li class="d"><a href="/download/">Download</a></li>
+</ul>
+</div>
+
+<div class="int_title">
+<h1>Storage Plugin Configuration</h1>
+
+</div>
+
+<div class="int_text" align="left"><p>When you add or update storage plugin instances on one Drill node in a Drill
+cluster, Drill broadcasts the information to all of the other Drill nodes 
+to have identical storage plugin configurations. You do not need to
+restart any of the Drillbits when you add or update a storage plugin instance.</p>
+
+<p>Use the Drill Web UI to update or add a new storage plugin. Launch a web browser, go to: <code>http://&lt;IP address of the sandbox&gt;:8047</code>, and then go to the Storage tab. </p>
+
+<p>To create and configure a new storage plugin:</p>
+
+<ol>
+<li>Enter a storage name in New Storage Plugin.
+Each storage plugin registered with Drill must have a distinct
+name. Names are case-sensitive.</li>
+<li>Click Create.<br></li>
+<li>In Configuration, configure attributes of the storage plugin, if applicable, using JSON formatting. The Storage Plugin Attributes table in the next section describes attributes typically reconfigured by users. </li>
+<li>Click Create.</li>
+</ol>
+
+<p>Click Update to reconfigure an existing, enabled storage plugin.</p>
+
+<h2 id="storage-plugin-attributes">Storage Plugin Attributes</h2>
+
+<p>The following diagram of the dfs storage plugin briefly describes options you configure in a typical storage plugin configuration:</p>
+
+<p><img src="/docs/img/connect-plugin.png" alt="dfs plugin"></p>
+
+<p>The following table describes the attributes you configure for storage plugins in more detail than the diagram. </p>
+
+<table>
+  <tr>
+    <th>Attribute</th>
+    <th>Example Values</th>
+    <th>Required</th>
+    <th>Description</th>
+  </tr>
+  <tr>
+    <td>"type"</td>
+    <td>"file"<br>"hbase"<br>"hive"<br>"mongo"</td>
+    <td>yes</td>
+    <td>The storage plugin type name supported by Drill.</td>
+  </tr>
+  <tr>
+    <td>"enabled"</td>
+    <td>true<br>false</td>
+    <td>yes</td>
+    <td>The state of the storage plugin.</td>
+  </tr>
+  <tr>
+    <td>"connection"</td>
+    <td>"classpath:///"<br>"file:///"<br>"mongodb://localhost:27017/"<br>"maprfs:///"</td>
+    <td>implementation-dependent</td>
+    <td>The type of distributed file system. Drill can work with any distributed system, such as HDFS and S3, or files in your file system.</td>
+  </tr>
+  <tr>
+    <td>"workspaces"</td>
+    <td>null<br>"logs"</td>
+    <td>no</td>
+    <td>One or more unique workspace names, enclosed in double quotation marks. If a workspace is defined more than once, the latest one overrides the previous ones. Not used with local or distributed file systems.</td>
+  </tr>
+  <tr>
+    <td>"workspaces". . . "location"</td>
+    <td>"location": "/"<br>"location": "/tmp"</td>
+    <td>no</td>
+    <td>The path to a directory on the file system.</td>
+  </tr>
+  <tr>
+    <td>"workspaces". . . "writable"</td>
+    <td>true<br>false</td>
+    <td>no</td>
+    <td>One or more unique workspace names, enclosed in double quotation marks. If a workspace is defined more than once, the latest one overrides the previous ones. Not used with local or distributed file systems.</td>
+  </tr>
+  <tr>
+    <td>"workspaces". . . "defaultInputFormat"</td>
+    <td>null<br>"parquet"<br>"csv"<br>"json"</td>
+    <td>no</td>
+    <td>The format of data Drill reads by default, regardless of extension. Parquet is the default.</td>
+  </tr>
+  <tr>
+    <td>"formats"</td>
+    <td>"psv"<br>"csv"<br>"tsv"<br>"parquet"<br>"json"<br>"maprdb"</td>
+    <td>yes</td>
+    <td>One or more file formats of data Drill can read. Drill can implicitly detect some file formats based on the file extension or the first few bits of data within the file, but you need to configure an option for others.</td>
+  </tr>
+  <tr>
+    <td>"formats" . . . "type"</td>
+    <td>"text"<br>"parquet"<br>"json"<br>"maprdb"</td>
+    <td>yes</td>
+    <td>The type of the format specified. For example, you can define two formats, csv and psv, as type "Text", but having different delimiters. Drill enables the maprdb plugin if you define the maprdb type.</td>
+  </tr>
+  <tr>
+    <td>formats . . . "extensions"</td>
+    <td>["csv"]</td>
+    <td>format-dependent</td>
+    <td>The extensions of the files that Drill can read.</td>
+  </tr>
+  <tr>
+    <td>"formats" . . . "delimiter"</td>
+    <td>"\t"<br>","</td>
+    <td>format-dependent</td>
+    <td>The delimiter used to separate columns in text files such as CSV. Specify a non-printable delimiter in the storage plugin config by using the form \uXXXX, where XXXX is the four numeral hex ascii code for the character.</td>
+  </tr>
+</table>
+
+<p>The configuration of other attributes, such as <code>size.calculator.enabled</code> in the hbase plugin and <code>configProps</code> in the hive plugin, are implementation-dependent and beyond the scope of this document.</p>
+
+<p>Although Drill can work with different file types in the same directory, restricting a Drill workspace to one file type prevents confusion.</p>
+
+<h2 id="case-sensitive-names">Case-sensitive Names</h2>
+
+<p>As previously mentioned, workspace and storage plugin names are case-sensitive. For example, the following query uses a storage plugin name <code>dfs</code> and a workspace name <code>clicks</code>. When you refer to <code>dfs.clicks</code> in an SQL statement, use the defined case:</p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">0: jdbc:drill:&gt; USE dfs.clicks;
+</code></pre></div>
+<p>For example, using uppercase letters in the query after defining the storage plugin and workspace names using lowercase letters does not work. </p>
+
+<h2 id="rest-api">REST API</h2>
+
+<p>Drill provides a REST API that you can use to create a storage plugin. Use an HTTP POST and pass two properties:</p>
+
+<ul>
+<li><p>name
+The plugin name. </p></li>
+<li><p>config
+The storage plugin definition as you would enter it in the Web UI.</p></li>
+</ul>
+
+<p>For example, this command creates a plugin named myplugin for reading files of an unknown type located on the root of the file system:</p>
+<div class="highlight"><pre><code class="language-text" data-lang="text">curl -X POST -/json&quot; -d &#39;{&quot;name&quot;:&quot;myplugin&quot;, &quot;config&quot;: {&quot;type&quot;: &quot;file&quot;, &quot;enabled&quot;: false, &quot;connection&quot;: &quot;file:///&quot;, &quot;workspaces&quot;: { &quot;root&quot;: { &quot;location&quot;: &quot;/&quot;, &quot;writable&quot;: false, &quot;defaultInputFormat&quot;: null}}, &quot;formats&quot;: null}}&#39; http://localhost:8047/storage/myplugin.json
+</code></pre></div></div>
+
+
+<div id="footer" class="mw">
+<div class="wrapper">
+Copyright © 2012-2014 The Apache Software Foundation, licensed under the Apache License, Version 2.0.<br>
+Apache and the Apache feather logo are trademarks of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.<br/><br/>
+</div>
+</div>
+
+<script>
+(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+ga('create', 'UA-53379651-1', 'auto');
+ga('send', 'pageview');
+</script>
+
+</body>
+</html>

Modified: drill/site/trunk/content/drill/docs/storage-plugin-registration/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/storage-plugin-registration/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/storage-plugin-registration/index.html (original)
+++ drill/site/trunk/content/drill/docs/storage-plugin-registration/index.html Tue Mar 17 21:08:21 2015
@@ -67,37 +67,27 @@
 
 </div>
 
-<div class="int_text" align="left"><p>You can connect Drill to a file system, Hive, or HBase data source. To connect
-Drill to a data source, you must register the data source as a storage plugin
-instance in the Drill Web UI. You register an instance of a data source as a
-<code>file</code>, <code>hive</code>, or <code>hbase</code> storage plugin type. You can register multiple
-storage plugin instances for each storage plugin type.</p>
-
-<p>Each node with a Drillbit installed has a running browser that provides access
-to the Drill Web UI at <code>http://localhost:8047/</code>. The Drill Web UI includes
-<code>cp</code>, <code>dfs</code>, <code>hive</code>, and <code>hbase</code> storage plugin instances by default, though
-the <code>hive</code> and <code>hbase</code> instances are disabled. You can update the <code>hive</code> and
-<code>hbase</code> instances with configuration details and then enable them.</p>
-
-<p>The <code>cp</code> instance points to a JAR file in Drill’s classpath that contains
-sample data that you can query. By default, the <code>dfs</code> instance points to the
-local file system on your machine, but you can configure this instance to
-point to any distributed file system, such as a Hadoop or S3 file system.</p>
-
-<p>When you add or update storage plugin instances on one Drill node in a Drill
-cluster, Drill broadcasts the information to all of the other Drill nodes so
-they all have identical storage plugin configurations. You do not need to
-restart any of the Drillbits when you add or update a storage plugin instance.</p>
-
-<p>Each storage plugin instance that you register with Drill must have a distinct
-name. For example, if you register two storage plugin instances for a Hadoop
-file system, you might name one storage plugin instance <code>hdfstest</code> and the
-other instance <code>hdfsproduction</code>.</p>
+<div class="int_text" align="left"><p>You connect Drill to a file system, Hive, HBase, or other data source using storage plugins. Drill includes a number of storage plugins in the installation. On the Storage tab of the Web UI, you can view, create, reconfigure, and register a storage plugin. To open the Storage tab, go to <code>http://&lt;IP address&gt;:8047/storage</code>, where IP address is any one of the installed drill bits:</p>
 
-<p>The following example shows an HDFS data source registered in the Drill Web UI
-as a storage plugin instance of plugin type &quot;<code>file&quot;</code>:</p>
+<p><img src="/docs/img/plugin-default.png" alt="drill-installed plugins"></p>
 
-<p><img src="/docs/img/StoragePluginConfig.png" alt="drill query flow"></p>
+<p>The Drill installation registers the <code>cp</code>, <code>dfs</code>, <code>hbase</code>, <code>hive</code>, and <code>mongo</code> storage plugins instances by default.</p>
+
+<ul>
+<li><code>cp</code>
+Points to a JAR file in the Drill classpath that contains the Transaction Processing Performance Council (TPC) benchmark schema TPC-H that you can query. </li>
+<li><code>dfs</code>
+Points to the local file system on your machine, but you can configure this instance to
+point to any distributed file system, such as a Hadoop or S3 file system. </li>
+<li><code>hbase</code>
+Provides a connection to HBase/M7.</li>
+<li><code>hive</code>
+Integrates Drill with the Hive metadata abstraction of files, HBase/M7, and libraries to read data and operate on SerDes and UDFs.</li>
+<li><code>mongo</code>
+Provides a connection to MongoDB data.</li>
+</ul>
+
+<p>In the Drill sandbox,  the <code>dfs</code> storage plugin connects you to the MapR File System (MFS). Using an installation of Drill instead of the sandbox, <code>dfs</code> connects you to the root of your file system.</p>
 </div>
 
 

Modified: drill/site/trunk/content/drill/docs/tableau-examples/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/tableau-examples/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/tableau-examples/index.html (original)
+++ drill/site/trunk/content/drill/docs/tableau-examples/index.html Tue Mar 17 21:08:21 2015
@@ -96,7 +96,7 @@ and then visualize the data in Tableau.<
 <li>Select <strong>MapR Drill ODBC Driver</strong> and click <strong>Finish</strong>.<br>
  The <em>MapR Drill ODBC Driver DSN Setup</em> window appears.</li>
 <li>Enter a name for the data source.</li>
-<li>Specify the connection type based on your requirements. The connection type provides the DSN access to Drill Data Sources. .<br>
+<li>Specify the connection type based on your requirements. The connection type provides the DSN access to Drill Data Sources.<br>
 In this example, we are connecting to a Zookeeper Quorum.</li>
 <li>In the <strong>Schema</strong> field, select the Hive schema.
  In this example, the Hive schema is named hive.default.
@@ -194,8 +194,8 @@ voterzone,cast(voter.fourcf.create_date
 hbase.voter
 </code></pre></div>
 <p>HBase does not contain type information, so you need to cast the data in Drill
-Explorer. For information about SQL query support, see the <a href="/docs/sql-reference">SQL
-Reference</a>.</p></li>
+Explorer. For information about SQL query support, see the SQL
+Reference in the <a href="/docs/sql-reference">Apache Drill Wiki documentation</a>.</p></li>
 <li><p>To save the view, click <strong>Create As</strong>.</p></li>
 <li><p>Specify the schema where you want to save the view, enter a name for the view, and click <strong>Save</strong>.  </p>
 

Modified: drill/site/trunk/content/drill/docs/workspaces/index.html
URL: http://svn.apache.org/viewvc/drill/site/trunk/content/drill/docs/workspaces/index.html?rev=1667403&r1=1667402&r2=1667403&view=diff
==============================================================================
--- drill/site/trunk/content/drill/docs/workspaces/index.html (original)
+++ drill/site/trunk/content/drill/docs/workspaces/index.html Tue Mar 17 21:08:21 2015
@@ -89,7 +89,7 @@ workspace named <code>json</code> config
     &quot;json&quot; : {
       &quot;location&quot; : &quot;/users/max/drill/json/&quot;,
       &quot;writable&quot; : false,
-      &quot;storageformat&quot; : json
+      &quot;defaultinputformat&quot; : json
    } 
 },
 </code></pre></div>
@@ -103,7 +103,7 @@ instance for each query that you issue:<
 <div class="highlight"><pre><code class="language-text" data-lang="text">USE dfs.json;
 SELECT * FROM dfs.json.`donuts.json` WHERE type=&#39;frosted&#39;
 </code></pre></div>
-<p>If the <code>json</code>workspace did not exist, the query would have to include the
+<p>If the <code>json</code> workspace did not exist, the query would have to include the
 full path to the <code>donuts.json</code> file:</p>
 <div class="highlight"><pre><code class="language-text" data-lang="text">SELECT * FROM dfs.`/users/max/drill/json/donuts.json` WHERE type=&#39;frosted&#39;;
 </code></pre></div>
@@ -114,7 +114,7 @@ in subsequent queries on the directory.<
 
 <p>Each <code>file</code> and <code>hive</code> instance includes a <code>default</code> workspace. The <code>default</code>
 workspace points to the file system or to the Hive metastore. When you query
-files and tables in the<code>file</code> or <code>hive default</code> workspaces, you can omit the
+files and tables in the <code>file</code> or <code>hive default</code> workspaces, you can omit the
 workspace name from the query.</p>
 
 <p>For example, you can issue a query on a Hive table in the <code>default workspace</code>



Mime
View raw message