blob: b84a1c3297dfc3baae0f6948a2316445f6a95b47 [file] [log] [blame]
Ian Maxon9c40a662018-02-09 12:42:56 -08001<!DOCTYPE html>
2<!--
3 | Generated by Apache Maven Doxia at 2018-02-09
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="20180209" />
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="./" 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: 2018-02-09</li>
52
53
54
55 <li id="projectVersion" class="pull-right">Version: 0.9.3</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">Get Started - Installation</li>
74
75 <li>
76
77 <a href="ncservice.html" title="Option 1: using NCService">
78 <i class="none"></i>
79 Option 1: using NCService</a>
80 </li>
81
82 <li>
83
84 <a href="ansible.html" title="Option 2: using Ansible">
85 <i class="none"></i>
86 Option 2: using Ansible</a>
87 </li>
88
89 <li>
90
91 <a href="aws.html" title="Option 3: using Amazon Web Services">
92 <i class="none"></i>
93 Option 3: using Amazon Web Services</a>
94 </li>
95
96 <li class="active">
97
98 <a href="#"><i class="none"></i>Option 4: using YARN</a>
99 </li>
100
101 <li>
102
103 <a href="install.html" title="Option 5: using Managix (deprecated)">
104 <i class="none"></i>
105 Option 5: using Managix (deprecated)</a>
106 </li>
107 <li class="nav-header">AsterixDB Primer</li>
108
109 <li>
110
111 <a href="sqlpp/primer-sqlpp.html" title="Option 1: using SQL++">
112 <i class="none"></i>
113 Option 1: using SQL++</a>
114 </li>
115
116 <li>
117
118 <a href="aql/primer.html" title="Option 2: using AQL">
119 <i class="none"></i>
120 Option 2: using AQL</a>
121 </li>
122 <li class="nav-header">Data Model</li>
123
124 <li>
125
126 <a href="datamodel.html" title="The Asterix Data Model">
127 <i class="none"></i>
128 The Asterix Data Model</a>
129 </li>
130 <li class="nav-header">Queries - SQL++</li>
131
132 <li>
133
134 <a href="sqlpp/manual.html" title="The SQL++ Query Language">
135 <i class="none"></i>
136 The SQL++ Query Language</a>
137 </li>
138
139 <li>
140
141 <a href="sqlpp/builtins.html" title="Builtin Functions">
142 <i class="none"></i>
143 Builtin Functions</a>
144 </li>
145 <li class="nav-header">Queries - AQL</li>
146
147 <li>
148
149 <a href="aql/manual.html" title="The Asterix Query Language (AQL)">
150 <i class="none"></i>
151 The Asterix Query Language (AQL)</a>
152 </li>
153
154 <li>
155
156 <a href="aql/builtins.html" title="Builtin Functions">
157 <i class="none"></i>
158 Builtin Functions</a>
159 </li>
160 <li class="nav-header">API/SDK</li>
161
162 <li>
163
164 <a href="api.html" title="HTTP API">
165 <i class="none"></i>
166 HTTP API</a>
167 </li>
168
169 <li>
170
171 <a href="csv.html" title="CSV Output">
172 <i class="none"></i>
173 CSV Output</a>
174 </li>
175 <li class="nav-header">Advanced Features</li>
176
177 <li>
178
179 <a href="aql/fulltext.html" title="Support of Full-text Queries">
180 <i class="none"></i>
181 Support of Full-text Queries</a>
182 </li>
183
184 <li>
185
186 <a href="aql/externaldata.html" title="Accessing External Data">
187 <i class="none"></i>
188 Accessing External Data</a>
189 </li>
190
191 <li>
192
193 <a href="feeds/tutorial.html" title="Support for Data Ingestion">
194 <i class="none"></i>
195 Support for Data Ingestion</a>
196 </li>
197
198 <li>
199
200 <a href="udf.html" title="User Defined Functions">
201 <i class="none"></i>
202 User Defined Functions</a>
203 </li>
204
205 <li>
206
207 <a href="aql/filters.html" title="Filter-Based LSM Index Acceleration">
208 <i class="none"></i>
209 Filter-Based LSM Index Acceleration</a>
210 </li>
211
212 <li>
213
214 <a href="aql/similarity.html" title="Support of Similarity Queries">
215 <i class="none"></i>
216 Support of Similarity Queries</a>
217 </li>
218 </ul>
219
220
221
222 <hr class="divider" />
223
224 <div id="poweredBy">
225 <div class="clear"></div>
226 <div class="clear"></div>
227 <div class="clear"></div>
228 <a href="./" title="AsterixDB" class="builtBy">
229 <img class="builtBy" alt="AsterixDB" src="images/asterixlogo.png" />
230 </a>
231 </div>
232 </div>
233 </div>
234
235
236 <div id="bodyColumn" class="span9" >
237
238 <!-- ! Licensed to the Apache Software Foundation (ASF) under one
239 ! or more contributor license agreements. See the NOTICE file
240 ! distributed with this work for additional information
241 ! regarding copyright ownership. The ASF licenses this file
242 ! to you under the Apache License, Version 2.0 (the
243 ! "License"); you may not use this file except in compliance
244 ! with the License. You may obtain a copy of the License at
245 !
246 ! http://www.apache.org/licenses/LICENSE-2.0
247 !
248 ! Unless required by applicable law or agreed to in writing,
249 ! software distributed under the License is distributed on an
250 ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
251 ! KIND, either express or implied. See the License for the
252 ! specific language governing permissions and limitations
253 ! under the License.
254 ! --><h1>Introduction</h1>
255<div class="section">
256<h2><a name="Table_of_Contents"></a><a name="toc" id="toc">Table of Contents</a></h2>
257
258<ul>
259
260<li><a href="#arch">Architecture Overview</a></li>
261
262<li><a href="#prereq">Prerequisites</a></li>
263
264<li><a href="#tut">Tutorial Installation</a></li>
265
266<li><a href="#faq">FAQ and Common Issues</a></li>
267
268<li><a href="#detail">Reference guide to AsterixDB&#x2019;s YARN Client</a></li>
269</ul>
270<p>This is a guide describing how to deploy AsterixDB onto a YARN-based environment.</p></div>
271<div class="section">
272<h2><a name="AsterixDB_and_the_YARN_environment"></a><a name="arch" id="arch">AsterixDB and the YARN environment</a></h2>
273<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>
274
275<ul>
276
277<li>HDFS file storage (only suitable for long-lived artifacts, can be slower than local disk)</li>
278
279<li>Ephemeral container storage that is cleaned by YARN after a container exits (unsuitable except for transient artifacts)</li>
280
281<li>Node-local destinations not managed by YARN, but which are accesable by the container and live beyond its termination.</li>
282</ul>
283<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>
284<div class="section">
285<h2><a name="Prerequisites"></a><a name="prereq" id="prereq">Prerequisites</a></h2>
286<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>
287<div class="section">
288<h3><a name="Vagrant_and_Puppet_Virtualized_cluster_for_Tutorial"></a>Vagrant and Puppet Virtualized cluster for Tutorial</h3>
289<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>
290
291<div class="source">
292<div class="source">
293<pre> &#x21aa; git clone https://github.com/parshimers/yarn-sample-cluster.git
294 Cloning into 'yarn-sample-cluster'...
295 remote: Counting objects: 490, done.
296 remote: Compressing objects: 100% (315/315), done.
297 remote: Total 490 (delta 152), reused 490 (delta 152)
298 Receiving objects: 100% (490/490), 521.34 KiB | 201.00 KiB/s, done.
299 Resolving deltas: 100% (152/152), done.
300 Checking connectivity... done.
301</pre></div></div>
302<p>If the &#x2018;hostmanager&#x2019; plugin for Vagrant isn&#x2019;t already installed, install it like so:</p>
303
304<div class="source">
305<div class="source">
306<pre> &#x21aa; vagrant plugin install vagrant-hostmanager
307 Installing the 'vagrant-hostmanager' plugin. This can take a few minutes...
308 Installed the plugin 'vagrant-hostmanager (1.5.0)'!
309</pre></div></div>
310<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>
311
312<div class="source">
313<div class="source">
314<pre> &#x21aa; vagrant up
315 Bringing machine 'nc2' up with 'virtualbox' provider...
316 Bringing machine 'nc1' up with 'virtualbox' provider...
317 Bringing machine 'cc' up with 'virtualbox' provider...
318 ...
319</pre></div></div>
320<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>
321
322<div class="source">
323<div class="source">
324<pre>&#x21aa; unzip -d asterix-yarn/ asterix-yarn-binary-assembly.zip
325...
326</pre></div></div>
327<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>
328
329<div class="source">
330<div class="source">
331<pre> &#x21aa; vagrant ssh cc
332 [vagrant@cc ~]$
333 [vagrant@cc ~]$ cd /vagrant/asterix-yarn
334 [vagrant@cc asterix-yarn]$
335</pre></div></div>
336<h1><a name="tut" id="tut">Tutorial installation</a></h1></div></div>
337<div class="section">
338<h2><a name="Configuration"></a>Configuration</h2>
339<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>
340
341<div class="source">
342
343<div class="source">
344<pre>
345<img src="images/yarn_clust.png" alt="Illustration of a simple YARN cluster with AsterixDB processes." />
346<i>Fig. 1</i>: Illustration of a simple YARN cluster with AsterixDB processes and their locations
347</pre></div>
348</div>
349<p>This AsterixDB cluster description file corresponds to the above deployed scenario.</p>
350
351<div class="source">
352<div class="source">
353<pre> &lt;cluster xmlns=&quot;yarn_cluster&quot;&gt;
354 &lt;name&gt;my_awesome_instance&lt;/name&gt;
355 &lt;txn_log_dir&gt;/home/yarn/&lt;/txn_log_dir&gt;
356 &lt;iodevices&gt;/home/yarn/&lt;/iodevices&gt;
357 &lt;store&gt;asterix-data&lt;/store&gt;
358 &lt;master_node&gt;
359 &lt;id&gt;cc&lt;/id&gt;
360 &lt;client_ip&gt;10.10.0.2&lt;/client_ip&gt;
361 &lt;cluster_ip&gt;10.10.0.2&lt;/cluster_ip&gt;
362 &lt;client_port&gt;1098&lt;/client_port&gt;
363 &lt;cluster_port&gt;1099&lt;/cluster_port&gt;
364 &lt;http_port&gt;8888&lt;/http_port&gt;
365 &lt;/master_node&gt;
366 &lt;node&gt;
367 &lt;id&gt;nc1&lt;/id&gt;
368 &lt;cluster_ip&gt;10.10.0.3&lt;/cluster_ip&gt;
369 &lt;/node&gt;
370 &lt;node&gt;
371 &lt;id&gt;nc2&lt;/id&gt;
372 &lt;cluster_ip&gt;10.10.0.4&lt;/cluster_ip&gt;
373 &lt;/node&gt;
374 &lt;metadata_node&gt;nc1&lt;/metadata_node&gt;
375 &lt;/cluster&gt;
376</pre></div></div>
377<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>
378<div class="section">
379<h2><a name="Installing_and_starting_the_instance"></a>Installing and starting the instance</h2>
380<p>With this configuration in hand, the YARN client can be used to deploy AsterixDB onto the cluster:</p>
381
382<div class="source">
383<div class="source">
384<pre> [vagrant@cc asterix-yarn]$ bin/asterix -n my_awesome_instance -c configs/my_awesome_cluster_desc.xml install
385 Waiting for new AsterixDB Instance to start .
386 Asterix successfully deployed and is now running.
387</pre></div></div>
388<p>The instance will be visible in the YARN RM similar to the below image
389<div class="source"> </p>
390<div class="source">
391<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>
392<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>
393
394<div class="source">
395
396<div class="source">
397<pre>
398<img src="images/asterix_webui.png" alt="Illustration of a simple YARN cluster with AsterixDB processes." />
399<i>Fig. 3</i>: AsterixDB Web User Interface
400</pre></div>
401</div>
402<p>From here, to try things out we could run the ADM &amp; AQL 101 tutorial or any other sample workload.</p></div>
403<div class="section">
404<h2><a name="Stopping_the_instance"></a>Stopping the instance</h2>
405<p>To stop the instance that was just deployed, the <tt>stop</tt> command is used:</p>
406
407<div class="source">
408<div class="source">
409<pre> [vagrant@cc asterix-yarn]$ bin/asterix -n my_awesome_instance stop
410 Stopping instance my_awesome_instance
411</pre></div></div>
412<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>
413
414<div class="source">
415<div class="source">
416<pre> [vagrant@cc asterix-yarn]$ bin/asterix -n my_awesome_instance kill
417 Are you sure you want to kill this instance? In-progress tasks will be aborted
418 Are you sure you want to do this? (yes/no): yes
419</pre></div></div></div>
420<div class="section">
421<h2><a name="Managing_stopped_instances"></a>Managing stopped instances</h2>
422<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>
423
424<div class="source">
425<div class="source">
426<pre> [vagrant@cc asterix-yarn]$ bin/asterix describe
427 Existing AsterixDB instances:
428 Instance my_awesome_instance is stopped
429</pre></div></div></div>
430<div class="section">
431<h2><a name="Starting_inactive_instances"></a>Starting inactive instances</h2>
432<p>To start the instance back up once more, the <tt>start</tt> action is used:</p>
433
434<div class="source">
435<div class="source">
436<pre> [vagrant@cc asterix-yarn]$ bin/asterix -n my_awesome_instance start
437 Waiting for AsterixDB instance to resume .
438 Asterix successfully deployed and is now running.
439</pre></div></div></div>
440<div class="section">
441<h2><a name="Shutting_down_vagrant"></a>Shutting down vagrant</h2>
442<p>To stop the virtual machines, issue the vagrant halt command from the host machine in the folder containing the Vagrantfile:</p>
443
444<div class="source">
445<div class="source">
446<pre> &#x21aa; vagrant halt
447</pre></div></div>
448<h1><a name="detail" id="detail">Listing of Commands and Options</a></h1></div>
449<div class="section">
450<h2><a name="Overview"></a>Overview</h2>
451<p>All commands take the format</p>
452
453<div class="source">
454<div class="source">
455<pre> asterix [action-specific option] [action]
456</pre></div></div>
457<div class="section">
458<h3><a name="Technical_details"></a>Technical details</h3>
459<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>
460<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>
461<div class="section">
462<h2><a name="Actions"></a>Actions</h2>
463<p>Below is a description of the various actions available via the AsterixDB YARN client</p>
464
465<table border="0" class="table table-striped">
466 <thead>
467
468<tr class="a">
469
470<th>Action </th>
471
472<th>Description </th>
473 </tr>
474 </thead>
475 <tbody>
476
477<tr class="b">
478
479<td><tt>start</tt> </td>
480
481<td>Starts an existing instance specified by the -name flag </td>
482 </tr>
483
484<tr class="a">
485
486<td><tt>install</tt> </td>
487
488<td>Deploys and starts an AsterixDB instance described by the config specified in the -c parameter, and named by the -n parameter </td>
489 </tr>
490
491<tr class="b">
492
493<td><tt>stop</tt> </td>
494
495<td>Attempts graceful shutdown of an AsterixDB instance specified in the -name parameter </td>
496 </tr>
497
498<tr class="a">
499
500<td><tt>kill</tt> </td>
501
502<td>Forcefully stops an instance by asking YARN to terminate all of its containers. </td>
503 </tr>
504
505<tr class="b">
506
507<td><tt>destroy</tt> </td>
508
509<td>Remove the instance specified by -name and all of its stored resources from the cluster </td>
510 </tr>
511
512<tr class="a">
513
514<td><tt>describe</tt> </td>
515
516<td>Show all instances, running or not, visible to the AsterixDB YARN client </td>
517 </tr>
518
519<tr class="b">
520
521<td><tt>backup</tt> </td>
522
523<td>Copies the artifacts from a stopped instance to another directory on HDFS so that the instance can be reverted to that state </td>
524 </tr>
525
526<tr class="a">
527
528<td><tt>restore</tt> </td>
529
530<td>Restores an instance to the state saved in a snapshot </td>
531 </tr>
532
533<tr class="b">
534
535<td><tt>lsbackup</tt> </td>
536
537<td>Lists the stored snapshots from an instance </td>
538 </tr>
539
540<tr class="a">
541
542<td><tt>rmbackup</tt> </td>
543
544<td>Removes a snapshot from HDFS </td>
545 </tr>
546
547<tr class="b">
548
549<td><tt>libinstall</tt></td>
550
551<td>Installs an external library or UDF for use in queries </td>
552 </tr>
553 </tbody>
554</table></div>
555<div class="section">
556<h2><a name="Options"></a>Options</h2>
557<p>Below are all availabe options, and which actions they can be applied to</p>
558
559<table border="0" class="table table-striped">
560 <thead>
561
562<tr class="a">
563
564<th>Option </th>
565
566<th>Long Form </th>
567
568<th>Short Form </th>
569
570<th>Usage </th>
571
572<th>Applicability </th>
573 </tr>
574 </thead>
575 <tbody>
576
577<tr class="b">
578
579<td>Configuration Path </td>
580
581<td><tt>-asterixConf</tt> </td>
582
583<td><tt>-c</tt> </td>
584
585<td><tt>-c [/path/to/file]</tt>. Path to an AsterixDB Cluster Description File </td>
586
587<td>Only required with <tt>create</tt> . A configuration in DFS defines the existance of an instance. </td>
588 </tr>
589
590<tr class="a">
591
592<td>Instance Name </td>
593
594<td><tt>-name</tt> </td>
595
596<td><tt>-n</tt> </td>
597
598<td><tt>-n [instance name]</tt> Name/Identifier for instance. </td>
599
600<td>Required for all actions except <tt>describe</tt> and <tt>lsbackup</tt> </td>
601 </tr>
602
603<tr class="b">
604
605<td>Asterix Binary Path </td>
606
607<td><tt>-asterixTar</tt> </td>
608
609<td><tt>-tar</tt> </td>
610
611<td><tt>-tar [/path/to/binary]</tt> Path to asterix-server binary. </td>
612
613<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>
614 </tr>
615
616<tr class="a">
617
618<td>Force </td>
619
620<td><tt>-force</tt> </td>
621
622<td><tt>-f</tt> </td>
623
624<td><tt>-f</tt>. Use at your own risk. Disables any sanity-checking during an action. </td>
625
626<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>
627 </tr>
628
629<tr class="b">
630
631<td>Refresh </td>
632
633<td><tt>-refresh</tt> </td>
634
635<td><tt>-r</tt> </td>
636
637<td><tt>-r</tt>. Replaces cached binary with one mentioned in <tt>-tar</tt>. </td>
638
639<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>
640 </tr>
641
642<tr class="a">
643
644<td>Base Parameters </td>
645
646<td><tt>-baseConf</tt> </td>
647
648<td><tt>-bc</tt> </td>
649
650<td><tt>-bc [path/to/params]</tt>. Specifies parameter file to use during instance creation/alteration. </td>
651
652<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>
653 </tr>
654
655<tr class="b">
656
657<td>External library path </td>
658
659<td><tt>-externalLibs</tt> </td>
660
661<td><tt>-l</tt> </td>
662
663<td><tt>-l [path/to/library]</tt>. Specifies an external library to upload to an existing instance. </td>
664
665<td>Only used in <tt>libinstall</tt>. Specifies the file containing the external function to install </td>
666 </tr>
667
668<tr class="a">
669
670<td>External library dataverse. </td>
671
672<td><tt>-libDataverse</tt> </td>
673
674<td><tt>-ld</tt> </td>
675
676<td><tt>-ld [existing dataverse name]</tt> </td>
677
678<td>Only used in <tt>libinstall</tt>. Specifies the dataverse to install the library in an <tt>-l</tt> option to. </td>
679 </tr>
680
681<tr class="b">
682
683<td>Snapshot ID </td>
684
685<td><tt>-snapshot</tt> </td>
686
687<td>[none] </td>
688
689<td><tt>-snapshot [backup timestamp/ID]</tt> </td>
690
691<td>Used with <tt>rmbackup</tt> and <tt>restore</tt> to specify which backup to perform the respective operation on. </td>
692 </tr>
693 </tbody>
694</table>
695<h1><a name="faq" id="faq">Frequently Asked Questions and Common Issues</a></h1>
696<div class="section">
697<h3><a name="Q:_Where_are_the_AsterixDB_logs_located"></a>Q: Where are the AsterixDB logs located?</h3>
698<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>
699<div class="section">
700<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>
701<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>
702<div class="section">
703<h3><a name="Q:_How_do_I_upgrade_my_existing_instance"></a>Q: How do I upgrade my existing instance?</h3>
704<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>
705<div class="section">
706<h3><a name="Q:_Does_AsterixDB_work_on_YARN_for_Windows"></a>Q: Does AsterixDB work on YARN for Windows?</h3>
707<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.apache.org">users@asterixdb.apache.org</a> mailing list for any issues.</p></div></div>
708 </div>
709 </div>
710 </div>
711
712 <hr/>
713
714 <footer>
715 <div class="container-fluid">
716 <div class="row span12">Copyright &copy; 2018
717 <a href="https://www.apache.org/">The Apache Software Foundation</a>.
718 All Rights Reserved.
719
720 </div>
721
722 <?xml version="1.0" encoding="UTF-8"?>
723<div class="row-fluid">Apache AsterixDB, AsterixDB, Apache, the Apache
724 feather logo, and the Apache AsterixDB project logo are either
725 registered trademarks or trademarks of The Apache Software
726 Foundation in the United States and other countries.
727 All other marks mentioned may be trademarks or registered
728 trademarks of their respective owners.</div>
729
730
731 </div>
732 </footer>
733 </body>
734</html>