blob: 798272c81435978ebb70ddde05d7b8652ba7cff8 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_161-google-v7) on Thu Oct 18 16:14:32 PDT 2018 -->
<title>ApexYarnLauncher (Apache Beam 2.8.0-SNAPSHOT)</title>
<meta name="date" content="2018-10-18">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ApexYarnLauncher (Apache Beam 2.8.0-SNAPSHOT)";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":9,"i2":9,"i3":10,"i4":10,"i5":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/beam/runners/apex/ApexRunnerResult.html" title="class in org.apache.beam.runners.apex"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.LaunchParams.html" title="class in org.apache.beam.runners.apex"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/beam/runners/apex/ApexYarnLauncher.html" target="_top">Frames</a></li>
<li><a href="ApexYarnLauncher.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.beam.runners.apex</div>
<h2 title="Class ApexYarnLauncher" class="title">Class ApexYarnLauncher</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.beam.runners.apex.ApexYarnLauncher</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">ApexYarnLauncher</span>
extends java.lang.Object</pre>
<div class="block">Proxy to launch the YARN application through the hadoop script to run in the pre-configured
environment (class path, configuration, native libraries etc.).
<p>The proxy takes the DAG and communicates with the Hadoop services to launch it on the cluster.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.LaunchParams.html" title="class in org.apache.beam.runners.apex">ApexYarnLauncher.LaunchParams</a></span></code>
<div class="block">Launch parameters that will be serialized and passed to the child process.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.ProcessWatcher.html" title="class in org.apache.beam.runners.apex">ApexYarnLauncher.ProcessWatcher</a></span></code>
<div class="block">Starts a command and waits for it to complete.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.html#ApexYarnLauncher--">ApexYarnLauncher</a></span>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.html#addProperties-org.apache.hadoop.conf.Configuration-java.util.Properties-">addProperties</a></span>(org.apache.hadoop.conf.Configuration&nbsp;conf,
java.util.Properties&nbsp;props)</code>
<div class="block">Transfer the properties to the configuration object.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.html#createJar-java.io.File-java.io.File-">createJar</a></span>(java.io.File&nbsp;dir,
java.io.File&nbsp;jarFile)</code>
<div class="block">Create a jar file from the given directory.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static java.util.List&lt;java.io.File&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.html#getYarnDeployDependencies--">getYarnDeployDependencies</a></span>()</code>
<div class="block">From the current classpath, find the jar files that need to be deployed with the application to
run on YARN.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected org.apache.apex.api.Launcher.AppHandle</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.html#launchApp-org.apache.beam.runners.apex.ApexYarnLauncher.LaunchParams-">launchApp</a></span>(<a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.LaunchParams.html" title="class in org.apache.beam.runners.apex">ApexYarnLauncher.LaunchParams</a>&nbsp;params)</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>org.apache.apex.api.Launcher.AppHandle</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.html#launchApp-com.datatorrent.api.StreamingApplication-java.util.Properties-">launchApp</a></span>(com.datatorrent.api.StreamingApplication&nbsp;app,
java.util.Properties&nbsp;configProperties)</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.html#main-java.lang.String:A-">main</a></span>(java.lang.String[]&nbsp;args)</code>
<div class="block">The main method expects the serialized DAG and will launch the YARN application.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="ApexYarnLauncher--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ApexYarnLauncher</h4>
<pre>public&nbsp;ApexYarnLauncher()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="launchApp-com.datatorrent.api.StreamingApplication-java.util.Properties-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>launchApp</h4>
<pre>public&nbsp;org.apache.apex.api.Launcher.AppHandle&nbsp;launchApp(com.datatorrent.api.StreamingApplication&nbsp;app,
java.util.Properties&nbsp;configProperties)
throws java.io.IOException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd>
</dl>
</li>
</ul>
<a name="launchApp-org.apache.beam.runners.apex.ApexYarnLauncher.LaunchParams-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>launchApp</h4>
<pre>protected&nbsp;org.apache.apex.api.Launcher.AppHandle&nbsp;launchApp(<a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.LaunchParams.html" title="class in org.apache.beam.runners.apex">ApexYarnLauncher.LaunchParams</a>&nbsp;params)
throws java.io.IOException</pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd>
</dl>
</li>
</ul>
<a name="getYarnDeployDependencies--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getYarnDeployDependencies</h4>
<pre>public static&nbsp;java.util.List&lt;java.io.File&gt;&nbsp;getYarnDeployDependencies()
throws java.io.IOException</pre>
<div class="block">From the current classpath, find the jar files that need to be deployed with the application to
run on YARN. Hadoop dependencies are provided through the Hadoop installation and the
application should not bundle them to avoid conflicts. This is done by removing the Hadoop
compile dependencies (transitively) by parsing the Maven dependency tree.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>list of jar files to ship</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - when dependency information cannot be read</dd>
</dl>
</li>
</ul>
<a name="createJar-java.io.File-java.io.File-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createJar</h4>
<pre>public static&nbsp;void&nbsp;createJar(java.io.File&nbsp;dir,
java.io.File&nbsp;jarFile)
throws java.io.IOException</pre>
<div class="block">Create a jar file from the given directory.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>dir</code> - source directory</dd>
<dd><code>jarFile</code> - jar file name</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - when file cannot be created</dd>
</dl>
</li>
</ul>
<a name="addProperties-org.apache.hadoop.conf.Configuration-java.util.Properties-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addProperties</h4>
<pre>public static&nbsp;void&nbsp;addProperties(org.apache.hadoop.conf.Configuration&nbsp;conf,
java.util.Properties&nbsp;props)</pre>
<div class="block">Transfer the properties to the configuration object.</div>
</li>
</ul>
<a name="main-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>main</h4>
<pre>public static&nbsp;void&nbsp;main(java.lang.String[]&nbsp;args)
throws java.io.IOException</pre>
<div class="block">The main method expects the serialized DAG and will launch the YARN application.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>args</code> - location of launch parameters</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.io.IOException</code> - when parameters cannot be read</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/beam/runners/apex/ApexRunnerResult.html" title="class in org.apache.beam.runners.apex"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/beam/runners/apex/ApexYarnLauncher.LaunchParams.html" title="class in org.apache.beam.runners.apex"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/beam/runners/apex/ApexYarnLauncher.html" target="_top">Frames</a></li>
<li><a href="ApexYarnLauncher.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>