blob: b9c78a7ee7501843aefcd78e0edfeaf38de0c422 [file] [log] [blame]
Yingyi Bu08953b22016-03-25 15:23:26 -07001<!DOCTYPE html>
2<!--
3 | Generated by Apache Maven Doxia at 2016-03-25
4 | Rendered using Apache Maven Fluido Skin 1.3.0
5-->
6<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7 <head>
8 <meta charset="UTF-8" />
9 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
10 <meta name="Date-Revision-yyyymmdd" content="20160325" />
11 <meta http-equiv="Content-Language" content="en" />
12 <title>AsterixDB &#x2013; Introduction</title>
13 <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
14 <link rel="stylesheet" href="./css/site.css" />
15 <link rel="stylesheet" href="./css/print.css" media="print" />
16
17
18 <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>
19
20
21
22<script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
23 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
24 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
25 })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
26
27 ga('create', 'UA-41536543-1', 'uci.edu');
28 ga('send', 'pageview');</script>
29
30 </head>
31 <body class="topBarDisabled">
32
33
34
35
36 <div class="container-fluid">
37 <div id="banner">
38 <div class="pull-left">
39 <a href="http://asterixdb.apache.org/" id="bannerLeft">
40 <img src="images/asterixlogo.png" alt="AsterixDB"/>
41 </a>
42 </div>
43 <div class="pull-right"> </div>
44 <div class="clear"><hr/></div>
45 </div>
46
47 <div id="breadcrumbs">
48 <ul class="breadcrumb">
49
50
51 <li id="publishDate">Last Published: 2016-03-25</li>
52
53
54
55 <li id="projectVersion" class="pull-right">Version: 0.8.8-incubating</li>
56
57 <li class="divider pull-right">|</li>
58
59 <li class="pull-right"> <a href="index.html" title="Documentation Home">
60 Documentation Home</a>
61 </li>
62
63 </ul>
64 </div>
65
66
67 <div class="row-fluid">
68 <div id="leftColumn" class="span3">
69 <div class="well sidebar-nav">
70
71
72 <ul class="nav nav-list">
73 <li class="nav-header">Documentation</li>
74
75 <li>
76
77 <a href="install.html" title="Installing and Managing AsterixDB using Managix">
78 <i class="none"></i>
79 Installing and Managing AsterixDB using Managix</a>
80 </li>
81
82 <li class="active">
83
84 <a href="#"><i class="none"></i>Deploying AsterixDB using YARN</a>
85 </li>
86
87 <li>
88
89 <a href="aql/primer.html" title="AsterixDB 101: An ADM and AQL Primer">
90 <i class="none"></i>
91 AsterixDB 101: An ADM and AQL Primer</a>
92 </li>
93
94 <li>
95
96 <a href="aql/primer-sql-like.html" title="AsterixDB 101: An ADM and AQL Primer (For SQL Fans)">
97 <i class="none"></i>
98 AsterixDB 101: An ADM and AQL Primer (For SQL Fans)</a>
99 </li>
100
101 <li>
102
103 <a href="aql/js-sdk.html" title="AsterixDB Javascript SDK">
104 <i class="none"></i>
105 AsterixDB Javascript SDK</a>
106 </li>
107
108 <li>
109
110 <a href="aql/datamodel.html" title="Asterix Data Model (ADM)">
111 <i class="none"></i>
112 Asterix Data Model (ADM)</a>
113 </li>
114
115 <li>
116
117 <a href="aql/manual.html" title="Asterix Query Language (AQL)">
118 <i class="none"></i>
119 Asterix Query Language (AQL)</a>
120 </li>
121
122 <li>
123
124 <a href="aql/functions.html" title="AQL Functions">
125 <i class="none"></i>
126 AQL Functions</a>
127 </li>
128
129 <li>
130
131 <a href="aql/allens.html" title="AQL Allen's Relations Functions">
132 <i class="none"></i>
133 AQL Allen's Relations Functions</a>
134 </li>
135
136 <li>
137
138 <a href="aql/similarity.html" title="AQL Support of Similarity Queries">
139 <i class="none"></i>
140 AQL Support of Similarity Queries</a>
141 </li>
142
143 <li>
144
145 <a href="aql/externaldata.html" title="Accessing External Data">
146 <i class="none"></i>
147 Accessing External Data</a>
148 </li>
149
150 <li>
151
152 <a href="feeds/tutorial.html" title="Support for Data Ingestion in AsterixDB">
153 <i class="none"></i>
154 Support for Data Ingestion in AsterixDB</a>
155 </li>
156
157 <li>
158
159 <a href="udf.html" title="Support for User Defined Functions in AsterixDB">
160 <i class="none"></i>
161 Support for User Defined Functions in AsterixDB</a>
162 </li>
163
164 <li>
165
166 <a href="aql/filters.html" title="Filter-Based LSM Index Acceleration">
167 <i class="none"></i>
168 Filter-Based LSM Index Acceleration</a>
169 </li>
170
171 <li>
172
173 <a href="api.html" title="HTTP API to AsterixDB">
174 <i class="none"></i>
175 HTTP API to AsterixDB</a>
176 </li>
177 </ul>
178
179
180
181 <hr class="divider" />
182
183 <div id="poweredBy">
184 <div class="clear"></div>
185 <div class="clear"></div>
186 <div class="clear"></div>
187 <a href="https://code.google.com/p/hyracks/" title="Hyracks" class="builtBy">
188 <img class="builtBy" alt="Hyracks" src="images/hyrax_ts.png" />
189 </a>
190 </div>
191 </div>
192 </div>
193
194
195 <div id="bodyColumn" class="span9" >
196
197 <!-- ! Licensed to the Apache Software Foundation (ASF) under one
198 ! or more contributor license agreements. See the NOTICE file
199 ! distributed with this work for additional information
200 ! regarding copyright ownership. The ASF licenses this file
201 ! to you under the Apache License, Version 2.0 (the
202 ! "License"); you may not use this file except in compliance
203 ! with the License. You may obtain a copy of the License at
204 !
205 ! http://www.apache.org/licenses/LICENSE-2.0
206 !
207 ! Unless required by applicable law or agreed to in writing,
208 ! software distributed under the License is distributed on an
209 ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
210 ! KIND, either express or implied. See the License for the
211 ! specific language governing permissions and limitations
212 ! under the License.
213 ! --><h1>Introduction</h1>
214<div class="section">
215<h2><a name="Table_of_Contents"></a><a name="toc" id="toc">Table of Contents</a></h2>
216
217<ul>
218
219<li><a href="#arch">Architecture Overview</a></li>
220
221<li><a href="#prereq">Prerequisites</a></li>
222
223<li><a href="#tut">Tutorial Installation</a></li>
224
225<li><a href="#faq">FAQ and Common Issues</a></li>
226
227<li><a href="#detail">Reference guide to AsterixDB&#x2019;s YARN Client</a></li>
228</ul>
229<p>This is a guide describing how to deploy AsterixDB onto a YARN-based environment.</p></div>
230<div class="section">
231<h2><a name="AsterixDB_and_the_YARN_environment"></a><a name="arch" id="arch">AsterixDB and the YARN environment</a></h2>
232<p>AsterixDB uses a shared-nothing architecture and local file-based storage- not HDFS. Hence we are reliant on the local storage on each node (&#x2018;iodevices&#x2019; in AsterixDB ). In YARN there are 3 main types of storage available: </p>
233
234<ul>
235
236<li>HDFS file storage (only suitable for long-lived artifacts, can be slower than local disk)</li>
237
238<li>Ephemeral container storage that is cleaned by YARN after a container exits (unsuitable except for transient artifacts)</li>
239
240<li>Node-local destinations not managed by YARN, but which are accesable by the container and live beyond its termination.</li>
241</ul>
242<p>AsterixDB uses only the last type of storage, which is available with both the DefaultContainerExecutor and LinuxContainerExecutor. However keep in mind that with the DefaultContainerExecutor, the directory must be accessable by the same process that the YARN NodeManager is running as, while with the LinuxContainerExecutor it must be accessable by the unix user who is running the job.</p></div>
243<div class="section">
244<h2><a name="Prerequisites"></a><a name="prereq" id="prereq">Prerequisites</a></h2>
245<p>For this tutorial it will be assumed that we have a YARN cluster with the proper environment variables set. To test this, try running the DistributedShell example that is distributed as part of Apache Hadoop. If that sample application can be run successfully then the environment should be acceptable for launching AsterixDB on to your YARN-enabled cluster.</p>
246<div class="section">
247<h3><a name="Vagrant_and_Puppet_Virtualized_cluster_for_Tutorial"></a>Vagrant and Puppet Virtualized cluster for Tutorial</h3>
248<p>For the purposes of this tutorial, a virtualized cluster that matches all of the tutorial configurations can be found at <a class="externalLink" href="https://github.com/parshimers/yarn-sample-cluster">https://github.com/parshimers/yarn-sample-cluster</a>. It requires a machine with about 4-8GB of RAM to run. To start with this cluster, first clone the repository:</p>
249
250<div class="source">
251<div class="source">
252<pre> &#x21aa; git clone https://github.com/parshimers/yarn-sample-cluster.git
253 Cloning into 'yarn-sample-cluster'...
254 remote: Counting objects: 490, done.
255 remote: Compressing objects: 100% (315/315), done.
256 remote: Total 490 (delta 152), reused 490 (delta 152)
257 Receiving objects: 100% (490/490), 521.34 KiB | 201.00 KiB/s, done.
258 Resolving deltas: 100% (152/152), done.
259 Checking connectivity... done.
260</pre></div></div>
261<p>If the &#x2018;hostmanager&#x2019; plugin for Vagrant isn&#x2019;t already installed, install it like so:</p>
262
263<div class="source">
264<div class="source">
265<pre> &#x21aa; vagrant plugin install vagrant-hostmanager
266 Installing the 'vagrant-hostmanager' plugin. This can take a few minutes...
267 Installed the plugin 'vagrant-hostmanager (1.5.0)'!
268</pre></div></div>
269<p>Then start the tutorial cluster. The hostmanger plugin may ask for sudo at some point, because it updates your hosts file to include the virtual machines.</p>
270
271<div class="source">
272<div class="source">
273<pre> &#x21aa; vagrant up
274 Bringing machine 'nc2' up with 'virtualbox' provider...
275 Bringing machine 'nc1' up with 'virtualbox' provider...
276 Bringing machine 'cc' up with 'virtualbox' provider...
277 ...
278</pre></div></div>
Ian Maxonb0e7b1f2017-01-17 15:17:34 -0800279<p>Once vagrant returns, the environment will be ready. The working directory with the Vagrantfile is also visible to each of the virtual machines (in the /vagrant directory), so we will unzip the Asterix binaries here as well for easy access. The YARN binary can be found on the AsterixDB <a class="externalLink" href="https://asterixdb.apache.org/download.html">downloads page</a></p>
Yingyi Bu08953b22016-03-25 15:23:26 -0700280
281<div class="source">
282<div class="source">
283<pre>&#x21aa; unzip -d asterix-yarn/ asterix-yarn-binary-assembly.zip
284...
285</pre></div></div>
286<p>To log into the node from which we will run the rest of the tutorial, use &#x2018;vagrant ssh&#x2019; to get to the CC node and move to the YARN client&#x2019;s location:</p>
287
288<div class="source">
289<div class="source">
290<pre> &#x21aa; vagrant ssh cc
291 [vagrant@cc ~]$
292 [vagrant@cc ~]$ cd /vagrant/asterix-yarn
293 [vagrant@cc asterix-yarn]$
294</pre></div></div>
295<h1><a name="tut" id="tut">Tutorial installation</a></h1></div></div>
296<div class="section">
297<h2><a name="Configuration"></a>Configuration</h2>
298<p>To deploy AsterixDB onto a YARN cluster, we need to construct a configuration file that describes the resources that will be requested from YARN for AsterixDB. </p>
299
300<div class="source">
301
302<div class="source">
303<pre>
304<img src="images/yarn_clust.png" alt="Illustration of a simple YARN cluster with AsterixDB processes." />
305<i>Fig. 1</i>: Illustration of a simple YARN cluster with AsterixDB processes and their locations
306</pre></div>
307</div>
308<p>This AsterixDB cluster description file corresponds to the above deployed scenario.</p>
309
310<div class="source">
311<div class="source">
312<pre> &lt;cluster xmlns=&quot;yarn_cluster&quot;&gt;
313 &lt;name&gt;my_awesome_instance&lt;/name&gt;
314 &lt;txn_log_dir&gt;/home/yarn/&lt;/txn_log_dir&gt;
315 &lt;iodevices&gt;/home/yarn/&lt;/iodevices&gt;
316 &lt;store&gt;asterix-data&lt;/store&gt;
317 &lt;master_node&gt;
318 &lt;id&gt;cc&lt;/id&gt;
319 &lt;client_ip&gt;10.10.0.2&lt;/client_ip&gt;
320 &lt;cluster_ip&gt;10.10.0.2&lt;/cluster_ip&gt;
321 &lt;client_port&gt;1098&lt;/client_port&gt;
322 &lt;cluster_port&gt;1099&lt;/cluster_port&gt;
323 &lt;http_port&gt;8888&lt;/http_port&gt;
324 &lt;/master_node&gt;
325 &lt;node&gt;
326 &lt;id&gt;nc1&lt;/id&gt;
327 &lt;cluster_ip&gt;10.10.0.3&lt;/cluster_ip&gt;
328 &lt;/node&gt;
329 &lt;node&gt;
330 &lt;id&gt;nc2&lt;/id&gt;
331 &lt;cluster_ip&gt;10.10.0.4&lt;/cluster_ip&gt;
332 &lt;/node&gt;
333 &lt;metadata_node&gt;nc1&lt;/metadata_node&gt;
334 &lt;/cluster&gt;
335</pre></div></div>
336<p>In this example we have 3 NCs and one CC. Each node is defined by a unique name (not necessarily hostname) and an IP on which AsterixDB nodes will listen and communicate with eachother. This is the &#x2018;cluster_ip&#x2019; parameter. The &#x2018;client_ip&#x2019; parameter is the interface on which client-facing services are presented, for example the web interface. For the next step this file will be saved as &#x2018;my_awesome_cluster_desc.xml&#x2019; in the configs directory.</p></div>
337<div class="section">
338<h2><a name="Installing_and_starting_the_instance"></a>Installing and starting the instance</h2>
339<p>With this configuration in hand, the YARN client can be used to deploy AsterixDB onto the cluster:</p>
340
341<div class="source">
342<div class="source">
343<pre> [vagrant@cc asterix-yarn]$ bin/asterix -n my_awesome_instance -c configs/my_awesome_cluster_desc.xml install
344 Waiting for new AsterixDB Instance to start .
345 Asterix successfully deployed and is now running.
346</pre></div></div>
347<p>The instance will be visible in the YARN RM similar to the below image
348<div class="source"> </p>
349<div class="source">
350<pre> <img src="images/running_inst.png" alt="Illustration of a simple YARN cluster with AsterixDB processes." /> <i>Fig. 2</i>: Hadoop YARN Resource Manager dashboard with running AsterixDB instance </pre></div> </div>
351<p>Once the client returns success, the instance is now ready to be used. We can now use the asterix instance at the CC&#x2019;s IP (10.10.0.2), on the default port (19001).</p>
352
353<div class="source">
354
355<div class="source">
356<pre>
357<img src="images/asterix_webui.png" alt="Illustration of a simple YARN cluster with AsterixDB processes." />
358<i>Fig. 3</i>: AsterixDB Web User Interface
359</pre></div>
360</div>
361<p>From here, to try things out we could run the ADM &amp; AQL 101 tutorial or any other sample workload.</p></div>
362<div class="section">
363<h2><a name="Stopping_the_instance"></a>Stopping the instance</h2>
364<p>To stop the instance that was just deployed, the <tt>stop</tt> command is used:</p>
365
366<div class="source">
367<div class="source">
368<pre> [vagrant@cc asterix-yarn]$ bin/asterix -n my_awesome_instance stop
369 Stopping instance my_awesome_instance
370</pre></div></div>
371<p>This attempts a graceful shutdown of the instance. If for some reason this does not succeed, the <tt>kill</tt> action can be used to force shutdown in a similar fashion:</p>
372
373<div class="source">
374<div class="source">
375<pre> [vagrant@cc asterix-yarn]$ bin/asterix -n my_awesome_instance kill
376 Are you sure you want to kill this instance? In-progress tasks will be aborted
377 Are you sure you want to do this? (yes/no): yes
378</pre></div></div></div>
379<div class="section">
380<h2><a name="Managing_stopped_instances"></a>Managing stopped instances</h2>
381<p>After stopping the instance no containers on any YARN NodeManagers are allocated. However, the state of the instance is still persisted on the local disks (and to a lesser extent, HDFS) of each machine where a Node Controller was deployed, in the iodevices and transaction log folders. Every instance, running or not can be viewed via the <tt>describe</tt> action:</p>
382
383<div class="source">
384<div class="source">
385<pre> [vagrant@cc asterix-yarn]$ bin/asterix describe
386 Existing AsterixDB instances:
387 Instance my_awesome_instance is stopped
388</pre></div></div></div>
389<div class="section">
390<h2><a name="Starting_inactive_instances"></a>Starting inactive instances</h2>
391<p>To start the instance back up once more, the <tt>start</tt> action is used:</p>
392
393<div class="source">
394<div class="source">
395<pre> [vagrant@cc asterix-yarn]$ bin/asterix -n my_awesome_instance start
396 Waiting for AsterixDB instance to resume .
397 Asterix successfully deployed and is now running.
398</pre></div></div></div>
399<div class="section">
400<h2><a name="Shutting_down_vagrant"></a>Shutting down vagrant</h2>
401<p>To stop the virtual machines, issue the vagrant halt command from the host machine in the folder containing the Vagrantfile:</p>
402
403<div class="source">
404<div class="source">
405<pre> &#x21aa; vagrant halt
406</pre></div></div>
407<h1><a name="detail" id="detail">Listing of Commands and Options</a></h1></div>
408<div class="section">
409<h2><a name="Overview"></a>Overview</h2>
410<p>All commands take the format</p>
411
412<div class="source">
413<div class="source">
414<pre> asterix [action-specific option] [action]
415</pre></div></div>
416<div class="section">
417<h3><a name="Technical_details"></a>Technical details</h3>
418<p>AsterixDB&#x2019;s YARN client is based on static allocation of containers within Node Managers based on IP. The AM and CC processes are currently not integrated in any fashion.</p>
419<p>The <tt>asterix</tt> command itself is simply a wrapper/launcher around the AsterixClient java class, that provides time-saving default parameters. It is possible to run the client directly with <tt>java -jar</tt> given the correct options as well.</p></div></div>
420<div class="section">
421<h2><a name="Actions"></a>Actions</h2>
422<p>Below is a description of the various actions available via the AsterixDB YARN client</p>
423
424<table border="0" class="table table-striped">
425 <thead>
426
427<tr class="a">
428
429<th>Action </th>
430
431<th>Description </th>
432 </tr>
433 </thead>
434 <tbody>
435
436<tr class="b">
437
438<td><tt>start</tt> </td>
439
440<td>Starts an existing instance specified by the -name flag </td>
441 </tr>
442
443<tr class="a">
444
445<td><tt>install</tt> </td>
446
447<td>Deploys and starts an AsterixDB instance described by the config specified in the -c parameter, and named by the -n parameter </td>
448 </tr>
449
450<tr class="b">
451
452<td><tt>stop</tt> </td>
453
454<td>Attempts graceful shutdown of an AsterixDB instance specified in the -name parameter </td>
455 </tr>
456
457<tr class="a">
458
459<td><tt>kill</tt> </td>
460
461<td>Forcefully stops an instance by asking YARN to terminate all of its containers. </td>
462 </tr>
463
464<tr class="b">
465
466<td><tt>destroy</tt> </td>
467
468<td>Remove the instance specified by -name and all of its stored resources from the cluster </td>
469 </tr>
470
471<tr class="a">
472
473<td><tt>describe</tt> </td>
474
475<td>Show all instances, running or not, visible to the AsterixDB YARN client </td>
476 </tr>
477
478<tr class="b">
479
480<td><tt>backup</tt> </td>
481
482<td>Copies the artifacts from a stopped instance to another directory on HDFS so that the instance can be reverted to that state </td>
483 </tr>
484
485<tr class="a">
486
487<td><tt>restore</tt> </td>
488
489<td>Restores an instance to the state saved in a snapshot </td>
490 </tr>
491
492<tr class="b">
493
494<td><tt>lsbackup</tt> </td>
495
496<td>Lists the stored snapshots from an instance </td>
497 </tr>
498
499<tr class="a">
500
501<td><tt>rmbackup</tt> </td>
502
503<td>Removes a snapshot from HDFS </td>
504 </tr>
505
506<tr class="b">
507
508<td><tt>libinstall</tt></td>
509
510<td>Installs an external library or UDF for use in queries </td>
511 </tr>
512 </tbody>
513</table></div>
514<div class="section">
515<h2><a name="Options"></a>Options</h2>
516<p>Below are all availabe options, and which actions they can be applied to</p>
517
518<table border="0" class="table table-striped">
519 <thead>
520
521<tr class="a">
522
523<th>Option </th>
524
525<th>Long Form </th>
526
527<th>Short Form </th>
528
529<th>Usage </th>
530
531<th>Applicability </th>
532 </tr>
533 </thead>
534 <tbody>
535
536<tr class="b">
537
538<td>Configuration Path </td>
539
540<td><tt>-asterixConf</tt> </td>
541
542<td><tt>-c</tt> </td>
543
544<td><tt>-c [/path/to/file]</tt>. Path to an AsterixDB Cluster Description File </td>
545
546<td>Only required with <tt>create</tt> . A configuration in DFS defines the existance of an instance. </td>
547 </tr>
548
549<tr class="a">
550
551<td>Instance Name </td>
552
553<td><tt>-name</tt> </td>
554
555<td><tt>-n</tt> </td>
556
557<td><tt>-n [instance name]</tt> Name/Identifier for instance. </td>
558
559<td>Required for all actions except <tt>describe</tt> and <tt>lsbackup</tt> </td>
560 </tr>
561
562<tr class="b">
563
564<td>Asterix Binary Path </td>
565
566<td><tt>-asterixTar</tt> </td>
567
568<td><tt>-tar</tt> </td>
569
570<td><tt>-tar [/path/to/binary]</tt> Path to asterix-server binary. </td>
571
572<td>This is the AsterixDB server binary that is distributed and run on the DFS. Usually set by default via the launcher script and cached for each instance. Can be manually set, only used in <tt>create</tt> and <tt>install</tt> with <tt>-r</tt> </td>
573 </tr>
574
575<tr class="a">
576
577<td>Force </td>
578
579<td><tt>-force</tt> </td>
580
581<td><tt>-f</tt> </td>
582
583<td><tt>-f</tt>. Use at your own risk. Disables any sanity-checking during an action. </td>
584
585<td>Can be applied to any action, but is mostly useful in cases where an instance cannot be removed properly via <tt>destroy</tt> and cleanup of DFS files is desired. </td>
586 </tr>
587
588<tr class="b">
589
590<td>Refresh </td>
591
592<td><tt>-refresh</tt> </td>
593
594<td><tt>-r</tt> </td>
595
596<td><tt>-r</tt>. Replaces cached binary with one mentioned in <tt>-tar</tt>. </td>
597
598<td>This only has an effect with the <tt>start</tt> action. It can be used to replace/upgrade the binary cached for an instance on the DFS. </td>
599 </tr>
600
601<tr class="a">
602
603<td>Base Parameters </td>
604
605<td><tt>-baseConf</tt> </td>
606
607<td><tt>-bc</tt> </td>
608
609<td><tt>-bc [path/to/params]</tt>. Specifies parameter file to use during instance creation/alteration. </td>
610
611<td>This file specifies various internal properties of the AsterixDB system, such as Buffer Cache size and Page size, among many others. It can be helpful to tweak parameters in this file, however caution should be exercised in keeping them at sane values. Only used during <tt>alter</tt> and <tt>create</tt>. </td>
612 </tr>
613
614<tr class="b">
615
616<td>External library path </td>
617
618<td><tt>-externalLibs</tt> </td>
619
620<td><tt>-l</tt> </td>
621
622<td><tt>-l [path/to/library]</tt>. Specifies an external library to upload to an existing instance. </td>
623
624<td>Only used in <tt>libinstall</tt>. Specifies the file containing the external function to install </td>
625 </tr>
626
627<tr class="a">
628
629<td>External library dataverse. </td>
630
631<td><tt>-libDataverse</tt> </td>
632
633<td><tt>-ld</tt> </td>
634
635<td><tt>-ld [existing dataverse name]</tt> </td>
636
637<td>Only used in <tt>libinstall</tt>. Specifies the dataverse to install the library in an <tt>-l</tt> option to. </td>
638 </tr>
639
640<tr class="b">
641
642<td>Snapshot ID </td>
643
644<td><tt>-snapshot</tt> </td>
645
646<td>[none] </td>
647
648<td><tt>-snapshot [backup timestamp/ID]</tt> </td>
649
650<td>Used with <tt>rmbackup</tt> and <tt>restore</tt> to specify which backup to perform the respective operation on. </td>
651 </tr>
652 </tbody>
653</table>
654<h1><a name="faq" id="faq">Frequently Asked Questions and Common Issues</a></h1>
655<div class="section">
656<h3><a name="Q:_Where_are_the_AsterixDB_logs_located"></a>Q: Where are the AsterixDB logs located?</h3>
657<p>A: YARN manages the logs for each container. They are visible in the YARN Resource Manager&#x2019;s web interface or through the hadoop command line utilities ( see <a class="externalLink" href="http://hortonworks.com/blog/simplifying-user-logs-management-and-access-in-yarn/">http://hortonworks.com/blog/simplifying-user-logs-management-and-access-in-yarn/</a> for more details). </p></div>
658<div class="section">
659<h3><a name="Q:_Why_does_AsterixDB_fail_to_start_and_the_logs_contain_errors_like_Container_is_running_beyond_virtual_memory_limits._"></a>Q: Why does AsterixDB fail to start, and the logs contain errors like &#x2018;Container is running beyond virtual memory limits.&#x2019; ?</h3>
660<p>A: This is a quirk of YARN&#x2019;s memory management that can be observed on certain operating systems (mainly CentOS). It is benign unless it causes problems of this type. A work around is to set <tt>yarn.nodemanager.vmem-check-enabled</tt> to <tt>false</tt> in the yarn-site.xml configuration for Hadoop YARN. This makes the NodeManagers avoid checking the virtual memory entirely and instead rely on resident set size to check memory usage among containers.</p></div>
661<div class="section">
662<h3><a name="Q:_How_do_I_upgrade_my_existing_instance"></a>Q: How do I upgrade my existing instance?</h3>
663<p>A: This is a complex question. Generally, one can use the <tt>refresh</tt> option to upgrade the version of an extant AsterixDB instance. However one must be cautious- we do not guarantee ABI compatability between releases. Therefore extreme caution should be exercised when attempting to upgrade this way!</p></div>
664<div class="section">
665<h3><a name="Q:_Does_AsterixDB_work_on_YARN_for_Windows"></a>Q: Does AsterixDB work on YARN for Windows?</h3>
666<p>A: In general, yes! It has been done without much real issue. However it is a infrequent use case, so expect the deployment to have some hiccups. We&#x2019;re always listening on the <a class="externalLink" href="mailto:users@asterixdb.incubator.apache.org">users@asterixdb.incubator.apache.org</a> mailing list for any issues.</p></div></div>
667 </div>
668 </div>
669 </div>
670
671 <hr/>
672
673 <footer>
674 <div class="container-fluid">
675 <div class="row span12">Copyright &copy; 2016
676 <a href="http://www.apache.org/">The Apache Software Foundation</a>.
677 All Rights Reserved.
678
679 </div>
680
681 <?xml version="1.0" encoding="UTF-8"?>
682<div class="row-fluid">Apache AsterixDB, AsterixDB, Apache, the Apache
683 feather logo, and the Apache AsterixDB project logo are either
684 registered trademarks or trademarks of The Apache Software
685 Foundation in the United States and other countries.
686 All other marks mentioned may be trademarks or registered
687 trademarks of their respective owners.</div>
688
689
690 </div>
691 </footer>
692 </body>
693</html>