This is an automated email from the ASF dual-hosted git repository.
dzamo 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 177c920 Website update.
177c920 is described below
commit 177c92012a575c611b56f920ce95ae604ccaa4e0
Author: James Turton <[email protected]>
AuthorDate: Tue Jul 27 16:59:34 2021 +0200
Website update.
---
docs/creating-a-basic-drill-cluster/index.html | 183 +++++++++------------
docs/date-time-functions-and-arithmetic/index.html | 2 +-
docs/installing-drill-on-the-cluster/index.html | 66 ++++++--
zh/docs/creating-a-basic-drill-cluster/index.html | 183 +++++++++------------
.../date-time-functions-and-arithmetic/index.html | 2 +-
zh/docs/installing-drill-on-the-cluster/index.html | 66 ++++++--
6 files changed, 256 insertions(+), 246 deletions(-)
diff --git a/docs/creating-a-basic-drill-cluster/index.html
b/docs/creating-a-basic-drill-cluster/index.html
index 20c42a0..b76d164 100644
--- a/docs/creating-a-basic-drill-cluster/index.html
+++ b/docs/creating-a-basic-drill-cluster/index.html
@@ -1435,12 +1435,13 @@ custom code resides in the site directory; do not
change anything in the Drill
<p>To localize Drill files, the client tool requires a copy of the original
Drill distribution archive and the location of your site directory. Assume all
these components reside in a single “master directory” described as $MASTER_DIR
. On the client machine, create the master directory, as shown:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> export MASTER_DIR=/path/to/master/dir
- mkdir $MASTER_DIR
- cd $MASTER_DIR
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">MASTER_DIR</span><span class="o">=</span>/path/to/master/dir
+<span class="nb">mkdir</span> <span class="nv">$MASTER_DIR</span>
+<span class="nb">cd</span> <span class="nv">$MASTER_DIR</span>
</code></pre></div></div>
<p>To build the master directory, you will:</p>
+
<ul>
<li>Download the Drill archive to $MASTER_DRILL.</li>
<li>Unpack the archive to create $DRILL_HOME.</li>
@@ -1450,79 +1451,39 @@ custom code resides in the site directory; do not
change anything in the Drill
<p>The following steps provide the instructions for building the master
directory:</p>
<h3 id="install-drill">Install Drill</h3>
+
<p>These instructions assume you are installing Drill as part of the
Drill-on-YARN
setup. You can use your existing Drill 1.8 or later install as long as it
meets the required criteria.</p>
<p>Follow the Drill <a href="/docs/install-drill-introduction/">install
directions</a> to install Drill on your client host. The install steps are
different for YARN than for the Embedded or Cluster install.</p>
<ol>
- <li>
- <p>Select a Drill version. The name is used in multiple places below. For
convenience, define an environment variable for the name:</p>
-
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code> export
DRILL_NAME=apachedrillx.y.z Replace x.y.z with the selected version.
+ <li>Select a Drill version. The name is used in multiple places below. For
convenience, define an environment variable for the name:
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">DRILL_NAME</span><span class="o">=</span>apachedrillx.y.z
</code></pre></div> </div>
+ <p>Replace x.y.z with the selected version.</p>
</li>
- <li>
- <p>Download the Drill version.</p>
-
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code> wget \
http://apache.mesi.com.ar/drill/drillx.y.z/$DRILL_NAME.tar.gz Or use
-
- curl o $DRILL_NAME.tar.gz
\http://apache.mesi.com.ar/drill/drillx.y.z/$DRILL_NAME.tar.gz Again, replace
x.y.z with the selected version.
+ <li>Download the Drill version.
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>wget http://apache.mesi.com.ar/drill/drillx.y.z/<span
class="nv">$DRILL_NAME</span>.tar.gz
</code></pre></div> </div>
+ <p>Or use</p>
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>curl <span class="nt">-o</span> <span
class="nv">$DRILL_NAME</span>.tar.gz <span
class="se">\h</span>ttp://apache.mesi.com.ar/drill/drillx.y.z/<span
class="nv">$DRILL_NAME</span>.tar.gz
+</code></pre></div> </div>
+ <p>Again, replace x.y.z with the selected version.</p>
</li>
- <li>
- <p>Expand the Drill distribution into this folder to create the master
directory</p>
-
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code> tar -xzf
$DRILL_NAME.tar.gz
+ <li>Expand the Drill distribution into this folder to create the master
directory
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">tar</span> <span
class="nt">-xzf</span> <span class="nv">$DRILL_NAME</span>.tar.gz
</code></pre></div> </div>
</li>
- <li>
- <p>For ease of following the remaining steps, call your expanded Drill
folder $DRILL_HOME :</p>
-
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code> export
DRILL_HOME=$MASTER_DIR/$DRILL_NAME
+ <li>For ease of following the remaining steps, call your expanded Drill
folder $DRILL_HOME :
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">DRILL_HOME</span><span class="o">=</span><span
class="nv">$MASTER_DIR</span>/<span class="nv">$DRILL_NAME</span>
</code></pre></div> </div>
</li>
</ol>
-<p>Your master directory should now contain the original Drill archive along
with an expanded copy
-of that archive.</p>
-
-<h3 id="create-the-site-directory">Create the Site Directory</h3>
-
-<p>The site directory contains your site-specific files for Drill. If you are
converting an existing Drill install, see the “Site Directory” section.</p>
-
-<p>Create the site directory within your master directory:</p>
-
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> export DRILL_SITE=$MASTER_DIR/site
- mkdir $DRILL_SITE
-</code></pre></div></div>
-
-<p>When you do a fresh install, Drill includes a conf directory under
$DRILL_HOME. Use the files
-in that directory to create your site directory.</p>
-
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> cp $DRILL_HOME/conf/drilloverrideexample.conf
\
- $DRILL_SITE/drilloverride.conf
- cp $DRILL_HOME/conf/drill-on-yarnexample.conf \
- $DRILL_SITE/drill-on-yarn.conf
- cp $DRILL_HOME/conf/drillenv.sh $DRILL_SITE
-</code></pre></div></div>
-
-<p>Edit the above configuration files as per the Drill install instructions,
and the Drill-on-YARN
-instructions below. (Note that, under YARN, you set the Drill memory limits in
-drill-on-yarn.sh instead of drillenv.sh.)</p>
-
-<p>If you develop custom code (data sources or user-defined functions (UDFs)),
place the Java JAR
-files in $DRILL_SITE/jars.</p>
+<p>Your master directory should now contain the original Drill archive along
with an expanded copy of that archive. You may now follow the instructions on
how to create the site directory, see <a
href="/docs/installing-drill-on-the-cluster/">Installing Drill on the
Cluster</a>.</p>
-<p>Your master directory should now contain the Drill software and your site
directory with default files. You will use the site directory each time you
start Drill by using the –site
-(or –config) option. The following are examples, do not run these yet:</p>
-
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit.sh --site $DRILL_SITE
- drill-on-yarn.sh --site $DRILL_SITE
-</code></pre></div></div>
-
-<p>Once you have created your site directory, upgrades are trivial. Simply
delete the old Drill
-distribution and install the new one. Your files remain unchanged in the site
directory.</p>
+<p>Edit the configuration files as per the Drill install instructions, and the
Drill-on-YARN instructions below. Note that, under YARN, you set the Drill
memory limits in drill-on-yarn.sh instead of drillenv.sh.</p>
<h3 id="configure-drill-on-yarn-using-existing-settings">Configure
Drill-on-YARN using Existing Settings</h3>
@@ -1532,16 +1493,16 @@ environment in which to learn Drill configuration.
These instructions assume tha
<p>From $PROD_DRILL_HOME, copy the following to corresponding locations in
$DRILL_SITE:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> cp $PROD_DRILL_HOME/conf/drilloverride.conf
$DRILL_SITE
- cp $PROD_DRILL_HOME/conf/drillenv.sh $DRILL_SITE
- cp $PROD_DRILL_HOME/jars/3rdparty/ yourJarName .jar $DRILL_SITE/jars
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">cp</span> <span
class="nv">$PROD_DRILL_HOME</span>/conf/drilloverride.conf <span
class="nv">$DRILL_SITE</span>
+<span class="nb">cp</span> <span
class="nv">$PROD_DRILL_HOME</span>/conf/drillenv.sh <span
class="nv">$DRILL_SITE</span>
+<span class="nb">cp</span> <span
class="nv">$PROD_DRILL_HOME</span>/jars/3rdparty/ yourJarName .jar <span
class="nv">$DRILL_SITE</span>/jars
</code></pre></div></div>
<h3 id="create-your-cluster-configuration-file">Create Your Cluster
Configuration File</h3>
+
<p>The next step is to specify additional configuration which Drill-on-YARN
requires to launch your Drill cluster.</p>
-<p>Start by editing $DRILL_SITE/drill-on-yarn.conf using your favorite editor.
This file is
-in the same HOCON format used by drill-override.conf.</p>
+<p>Start by editing $DRILL_SITE/drill-on-yarn.conf using your favorite editor.
This file is in the same HOCON format used by drill-override.conf.</p>
<p>Consult $DRILL_HOME/conf/drill-on-yarn-example.conf as an example. However,
do not just copy the example file; instead, copy only the specific
configuration settings that you need; the others will automatically take the
Drill-defined
@@ -1550,23 +1511,23 @@ default values.</p>
<p>The following sections discuss each configuration option that you must
set.</p>
<h3 id="drill-resource-configuration">Drill Resource Configuration</h3>
-<p>The two key Drill memory parameters are Java heap size and direct memory.
In a non-YARN
-cluster, you set these in $DRILL_HOME/conf/drillenv.sh as follows (shown with
the
+
+<p>The two key Drill memory parameters are Java heap size and direct memory.
In a non-YARN cluster, you set these in $DRILL_HOME/conf/drillenv.sh as follows
(shown with the
default values):</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> DRILL_MAX_DIRECT_MEMORY="8G"
- DRILL_HEAP="4G"
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nv">DRILL_MAX_DIRECT_MEMORY</span><span
class="o">=</span><span class="s2">"8G"</span>
+<span class="nv">DRILL_HEAP</span><span class="o">=</span><span
class="s2">"4G"</span>
</code></pre></div></div>
<p>Drill-on-YARN uses a different mechanism to set these values. You set the
values in
drill-on-yarn.conf , then Drill-on-YARN copies the values into the environment
variables
when launching each Drillbit.</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit: {
- heap: "4G"
- max-direct-memory: "8G"
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drillbit</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">heap</span><span class="p">:</span><span
class="w"> </span><span class="s2">"4G"</span><span class="w">
+ </span><span class="nl">max-direct-memory</span><span
class="p">:</span><span class="w"> </span><span class="s2">"8G"</span><span
class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>To create the Drill-on-YARN setup, simply copy the values directly from
your pre-YARN
drillenv.sh file into the above configuration. (Drill-on-YARN copies the
values back into
@@ -1577,31 +1538,32 @@ is simply the sum of the heap and direct memory.
However, if you are using custo
memory usage as well. The YARN memory is expressed in MB. For example, for the
default
settings above, we need 12G of memory or 12288MB:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit: {
- memory-mb: 6144
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drillbit</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">memory-mb</span><span class="p">:</span><span
class="w"> </span><span class="mi">6144</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>Finally, you must determine how much CPU to grant to Drill. Drill is a CPU
intensive
operation and greatly benefits from each additional core. However, you can
limit Drill’s CPU usage under YARN by specifying the number of YARN virtual
cores (vcores) to allocate to Drill:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit: {
- vcores: 4
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drillbit</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">vcores</span><span class="p">:</span><span
class="w"> </span><span class="mi">4</span><span class="w">
+</span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>Note that in the above, each configuration setting was shown separately. In
your actual file,
however, they appear within a single group as follows:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit: {
- heap: "4G"
- max-direct-memory: "8G"
- memory-mb: 6144
- vcores: 4
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drillbit</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">heap</span><span class="p">:</span><span
class="w"> </span><span class="s2">"4G"</span><span class="w">
+ </span><span class="nl">max-direct-memory</span><span
class="p">:</span><span class="w"> </span><span class="s2">"8G"</span><span
class="w">
+ </span><span class="nl">memory-mb</span><span class="p">:</span><span
class="w"> </span><span class="mi">6144</span><span class="w">
+ </span><span class="nl">vcores</span><span class="p">:</span><span
class="w"> </span><span class="mi">4</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<h3 id="drillbit-cluster-configuration">Drillbit Cluster Configuration</h3>
+
<p>Drill-on-YARN uses the concept of a “cluster group” of Drillbits to
describe the set of Drillbits to launch. A group can be one of three kinds:</p>
<ul>
@@ -1613,63 +1575,66 @@ however, they appear within a single group as
follows:</p>
<p>For a basic group, you need only specify the group type and the number of
Drillbits to launch:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> cluster: [
- {
- name: "mypool"
- type: "basic"
- count: 1
- }
- ]
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">cluster</span><span
class="p">:</span><span class="w"> </span><span class="p">[</span><span
class="w">
+ </span><span class="p">{</span><span class="w">
+ </span><span class="nl">name</span><span class="p">:</span><span
class="w"> </span><span class="s2">"mypool"</span><span class="w">
+ </span><span class="nl">type</span><span class="p">:</span><span
class="w"> </span><span class="s2">"basic"</span><span class="w">
+ </span><span class="nl">count</span><span class="p">:</span><span
class="w"> </span><span class="mi">1</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span><span class="p">]</span><span class="w">
+</span></code></pre></div></div>
<p>The above syntax says that pools is a list that contains a series of pool
objects contained in
braces. In this release, however, Drill supports just one pool.</p>
<h3 id="zookeeper-configuration">ZooKeeper Configuration</h3>
+
<p>Drill uses ZooKeeper to coordinate between Drillbits. When run under YARN,
the Drill
Application Master uses ZooKeeper to monitor Drillbit health. Drill-on-YARN
reads your
$DRILL_SITE/drilloverride.conf file for ZooKeeper settings.</p>
<h3 id="configure-the-drill-distribution-archive">Configure the Drill
Distribution Archive</h3>
+
<p>Next configure the name of the Drill distribution archive that you
downloaded earlier.</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drill-install: {
- client-path: "archive-path"
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drill-install</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">client-path</span><span class="p">:</span><span
class="w"> </span><span class="s2">"archive-path"</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>Where archive-path is the location of your archive. In our example, this is
$MASTER_DIR/apache-drill.x.y.z.tar.gz. Use the full name of the master
directory, not the environment variable. (Substitute your actual version number
for x.y.z.)</p>
<h3 id="select-the-distributed-file-system-location">Select the Distributed
File System Location</h3>
+
<p>Drill copies your archive onto your distributed file system (such as HDFS)
in a location you
provide. Set the DFS options as follows:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> dfs: {
- connection: "hdfs://localhost/"
- dir: "/user/drill"
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">dfs</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">connection</span><span class="p">:</span><span
class="w"> </span><span class="s2">"hdfs://localhost/"</span><span class="w">
+ </span><span class="nl">dir</span><span class="p">:</span><span
class="w"> </span><span class="s2">"/user/drill"</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>Drill can read the connection information from your Hadoop configuration
files ($HADOOP_HOME/etc/hadoop/coresite.xml ). Or, you can specify a connection
directly in the Drill cluster configuration file using the connection
attribute. Then, choose a DFS file system location. Drill uses “ /user/drill ”
by default.</p>
<h3 id="hadoop-location">Hadoop Location</h3>
+
<p>Apache Drill users must tell Drill-on-YARN the location of your Hadoop
install. Set the
HADOOP_HOME environment variable in $DRILL_SITE/drillenv.sh to point to your
Hadoop installation:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> export HADOOP_HOME= /path/to/hadoop-home
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">HADOOP_HOME</span><span class="o">=</span> /path/to/hadoop-home
</code></pre></div></div>
<p>This assumes that Hadoop configuration is in the default location:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> $HADOOP_HOME/etc/hadoop
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nv">$HADOOP_HOME</span>/etc/hadoop
</code></pre></div></div>
<p>If your configuration is elsewhere, set HADOOP_CONF_DIR instead:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> export HADOOP_CONF_DIR= /path/to/hadoop-config
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">HADOOP_CONF_DIR</span><span class="o">=</span> /path/to/hadoop-config
</code></pre></div></div>
-
<div class="doc-nav">
diff --git a/docs/date-time-functions-and-arithmetic/index.html
b/docs/date-time-functions-and-arithmetic/index.html
index 7b5a656..b140d27 100644
--- a/docs/date-time-functions-and-arithmetic/index.html
+++ b/docs/date-time-functions-and-arithmetic/index.html
@@ -1509,7 +1509,7 @@
<h2 id="age">AGE</h2>
<div class="admonition important">
<p class="first admonition-title">Important</p>
- <p class="last"> This function is buggy in the current release. Please make
use of alternative date functions until this notice is removed. </p>
+ <p class="last"> DRILL-7926: this function is buggy in the current release.
Please make use of alternative date functions until the mentioned issue is
resolved. </p>
</div>
<p>Returns the interval between two timestamps or subtracts a timestamp from
midnight of the current date.</p>
diff --git a/docs/installing-drill-on-the-cluster/index.html
b/docs/installing-drill-on-the-cluster/index.html
index 1cb755f..055ee4c 100644
--- a/docs/installing-drill-on-the-cluster/index.html
+++ b/docs/installing-drill-on-the-cluster/index.html
@@ -1418,6 +1418,8 @@
<p>You install Drill on nodes in the cluster, configure a cluster ID,
and add Zookeeper information, as described in the following steps:</p>
+<h3 id="install">Install</h3>
+
<ol>
<li>Download the latest version of Apache Drill <a
href="http://apache.mirrors.hoobly.com/drill/drill-1.19.0/apache-drill-1.19.0.tar.gz">here</a>
or from the <a
href="http://www.apache.org/dyn/closer.cgi/drill/drill-1.19.0/apache-drill-1.19.0.tar.gz">Apache
Drill mirror site</a> with the command appropriate for your system:
<ul>
@@ -1425,23 +1427,61 @@
<li><code class="language-plaintext highlighter-rouge">curl -o
apache-drill-1.19.0.tar.gz
http://apache.mirrors.hoobly.com/drill/drill-1.19.0/apache-drill-1.19.0.tar.gz</code></li>
</ul>
</li>
- <li>Extract the tarball to the directory of your choice, such as <code
class="language-plaintext highlighter-rouge">/opt</code>:<br />
- <code class="language-plaintext highlighter-rouge">tar -xzvf
apache-drill-<version>.tar.gz</code></li>
- <li>
- <p>In <code class="language-plaintext
highlighter-rouge">drill-override.conf,</code> use the Drill <code
class="language-plaintext highlighter-rouge">cluster ID</code>, and provide
ZooKeeper host names and port numbers to configure a connection to your
ZooKeeper quorum.<br />
- a. Edit <code class="language-plaintext
highlighter-rouge">drill-override.conf</code> located in the <code
class="language-plaintext highlighter-rouge">conf</code> directory.<br />
- b. Provide a unique <code class="language-plaintext
highlighter-rouge">cluster-id</code> and the ZooKeeper host names and port
numbers in <code class="language-plaintext
highlighter-rouge">zk.connect</code>. If you install Drill on multiple nodes,
assign the same <code class="language-plaintext highlighter-rouge">cluster
ID</code> to each Drill node so that all Drill nodes share the same ID. The
default ZooKeeper port on the open source version of Apache Drill is 2181.</p>
+ <li>Extract the tarball to the directory of your choice, such as <code
class="language-plaintext highlighter-rouge">/opt</code>:
+<code class="language-plaintext highlighter-rouge">tar -xf
apache-drill-<version>.tar.gz</code></li>
+</ol>
- <p><strong>Example</strong></p>
+<h3 id="optional-create-the-site-directory">(Optional) Create the site
directory</h3>
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code>drill.exec:{
- cluster-id: "<mydrillcluster>",
- zk.connect:
"<zkhostname1>:<port>,<zkhostname2>:<port>,<zkhostname3>:<port>"
-}
-</code></pre></div> </div>
- </li>
+<p>The site directory contains your site-specific files for Drill. Putting
these in a separate directory to the Drill installation means that upgrading
Drill will not clobber your configuration and custom code. It is possible to
skip this step, meaning that your configuration and custom code will live in
the <code class="language-plaintext highlighter-rouge">$DRILL_HOME/conf</code>
and <code class="language-plaintext
highlighter-rouge">$DRILL_HOME/jars/3rdparty</code> subdirectories re [...]
+
+<p>Create the site directory in a suitable location, e.g.</p>
+
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">DRILL_SITE</span><span class="o">=</span>/etc/drill-site
+<span class="nb">mkdir</span> <span class="nv">$DRILL_SITE</span>
+</code></pre></div></div>
+
+<p>When you do a fresh install, Drill includes a conf directory under
$DRILL_HOME. Use the files
+in that directory to create your site directory.</p>
+
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">cp</span> <span
class="nv">$DRILL_HOME</span>/conf/drilloverrideexample.conf <span
class="se">\</span>
+<span class="nv">$DRILL_SITE</span>/drilloverride.conf
+<span class="nb">cp</span> <span
class="nv">$DRILL_HOME</span>/conf/drill-on-yarnexample.conf <span
class="se">\</span>
+<span class="nv">$DRILL_SITE</span>/drill-on-yarn.conf
+<span class="nb">cp</span> <span
class="nv">$DRILL_HOME</span>/conf/drillenv.sh <span
class="nv">$DRILL_SITE</span>
+</code></pre></div></div>
+
+<p>You will use the site directory each time you start Drill by using the
<code class="language-plaintext highlighter-rouge">--site</code> (or <code
class="language-plaintext highlighter-rouge">--config</code>) option. The
following are examples.</p>
+
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>drillbit.sh <span class="nt">--site</span> <span
class="nv">$DRILL_SITE</span>
+drill-on-yarn.sh <span class="nt">--site</span> <span
class="nv">$DRILL_SITE</span>
+</code></pre></div></div>
+
+<p>Once you have created your site directory, upgrades are trivial. Simply
delete the old Drill
+distribution and install the new one. Your files remain unchanged in the site
directory.</p>
+
+<h3 id="zookeeper-configuration">ZooKeeper configuration</h3>
+
+<p>In <code class="language-plaintext
highlighter-rouge">drill-override.conf,</code> use the Drill <code
class="language-plaintext highlighter-rouge">cluster ID</code>, and provide
ZooKeeper host names and port numbers to configure a connection to your
ZooKeeper quorum.</p>
+
+<ol>
+ <li>Edit <code class="language-plaintext
highlighter-rouge">drill-override.conf</code> located in the <code
class="language-plaintext highlighter-rouge">conf</code> directory.</li>
+ <li>Provide a unique <code class="language-plaintext
highlighter-rouge">cluster-id</code> and the ZooKeeper host names and port
numbers in <code class="language-plaintext
highlighter-rouge">zk.connect</code>. If you install Drill on multiple nodes,
assign the same cluster ID to each Drill node so that all Drill nodes share the
same ID. The default ZooKeeper port on the open source version of Apache Drill
is 2181.</li>
</ol>
+<p><strong>Example</strong></p>
+
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drill.exec</span><span
class="p">:{</span><span class="w">
+ </span><span class="nl">cluster-id</span><span class="p">:</span><span
class="w"> </span><span class="s2">"<mydrillcluster>"</span><span
class="p">,</span><span class="w">
+ </span><span class="nl">zk.connect</span><span class="p">:</span><span
class="w"> </span><span
class="s2">"<zkhostname1>:<port>,<zkhostname2>:<port>,<zkhostname3>:<port>"</span><span
class="w">
+</span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
+
+<h3 id="custom-jars">Custom JARs</h3>
+
+<p>If you develop custom code (data sources or user-defined functions, a.k.a.
UDFs), place the Java JAR
+files in $DRILL_SITE/jars.</p>
+
diff --git a/zh/docs/creating-a-basic-drill-cluster/index.html
b/zh/docs/creating-a-basic-drill-cluster/index.html
index b876ef0..ecf5bed 100644
--- a/zh/docs/creating-a-basic-drill-cluster/index.html
+++ b/zh/docs/creating-a-basic-drill-cluster/index.html
@@ -1435,12 +1435,13 @@ custom code resides in the site directory; do not
change anything in the Drill
<p>To localize Drill files, the client tool requires a copy of the original
Drill distribution archive and the location of your site directory. Assume all
these components reside in a single “master directory” described as $MASTER_DIR
. On the client machine, create the master directory, as shown:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> export MASTER_DIR=/path/to/master/dir
- mkdir $MASTER_DIR
- cd $MASTER_DIR
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">MASTER_DIR</span><span class="o">=</span>/path/to/master/dir
+<span class="nb">mkdir</span> <span class="nv">$MASTER_DIR</span>
+<span class="nb">cd</span> <span class="nv">$MASTER_DIR</span>
</code></pre></div></div>
<p>To build the master directory, you will:</p>
+
<ul>
<li>Download the Drill archive to $MASTER_DRILL.</li>
<li>Unpack the archive to create $DRILL_HOME.</li>
@@ -1450,79 +1451,39 @@ custom code resides in the site directory; do not
change anything in the Drill
<p>The following steps provide the instructions for building the master
directory:</p>
<h3 id="install-drill">Install Drill</h3>
+
<p>These instructions assume you are installing Drill as part of the
Drill-on-YARN
setup. You can use your existing Drill 1.8 or later install as long as it
meets the required criteria.</p>
<p>Follow the Drill <a href="/zh/docs/install-drill-introduction/">install
directions</a> to install Drill on your client host. The install steps are
different for YARN than for the Embedded or Cluster install.</p>
<ol>
- <li>
- <p>Select a Drill version. The name is used in multiple places below. For
convenience, define an environment variable for the name:</p>
-
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code> export
DRILL_NAME=apachedrillx.y.z Replace x.y.z with the selected version.
+ <li>Select a Drill version. The name is used in multiple places below. For
convenience, define an environment variable for the name:
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">DRILL_NAME</span><span class="o">=</span>apachedrillx.y.z
</code></pre></div> </div>
+ <p>Replace x.y.z with the selected version.</p>
</li>
- <li>
- <p>Download the Drill version.</p>
-
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code> wget \
http://apache.mesi.com.ar/drill/drillx.y.z/$DRILL_NAME.tar.gz Or use
-
- curl o $DRILL_NAME.tar.gz
\http://apache.mesi.com.ar/drill/drillx.y.z/$DRILL_NAME.tar.gz Again, replace
x.y.z with the selected version.
+ <li>Download the Drill version.
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>wget http://apache.mesi.com.ar/drill/drillx.y.z/<span
class="nv">$DRILL_NAME</span>.tar.gz
</code></pre></div> </div>
+ <p>Or use</p>
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>curl <span class="nt">-o</span> <span
class="nv">$DRILL_NAME</span>.tar.gz <span
class="se">\h</span>ttp://apache.mesi.com.ar/drill/drillx.y.z/<span
class="nv">$DRILL_NAME</span>.tar.gz
+</code></pre></div> </div>
+ <p>Again, replace x.y.z with the selected version.</p>
</li>
- <li>
- <p>Expand the Drill distribution into this folder to create the master
directory</p>
-
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code> tar -xzf
$DRILL_NAME.tar.gz
+ <li>Expand the Drill distribution into this folder to create the master
directory
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">tar</span> <span
class="nt">-xzf</span> <span class="nv">$DRILL_NAME</span>.tar.gz
</code></pre></div> </div>
</li>
- <li>
- <p>For ease of following the remaining steps, call your expanded Drill
folder $DRILL_HOME :</p>
-
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code> export
DRILL_HOME=$MASTER_DIR/$DRILL_NAME
+ <li>For ease of following the remaining steps, call your expanded Drill
folder $DRILL_HOME :
+ <div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">DRILL_HOME</span><span class="o">=</span><span
class="nv">$MASTER_DIR</span>/<span class="nv">$DRILL_NAME</span>
</code></pre></div> </div>
</li>
</ol>
-<p>Your master directory should now contain the original Drill archive along
with an expanded copy
-of that archive.</p>
-
-<h3 id="create-the-site-directory">Create the Site Directory</h3>
-
-<p>The site directory contains your site-specific files for Drill. If you are
converting an existing Drill install, see the “Site Directory” section.</p>
-
-<p>Create the site directory within your master directory:</p>
-
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> export DRILL_SITE=$MASTER_DIR/site
- mkdir $DRILL_SITE
-</code></pre></div></div>
-
-<p>When you do a fresh install, Drill includes a conf directory under
$DRILL_HOME. Use the files
-in that directory to create your site directory.</p>
-
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> cp $DRILL_HOME/conf/drilloverrideexample.conf
\
- $DRILL_SITE/drilloverride.conf
- cp $DRILL_HOME/conf/drill-on-yarnexample.conf \
- $DRILL_SITE/drill-on-yarn.conf
- cp $DRILL_HOME/conf/drillenv.sh $DRILL_SITE
-</code></pre></div></div>
-
-<p>Edit the above configuration files as per the Drill install instructions,
and the Drill-on-YARN
-instructions below. (Note that, under YARN, you set the Drill memory limits in
-drill-on-yarn.sh instead of drillenv.sh.)</p>
-
-<p>If you develop custom code (data sources or user-defined functions (UDFs)),
place the Java JAR
-files in $DRILL_SITE/jars.</p>
+<p>Your master directory should now contain the original Drill archive along
with an expanded copy of that archive. You may now follow the instructions on
how to create the site directory, see <a
href="/zh/docs/installing-drill-on-the-cluster/">Installing Drill on the
Cluster</a>.</p>
-<p>Your master directory should now contain the Drill software and your site
directory with default files. You will use the site directory each time you
start Drill by using the –site
-(or –config) option. The following are examples, do not run these yet:</p>
-
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit.sh --site $DRILL_SITE
- drill-on-yarn.sh --site $DRILL_SITE
-</code></pre></div></div>
-
-<p>Once you have created your site directory, upgrades are trivial. Simply
delete the old Drill
-distribution and install the new one. Your files remain unchanged in the site
directory.</p>
+<p>Edit the configuration files as per the Drill install instructions, and the
Drill-on-YARN instructions below. Note that, under YARN, you set the Drill
memory limits in drill-on-yarn.sh instead of drillenv.sh.</p>
<h3 id="configure-drill-on-yarn-using-existing-settings">Configure
Drill-on-YARN using Existing Settings</h3>
@@ -1532,16 +1493,16 @@ environment in which to learn Drill configuration.
These instructions assume tha
<p>From $PROD_DRILL_HOME, copy the following to corresponding locations in
$DRILL_SITE:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> cp $PROD_DRILL_HOME/conf/drilloverride.conf
$DRILL_SITE
- cp $PROD_DRILL_HOME/conf/drillenv.sh $DRILL_SITE
- cp $PROD_DRILL_HOME/jars/3rdparty/ yourJarName .jar $DRILL_SITE/jars
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">cp</span> <span
class="nv">$PROD_DRILL_HOME</span>/conf/drilloverride.conf <span
class="nv">$DRILL_SITE</span>
+<span class="nb">cp</span> <span
class="nv">$PROD_DRILL_HOME</span>/conf/drillenv.sh <span
class="nv">$DRILL_SITE</span>
+<span class="nb">cp</span> <span
class="nv">$PROD_DRILL_HOME</span>/jars/3rdparty/ yourJarName .jar <span
class="nv">$DRILL_SITE</span>/jars
</code></pre></div></div>
<h3 id="create-your-cluster-configuration-file">Create Your Cluster
Configuration File</h3>
+
<p>The next step is to specify additional configuration which Drill-on-YARN
requires to launch your Drill cluster.</p>
-<p>Start by editing $DRILL_SITE/drill-on-yarn.conf using your favorite editor.
This file is
-in the same HOCON format used by drill-override.conf.</p>
+<p>Start by editing $DRILL_SITE/drill-on-yarn.conf using your favorite editor.
This file is in the same HOCON format used by drill-override.conf.</p>
<p>Consult $DRILL_HOME/conf/drill-on-yarn-example.conf as an example. However,
do not just copy the example file; instead, copy only the specific
configuration settings that you need; the others will automatically take the
Drill-defined
@@ -1550,23 +1511,23 @@ default values.</p>
<p>The following sections discuss each configuration option that you must
set.</p>
<h3 id="drill-resource-configuration">Drill Resource Configuration</h3>
-<p>The two key Drill memory parameters are Java heap size and direct memory.
In a non-YARN
-cluster, you set these in $DRILL_HOME/conf/drillenv.sh as follows (shown with
the
+
+<p>The two key Drill memory parameters are Java heap size and direct memory.
In a non-YARN cluster, you set these in $DRILL_HOME/conf/drillenv.sh as follows
(shown with the
default values):</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> DRILL_MAX_DIRECT_MEMORY="8G"
- DRILL_HEAP="4G"
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nv">DRILL_MAX_DIRECT_MEMORY</span><span
class="o">=</span><span class="s2">"8G"</span>
+<span class="nv">DRILL_HEAP</span><span class="o">=</span><span
class="s2">"4G"</span>
</code></pre></div></div>
<p>Drill-on-YARN uses a different mechanism to set these values. You set the
values in
drill-on-yarn.conf , then Drill-on-YARN copies the values into the environment
variables
when launching each Drillbit.</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit: {
- heap: "4G"
- max-direct-memory: "8G"
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drillbit</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">heap</span><span class="p">:</span><span
class="w"> </span><span class="s2">"4G"</span><span class="w">
+ </span><span class="nl">max-direct-memory</span><span
class="p">:</span><span class="w"> </span><span class="s2">"8G"</span><span
class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>To create the Drill-on-YARN setup, simply copy the values directly from
your pre-YARN
drillenv.sh file into the above configuration. (Drill-on-YARN copies the
values back into
@@ -1577,31 +1538,32 @@ is simply the sum of the heap and direct memory.
However, if you are using custo
memory usage as well. The YARN memory is expressed in MB. For example, for the
default
settings above, we need 12G of memory or 12288MB:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit: {
- memory-mb: 6144
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drillbit</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">memory-mb</span><span class="p">:</span><span
class="w"> </span><span class="mi">6144</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>Finally, you must determine how much CPU to grant to Drill. Drill is a CPU
intensive
operation and greatly benefits from each additional core. However, you can
limit Drill’s CPU usage under YARN by specifying the number of YARN virtual
cores (vcores) to allocate to Drill:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit: {
- vcores: 4
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drillbit</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">vcores</span><span class="p">:</span><span
class="w"> </span><span class="mi">4</span><span class="w">
+</span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>Note that in the above, each configuration setting was shown separately. In
your actual file,
however, they appear within a single group as follows:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drillbit: {
- heap: "4G"
- max-direct-memory: "8G"
- memory-mb: 6144
- vcores: 4
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drillbit</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">heap</span><span class="p">:</span><span
class="w"> </span><span class="s2">"4G"</span><span class="w">
+ </span><span class="nl">max-direct-memory</span><span
class="p">:</span><span class="w"> </span><span class="s2">"8G"</span><span
class="w">
+ </span><span class="nl">memory-mb</span><span class="p">:</span><span
class="w"> </span><span class="mi">6144</span><span class="w">
+ </span><span class="nl">vcores</span><span class="p">:</span><span
class="w"> </span><span class="mi">4</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<h3 id="drillbit-cluster-configuration">Drillbit Cluster Configuration</h3>
+
<p>Drill-on-YARN uses the concept of a “cluster group” of Drillbits to
describe the set of Drillbits to launch. A group can be one of three kinds:</p>
<ul>
@@ -1613,63 +1575,66 @@ however, they appear within a single group as
follows:</p>
<p>For a basic group, you need only specify the group type and the number of
Drillbits to launch:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> cluster: [
- {
- name: "mypool"
- type: "basic"
- count: 1
- }
- ]
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">cluster</span><span
class="p">:</span><span class="w"> </span><span class="p">[</span><span
class="w">
+ </span><span class="p">{</span><span class="w">
+ </span><span class="nl">name</span><span class="p">:</span><span
class="w"> </span><span class="s2">"mypool"</span><span class="w">
+ </span><span class="nl">type</span><span class="p">:</span><span
class="w"> </span><span class="s2">"basic"</span><span class="w">
+ </span><span class="nl">count</span><span class="p">:</span><span
class="w"> </span><span class="mi">1</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span><span class="p">]</span><span class="w">
+</span></code></pre></div></div>
<p>The above syntax says that pools is a list that contains a series of pool
objects contained in
braces. In this release, however, Drill supports just one pool.</p>
<h3 id="zookeeper-configuration">ZooKeeper Configuration</h3>
+
<p>Drill uses ZooKeeper to coordinate between Drillbits. When run under YARN,
the Drill
Application Master uses ZooKeeper to monitor Drillbit health. Drill-on-YARN
reads your
$DRILL_SITE/drilloverride.conf file for ZooKeeper settings.</p>
<h3 id="configure-the-drill-distribution-archive">Configure the Drill
Distribution Archive</h3>
+
<p>Next configure the name of the Drill distribution archive that you
downloaded earlier.</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> drill-install: {
- client-path: "archive-path"
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drill-install</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">client-path</span><span class="p">:</span><span
class="w"> </span><span class="s2">"archive-path"</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>Where archive-path is the location of your archive. In our example, this is
$MASTER_DIR/apache-drill.x.y.z.tar.gz. Use the full name of the master
directory, not the environment variable. (Substitute your actual version number
for x.y.z.)</p>
<h3 id="select-the-distributed-file-system-location">Select the Distributed
File System Location</h3>
+
<p>Drill copies your archive onto your distributed file system (such as HDFS)
in a location you
provide. Set the DFS options as follows:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> dfs: {
- connection: "hdfs://localhost/"
- dir: "/user/drill"
- }
-</code></pre></div></div>
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">dfs</span><span
class="p">:</span><span class="w"> </span><span class="p">{</span><span
class="w">
+ </span><span class="nl">connection</span><span class="p">:</span><span
class="w"> </span><span class="s2">"hdfs://localhost/"</span><span class="w">
+ </span><span class="nl">dir</span><span class="p">:</span><span
class="w"> </span><span class="s2">"/user/drill"</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
<p>Drill can read the connection information from your Hadoop configuration
files ($HADOOP_HOME/etc/hadoop/coresite.xml ). Or, you can specify a connection
directly in the Drill cluster configuration file using the connection
attribute. Then, choose a DFS file system location. Drill uses “ /user/drill ”
by default.</p>
<h3 id="hadoop-location">Hadoop Location</h3>
+
<p>Apache Drill users must tell Drill-on-YARN the location of your Hadoop
install. Set the
HADOOP_HOME environment variable in $DRILL_SITE/drillenv.sh to point to your
Hadoop installation:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> export HADOOP_HOME= /path/to/hadoop-home
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">HADOOP_HOME</span><span class="o">=</span> /path/to/hadoop-home
</code></pre></div></div>
<p>This assumes that Hadoop configuration is in the default location:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> $HADOOP_HOME/etc/hadoop
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nv">$HADOOP_HOME</span>/etc/hadoop
</code></pre></div></div>
<p>If your configuration is elsewhere, set HADOOP_CONF_DIR instead:</p>
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre
class="highlight"><code> export HADOOP_CONF_DIR= /path/to/hadoop-config
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">HADOOP_CONF_DIR</span><span class="o">=</span> /path/to/hadoop-config
</code></pre></div></div>
-
<div class="doc-nav">
diff --git a/zh/docs/date-time-functions-and-arithmetic/index.html
b/zh/docs/date-time-functions-and-arithmetic/index.html
index 83c10de..984ff99 100644
--- a/zh/docs/date-time-functions-and-arithmetic/index.html
+++ b/zh/docs/date-time-functions-and-arithmetic/index.html
@@ -1509,7 +1509,7 @@
<h2 id="age">AGE</h2>
<div class="admonition important">
<p class="first admonition-title">Important</p>
- <p class="last"> This function is buggy in the current release. Please make
use of alternative date functions until this notice is removed. </p>
+ <p class="last"> DRILL-7926: this function is buggy in the current release.
Please make use of alternative date functions until the mentioned issue is
resolved. </p>
</div>
<p>Returns the interval between two timestamps or subtracts a timestamp from
midnight of the current date.</p>
diff --git a/zh/docs/installing-drill-on-the-cluster/index.html
b/zh/docs/installing-drill-on-the-cluster/index.html
index 52d9cc2..1643433 100644
--- a/zh/docs/installing-drill-on-the-cluster/index.html
+++ b/zh/docs/installing-drill-on-the-cluster/index.html
@@ -1418,6 +1418,8 @@
<p>You install Drill on nodes in the cluster, configure a cluster ID,
and add Zookeeper information, as described in the following steps:</p>
+<h3 id="install">Install</h3>
+
<ol>
<li>Download the latest version of Apache Drill <a
href="http://apache.mirrors.hoobly.com/drill/drill-1.19.0/apache-drill-1.19.0.tar.gz">here</a>
or from the <a
href="http://www.apache.org/dyn/closer.cgi/drill/drill-1.19.0/apache-drill-1.19.0.tar.gz">Apache
Drill mirror site</a> with the command appropriate for your system:
<ul>
@@ -1425,23 +1427,61 @@
<li><code class="language-plaintext highlighter-rouge">curl -o
apache-drill-1.19.0.tar.gz
http://apache.mirrors.hoobly.com/drill/drill-1.19.0/apache-drill-1.19.0.tar.gz</code></li>
</ul>
</li>
- <li>Extract the tarball to the directory of your choice, such as <code
class="language-plaintext highlighter-rouge">/opt</code>:<br />
- <code class="language-plaintext highlighter-rouge">tar -xzvf
apache-drill-<version>.tar.gz</code></li>
- <li>
- <p>In <code class="language-plaintext
highlighter-rouge">drill-override.conf,</code> use the Drill <code
class="language-plaintext highlighter-rouge">cluster ID</code>, and provide
ZooKeeper host names and port numbers to configure a connection to your
ZooKeeper quorum.<br />
- a. Edit <code class="language-plaintext
highlighter-rouge">drill-override.conf</code> located in the <code
class="language-plaintext highlighter-rouge">conf</code> directory.<br />
- b. Provide a unique <code class="language-plaintext
highlighter-rouge">cluster-id</code> and the ZooKeeper host names and port
numbers in <code class="language-plaintext
highlighter-rouge">zk.connect</code>. If you install Drill on multiple nodes,
assign the same <code class="language-plaintext highlighter-rouge">cluster
ID</code> to each Drill node so that all Drill nodes share the same ID. The
default ZooKeeper port on the open source version of Apache Drill is 2181.</p>
+ <li>Extract the tarball to the directory of your choice, such as <code
class="language-plaintext highlighter-rouge">/opt</code>:
+<code class="language-plaintext highlighter-rouge">tar -xf
apache-drill-<version>.tar.gz</code></li>
+</ol>
- <p><strong>Example</strong></p>
+<h3 id="optional-create-the-site-directory">(Optional) Create the site
directory</h3>
- <div class="language-plaintext highlighter-rouge"><div
class="highlight"><pre class="highlight"><code>drill.exec:{
- cluster-id: "<mydrillcluster>",
- zk.connect:
"<zkhostname1>:<port>,<zkhostname2>:<port>,<zkhostname3>:<port>"
-}
-</code></pre></div> </div>
- </li>
+<p>The site directory contains your site-specific files for Drill. Putting
these in a separate directory to the Drill installation means that upgrading
Drill will not clobber your configuration and custom code. It is possible to
skip this step, meaning that your configuration and custom code will live in
the <code class="language-plaintext highlighter-rouge">$DRILL_HOME/conf</code>
and <code class="language-plaintext
highlighter-rouge">$DRILL_HOME/jars/3rdparty</code> subdirectories re [...]
+
+<p>Create the site directory in a suitable location, e.g.</p>
+
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">export </span><span
class="nv">DRILL_SITE</span><span class="o">=</span>/etc/drill-site
+<span class="nb">mkdir</span> <span class="nv">$DRILL_SITE</span>
+</code></pre></div></div>
+
+<p>When you do a fresh install, Drill includes a conf directory under
$DRILL_HOME. Use the files
+in that directory to create your site directory.</p>
+
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nb">cp</span> <span
class="nv">$DRILL_HOME</span>/conf/drilloverrideexample.conf <span
class="se">\</span>
+<span class="nv">$DRILL_SITE</span>/drilloverride.conf
+<span class="nb">cp</span> <span
class="nv">$DRILL_HOME</span>/conf/drill-on-yarnexample.conf <span
class="se">\</span>
+<span class="nv">$DRILL_SITE</span>/drill-on-yarn.conf
+<span class="nb">cp</span> <span
class="nv">$DRILL_HOME</span>/conf/drillenv.sh <span
class="nv">$DRILL_SITE</span>
+</code></pre></div></div>
+
+<p>You will use the site directory each time you start Drill by using the
<code class="language-plaintext highlighter-rouge">--site</code> (or <code
class="language-plaintext highlighter-rouge">--config</code>) option. The
following are examples.</p>
+
+<div class="language-sh highlighter-rouge"><div class="highlight"><pre
class="highlight"><code>drillbit.sh <span class="nt">--site</span> <span
class="nv">$DRILL_SITE</span>
+drill-on-yarn.sh <span class="nt">--site</span> <span
class="nv">$DRILL_SITE</span>
+</code></pre></div></div>
+
+<p>Once you have created your site directory, upgrades are trivial. Simply
delete the old Drill
+distribution and install the new one. Your files remain unchanged in the site
directory.</p>
+
+<h3 id="zookeeper-configuration">ZooKeeper configuration</h3>
+
+<p>In <code class="language-plaintext
highlighter-rouge">drill-override.conf,</code> use the Drill <code
class="language-plaintext highlighter-rouge">cluster ID</code>, and provide
ZooKeeper host names and port numbers to configure a connection to your
ZooKeeper quorum.</p>
+
+<ol>
+ <li>Edit <code class="language-plaintext
highlighter-rouge">drill-override.conf</code> located in the <code
class="language-plaintext highlighter-rouge">conf</code> directory.</li>
+ <li>Provide a unique <code class="language-plaintext
highlighter-rouge">cluster-id</code> and the ZooKeeper host names and port
numbers in <code class="language-plaintext
highlighter-rouge">zk.connect</code>. If you install Drill on multiple nodes,
assign the same cluster ID to each Drill node so that all Drill nodes share the
same ID. The default ZooKeeper port on the open source version of Apache Drill
is 2181.</li>
</ol>
+<p><strong>Example</strong></p>
+
+<div class="language-hocon highlighter-rouge"><div class="highlight"><pre
class="highlight"><code><span class="nl">drill.exec</span><span
class="p">:{</span><span class="w">
+ </span><span class="nl">cluster-id</span><span class="p">:</span><span
class="w"> </span><span class="s2">"<mydrillcluster>"</span><span
class="p">,</span><span class="w">
+ </span><span class="nl">zk.connect</span><span class="p">:</span><span
class="w"> </span><span
class="s2">"<zkhostname1>:<port>,<zkhostname2>:<port>,<zkhostname3>:<port>"</span><span
class="w">
+</span><span class="p">}</span><span class="w">
+</span></code></pre></div></div>
+
+<h3 id="custom-jars">Custom JARs</h3>
+
+<p>If you develop custom code (data sources or user-defined functions, a.k.a.
UDFs), place the Java JAR
+files in $DRILL_SITE/jars.</p>
+