blob: d3dd2c44c284f9c621b40dcc6afb10c4f74be8ad [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_292) on Tue Jun 15 06:12:11 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Plan (Apache Hadoop YARN ResourceManager 3.3.1 API)</title>
<meta name="date" content="2021-06-15">
<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="Plan (Apache Hadoop YARN ResourceManager 3.3.1 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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="class-use/Plan.html">Use</a></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/hadoop/yarn/server/resourcemanager/reservation/PeriodicRLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html" target="_top">Frames</a></li>
<li><a href="Plan.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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>Constr&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.hadoop.yarn.server.resourcemanager.reservation</div>
<h2 title="Interface Plan" class="title">Interface Plan</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">PlanContext</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">PlanEdit</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/InMemoryPlan.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">InMemoryPlan</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">Plan</span>
extends <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">PlanContext</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">PlanEdit</a></pre>
<div class="block">A Plan represents the central data structure of a reservation system that
maintains the "agenda" for the cluster. In particular, it maintains
information on how a set of <code>ReservationDefinition</code> that have been
previously accepted will be honored.
<code>ReservationDefinition</code> submitted by the users through the RM public
APIs are passed to appropriate <code>ReservationAgent</code>s, which in turn will
consult the Plan (via the <code>PlanView</code> interface) and try to determine
whether there are sufficient resources available in this Plan to satisfy the
temporal and resource constraints of a <code>ReservationDefinition</code>. If a
valid allocation is found the agent will try to store it in the plan (via the
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>PlanEdit</code></a> interface). Upon success the system return to the user a
positive acknowledgment, and a reservation identifier to be later used to
access the reserved resources.
A <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanFollower.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>PlanFollower</code></a> will continuously read from the Plan and will
affect the instantaneous allocation of resources among jobs running by
publishing the "current" slice of the Plan to the underlying scheduler. I.e.,
the configuration of queues/weights of the scheduler are modified to reflect
the allocations in the Plan.
As this interface have several methods we decompose them into three groups:
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>PlanContext</code></a>: containing configuration type information,
<code>PlanView</code> read-only access to the plan state, and <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>PlanEdit</code></a>
write access to the plan state.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract 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><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getAllReservations--">getAllReservations</a></span>()</code>
<div class="block">Gets all the reservations in the plan</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/RLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">RLESparseResourceAllocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getAvailableResourceOverTime-java.lang.String-org.apache.hadoop.yarn.api.records.ReservationId-long-long-long-">getAvailableResourceOverTime</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
org.apache.hadoop.yarn.api.records.ReservationId&nbsp;oldId,
long&nbsp;start,
long&nbsp;end,
long&nbsp;period)</code>
<div class="block">This method returns the amount of resources available to a given user
(optionally if removing a certain reservation) over the start-end time
range.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/RLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">RLESparseResourceAllocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getConsumptionForUserOverTime-java.lang.String-long-long-">getConsumptionForUserOverTime</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
long&nbsp;start,
long&nbsp;end)</code>
<div class="block">This method returns a RLE encoded view of the user reservation utilization
between start and end time.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/RLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">RLESparseResourceAllocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getCumulativeLoadOverTime-long-long-">getCumulativeLoadOverTime</a></span>(long&nbsp;start,
long&nbsp;end)</code>
<div class="block">Get the cumulative load over a time interval.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getEarliestStartTime--">getEarliestStartTime</a></span>()</code>
<div class="block">Gets the time (UTC in ms) at which the first reservation starts</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getLastEndTime--">getLastEndTime</a></span>()</code>
<div class="block">Returns the time (UTC in ms) at which the last reservation terminates</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getReservationById-org.apache.hadoop.yarn.api.records.ReservationId-">getReservationById</a></span>(org.apache.hadoop.yarn.api.records.ReservationId&nbsp;reservationID)</code>
<div class="block">Return a <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by its
<code>ReservationId</code></div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getReservationByUserAtTime-java.lang.String-long-">getReservationByUserAtTime</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
long&nbsp;t)</code>
<div class="block">Return a set of <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> that belongs to a certain
user and overlaps time t.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/RLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">RLESparseResourceAllocation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getReservationCountForUserOverTime-java.lang.String-long-long-">getReservationCountForUserOverTime</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
long&nbsp;start,
long&nbsp;end)</code>
<div class="block">This method returns a RLE encoded view of the user reservation count
utilization between start and end time.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getReservations-org.apache.hadoop.yarn.api.records.ReservationId-org.apache.hadoop.yarn.server.resourcemanager.reservation.ReservationInterval-">getReservations</a></span>(org.apache.hadoop.yarn.api.records.ReservationId&nbsp;reservationID,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInterval.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationInterval</a>&nbsp;interval)</code>
<div class="block">Return a set of <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by any user.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getReservations-org.apache.hadoop.yarn.api.records.ReservationId-org.apache.hadoop.yarn.server.resourcemanager.reservation.ReservationInterval-java.lang.String-">getReservations</a></span>(org.apache.hadoop.yarn.api.records.ReservationId&nbsp;reservationID,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInterval.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationInterval</a>&nbsp;interval,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user)</code>
<div class="block">Return a set of <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by the user who
made the reservation.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getReservationsAtTime-long-">getReservationsAtTime</a></span>(long&nbsp;tick)</code>
<div class="block">Gets all the active reservations at the specified point of time</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>org.apache.hadoop.yarn.api.records.Resource</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getTotalCapacity--">getTotalCapacity</a></span>()</code>
<div class="block">Returns the overall capacity in terms of <code>Resource</code> assigned to this
plan (typically will correspond to the absolute capacity of the
corresponding queue).</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>org.apache.hadoop.yarn.api.records.Resource</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html#getTotalCommittedResources-long-">getTotalCommittedResources</a></span>(long&nbsp;tick)</code>
<div class="block">Returns the total <code>Resource</code> reserved for all users at the specified
time</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.yarn.server.resourcemanager.reservation.PlanEdit">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.hadoop.yarn.server.resourcemanager.reservation.<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">PlanEdit</a></h3>
<code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html#addReservation-org.apache.hadoop.yarn.server.resourcemanager.reservation.ReservationAllocation-boolean-">addReservation</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html#archiveCompletedReservations-long-">archiveCompletedReservations</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html#deleteReservation-org.apache.hadoop.yarn.api.records.ReservationId-">deleteReservation</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html#setTotalCapacity-org.apache.hadoop.yarn.api.records.Resource-">setTotalCapacity</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanEdit.html#updateReservation-org.apache.hadoop.yarn.server.resourcemanager.reservation.ReservationAllocation-">updateReservation</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.yarn.server.resourcemanager.reservation.PlanContext">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.hadoop.yarn.server.resourcemanager.reservation.<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">PlanContext</a></h3>
<code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getMaximumAllocation--">getMaximumAllocation</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getMaximumPeriodicity--">getMaximumPeriodicity</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getMinimumAllocation--">getMinimumAllocation</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getMoveOnExpiry--">getMoveOnExpiry</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getQueueMetrics--">getQueueMetrics</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getQueueName--">getQueueName</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getReplanner--">getReplanner</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getReservationAgent--">getReservationAgent</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getResourceCalculator--">getResourceCalculator</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getSharingPolicy--">getSharingPolicy</a>, <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html#getStep--">getStep</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getReservations-org.apache.hadoop.yarn.api.records.ReservationId-org.apache.hadoop.yarn.server.resourcemanager.reservation.ReservationInterval-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReservations</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;&nbsp;getReservations(org.apache.hadoop.yarn.api.records.ReservationId&nbsp;reservationID,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInterval.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationInterval</a>&nbsp;interval,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user)</pre>
<div class="block">Return a set of <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by the user who
made the reservation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>reservationID</code> - the unqiue id to identify the
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a></dd>
<dd><code>interval</code> - the time interval used to retrieve the reservation
allocations from. Only reservations with start time no greater
than the interval end time, and end time no less than the interval
start time will be selected.</dd>
<dd><code>user</code> - the user to retrieve the reservation allocation from.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a set of <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by the user who
made the reservation</dd>
</dl>
</li>
</ul>
<a name="getReservations-org.apache.hadoop.yarn.api.records.ReservationId-org.apache.hadoop.yarn.server.resourcemanager.reservation.ReservationInterval-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReservations</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;&nbsp;getReservations(org.apache.hadoop.yarn.api.records.ReservationId&nbsp;reservationID,
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationInterval.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationInterval</a>&nbsp;interval)</pre>
<div class="block">Return a set of <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by any user.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>reservationID</code> - the unqiue id to identify the
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a></dd>
<dd><code>interval</code> - the time interval used to retrieve the reservation
allocations from. Only reservations with start time no greater
than the interval end time, and end time no less than the interval
start time will be selected.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a set of <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by any user</dd>
</dl>
</li>
</ul>
<a name="getReservationById-org.apache.hadoop.yarn.api.records.ReservationId-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReservationById</h4>
<pre><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&nbsp;getReservationById(org.apache.hadoop.yarn.api.records.ReservationId&nbsp;reservationID)</pre>
<div class="block">Return a <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by its
<code>ReservationId</code></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>reservationID</code> - the unique id to identify the
<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> identified by the specified id</dd>
</dl>
</li>
</ul>
<a name="getReservationByUserAtTime-java.lang.String-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReservationByUserAtTime</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;&nbsp;getReservationByUserAtTime(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
long&nbsp;t)</pre>
<div class="block">Return a set of <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a> that belongs to a certain
user and overlaps time t.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>user</code> - the user being considered</dd>
<dd><code>t</code> - the instant in time being considered</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>set of active <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><code>ReservationAllocation</code></a>s for this user at this
time</dd>
</dl>
</li>
</ul>
<a name="getReservationsAtTime-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReservationsAtTime</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;&nbsp;getReservationsAtTime(long&nbsp;tick)</pre>
<div class="block">Gets all the active reservations at the specified point of time</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>tick</code> - the time (UTC in ms) for which the active reservations are
requested</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>set of active reservations at the specified time</dd>
</dl>
</li>
</ul>
<a name="getAllReservations--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllReservations</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/ReservationAllocation.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation">ReservationAllocation</a>&gt;&nbsp;getAllReservations()</pre>
<div class="block">Gets all the reservations in the plan</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>set of all reservations handled by this Plan</dd>
</dl>
</li>
</ul>
<a name="getTotalCommittedResources-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalCommittedResources</h4>
<pre>org.apache.hadoop.yarn.api.records.Resource&nbsp;getTotalCommittedResources(long&nbsp;tick)</pre>
<div class="block">Returns the total <code>Resource</code> reserved for all users at the specified
time</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>tick</code> - the time (UTC in ms) for which the reserved resources are
requested</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the total <code>Resource</code> reserved for all users at the specified
time</dd>
</dl>
</li>
</ul>
<a name="getTotalCapacity--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalCapacity</h4>
<pre>org.apache.hadoop.yarn.api.records.Resource&nbsp;getTotalCapacity()</pre>
<div class="block">Returns the overall capacity in terms of <code>Resource</code> assigned to this
plan (typically will correspond to the absolute capacity of the
corresponding queue).</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the overall capacity in terms of <code>Resource</code> assigned to this
plan</dd>
</dl>
</li>
</ul>
<a name="getEarliestStartTime--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEarliestStartTime</h4>
<pre>long&nbsp;getEarliestStartTime()</pre>
<div class="block">Gets the time (UTC in ms) at which the first reservation starts</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the time (UTC in ms) at which the first reservation starts</dd>
</dl>
</li>
</ul>
<a name="getLastEndTime--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastEndTime</h4>
<pre>long&nbsp;getLastEndTime()</pre>
<div class="block">Returns the time (UTC in ms) at which the last reservation terminates</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the time (UTC in ms) at which the last reservation terminates</dd>
</dl>
</li>
</ul>
<a name="getAvailableResourceOverTime-java.lang.String-org.apache.hadoop.yarn.api.records.ReservationId-long-long-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAvailableResourceOverTime</h4>
<pre><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/RLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">RLESparseResourceAllocation</a>&nbsp;getAvailableResourceOverTime(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
org.apache.hadoop.yarn.api.records.ReservationId&nbsp;oldId,
long&nbsp;start,
long&nbsp;end,
long&nbsp;period)
throws <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/exceptions/PlanningException.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation.exceptions">PlanningException</a></pre>
<div class="block">This method returns the amount of resources available to a given user
(optionally if removing a certain reservation) over the start-end time
range. If the request is periodic (period is non-zero) we return the
minimum amount of resources available to periodic reservations (in all
"period" windows within the system maxPeriod / LCM).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>user</code> - the user being considered</dd>
<dd><code>oldId</code> - the identifier of the existing reservation</dd>
<dd><code>start</code> - start of the time interval.</dd>
<dd><code>end</code> - end of the time interval.</dd>
<dd><code>period</code> - the ms periodicty for this request (loop and pick min till
maxPeriodicity)</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a view of the plan as it is available to this user</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/exceptions/PlanningException.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation.exceptions">PlanningException</a></code> - if operation is unsuccessful</dd>
</dl>
</li>
</ul>
<a name="getReservationCountForUserOverTime-java.lang.String-long-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReservationCountForUserOverTime</h4>
<pre><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/RLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">RLESparseResourceAllocation</a>&nbsp;getReservationCountForUserOverTime(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
long&nbsp;start,
long&nbsp;end)</pre>
<div class="block">This method returns a RLE encoded view of the user reservation count
utilization between start and end time.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>user</code> - the user being considered</dd>
<dd><code>start</code> - start of the time interval.</dd>
<dd><code>end</code> - end of the time interval.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>RLE encoded view of reservation used over time</dd>
</dl>
</li>
</ul>
<a name="getConsumptionForUserOverTime-java.lang.String-long-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConsumptionForUserOverTime</h4>
<pre><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/RLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">RLESparseResourceAllocation</a>&nbsp;getConsumptionForUserOverTime(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
long&nbsp;start,
long&nbsp;end)</pre>
<div class="block">This method returns a RLE encoded view of the user reservation utilization
between start and end time.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>user</code> - the user being considered</dd>
<dd><code>start</code> - start of the time interval.</dd>
<dd><code>end</code> - end of the time interval.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>RLE encoded view of resources used over time</dd>
</dl>
</li>
</ul>
<a name="getCumulativeLoadOverTime-long-long-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getCumulativeLoadOverTime</h4>
<pre><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/RLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation">RLESparseResourceAllocation</a>&nbsp;getCumulativeLoadOverTime(long&nbsp;start,
long&nbsp;end)
throws <a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/exceptions/PlanningException.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation.exceptions">PlanningException</a></pre>
<div class="block">Get the cumulative load over a time interval.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>start</code> - start of the time interval.</dd>
<dd><code>end</code> - end of the time interval.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>RLE sparse allocation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/exceptions/PlanningException.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation.exceptions">PlanningException</a></code> - if operation is unsuccessful</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="class-use/Plan.html">Use</a></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/hadoop/yarn/server/resourcemanager/reservation/PeriodicRLESparseResourceAllocation.html" title="class in org.apache.hadoop.yarn.server.resourcemanager.reservation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/hadoop/yarn/server/resourcemanager/reservation/PlanContext.html" title="interface in org.apache.hadoop.yarn.server.resourcemanager.reservation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/hadoop/yarn/server/resourcemanager/reservation/Plan.html" target="_top">Frames</a></li>
<li><a href="Plan.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2008&#x2013;2021 <a href="https://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>