blob: 1db16742295d9ad98191a1ceb0872a8dff5419f6 [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 -->
<title>RpcQosOptions (Apache Beam 2.38.0-SNAPSHOT)</title>
<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="RpcQosOptions (Apache Beam 2.38.0-SNAPSHOT)";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":9,"i16":10,"i17":10,"i18":10};
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/sdk/io/gcp/firestore/FirestoreV1.WriteSuccessSummary.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" target="_top">Frames</a></li>
<li><a href="RpcQosOptions.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>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.beam.sdk.io.gcp.firestore</div>
<h2 title="Class RpcQosOptions" class="title">Class RpcQosOptions</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.beam.sdk.io.gcp.firestore.RpcQosOptions</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>java.io.Serializable, <a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display">HasDisplayData</a></dd>
</dl>
<hr>
<br>
<pre><a href="https://static.javadoc.io/com.google.code.findbugs/jsr305/3.0.2/javax/annotation/concurrent/Immutable.html?is-external=true" title="class or interface in javax.annotation.concurrent">@Immutable</a>
<a href="https://static.javadoc.io/com.google.code.findbugs/jsr305/3.0.2/javax/annotation/concurrent/ThreadSafe.html?is-external=true" title="class or interface in javax.annotation.concurrent">@ThreadSafe</a>
public final class <span class="typeNameLabel">RpcQosOptions</span>
extends java.lang.Object
implements java.io.Serializable, <a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display">HasDisplayData</a></pre>
<div class="block">Quality of Service manager options for Firestore RPCs.
<p>Every RPC which is sent to Cloud Firestore is subject to QoS considerations. Successful,
failed, attempted requests are all tracked and directly drive the determination of when to
attempt an RPC.
<p>Configuration of options can be accomplished by passing an instances of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions</code></a>
to the <code>withRpcQosOptions</code> method of each <code>Builder</code> available in <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/FirestoreV1.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>FirestoreV1</code></a>.
<p>A new instance of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions.Builder</code></a> can be created via <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#newBuilder--"><code>newBuilder()</code></a>. A default instance of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions</code></a> can be created via
<a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#defaultOptions--"><code>defaultOptions()</code></a>.
<p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/FirestoreV1.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>FirestoreV1</code></a>,
<code>FirestoreV1.Transform.Builder.withRpcQosOptions(RpcQosOptions)</code>,
<code>BatchWriteWithSummary.Builder#withRpcQosOptions(RpcQosOptions)</code>,
<code>FirestoreV1.Transform.Builder.withRpcQosOptions(RpcQosOptions)</code>,
<code>FirestoreV1.Transform.Builder.withRpcQosOptions(RpcQosOptions)</code>,
<code>FirestoreV1.Transform.Builder.withRpcQosOptions(RpcQosOptions)</code>,
<code>FirestoreV1.Transform.Builder.withRpcQosOptions(RpcQosOptions)</code>,
<a target="_blank" rel="noopener noreferrer"
href="https://cloud.google.com/firestore/quotas#limits">Standard limits</a>,
<a target="_blank" rel="noopener noreferrer"
href="https://cloud.google.com/firestore/docs/best-practices#designing_for_scale">Designing
for scale</a>,
<a href="../../../../../../../serialized-form.html#org.apache.beam.sdk.io.gcp.firestore.RpcQosOptions">Serialized Form</a></dd>
</dl>
</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>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore">RpcQosOptions.Builder</a></span></code>
<div class="block">Mutable Builder class for creating instances of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions</code></a>.</div>
</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 <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" title="class in org.apache.beam.sdk.io.gcp.firestore">RpcQosOptions</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#defaultOptions--">defaultOptions</a></span>()</code>
<div class="block">Factory method to return a new instance of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions</code></a> with all default values.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#equals-java.lang.Object-">equals</a></span>(<a href="https://static.javadoc.io/org.checkerframework/checker-qual/3.10.0/org/checkerframework/checker/nullness/qual/Nullable.html?is-external=true" title="class or interface in org.checkerframework.checker.nullness.qual">@Nullable</a> java.lang.Object&nbsp;o)</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getBatchInitialCount--">getBatchInitialCount</a></span>()</code>
<div class="block">The initial size of a batch; used in the absence of the QoS system having significant data to
determine a better batch size.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getBatchMaxBytes--">getBatchMaxBytes</a></span>()</code>
<div class="block">The maximum number of bytes to include in a batch.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getBatchMaxCount--">getBatchMaxCount</a></span>()</code>
<div class="block">The maximum number of writes to include in a batch.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getBatchTargetLatency--">getBatchTargetLatency</a></span>()</code>
<div class="block">Target latency for batch requests.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getHintMaxNumWorkers--">getHintMaxNumWorkers</a></span>()</code>
<div class="block">A hint to the QoS system for the intended max number of workers for a pipeline.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getInitialBackoff--">getInitialBackoff</a></span>()</code>
<div class="block">The initial backoff duration to be used before retrying a request for the first time.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getMaxAttempts--">getMaxAttempts</a></span>()</code>
<div class="block">The maximum number of times a request will be attempted for a complete successful result.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getOverloadRatio--">getOverloadRatio</a></span>()</code>
<div class="block">The target ratio between requests sent and successful requests.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getSamplePeriod--">getSamplePeriod</a></span>()</code>
<div class="block">The length of time sampled request data will be retained.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getSamplePeriodBucketSize--">getSamplePeriodBucketSize</a></span>()</code>
<div class="block">The size of buckets within the specified <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getSamplePeriod--"><code>samplePeriod</code></a>.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getThrottleDuration--">getThrottleDuration</a></span>()</code>
<div class="block">The amount of time an attempt will be throttled if deemed necessary based on previous success
rate.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#isShouldReportDiagnosticMetrics--">isShouldReportDiagnosticMetrics</a></span>()</code>
<div class="block">Whether additional diagnostic metrics should be reported for a Transform.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore">RpcQosOptions.Builder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#newBuilder--">newBuilder</a></span>()</code>
<div class="block">Factory method to return a new instance of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions.Builder</code></a> with all values set to their initial
default values.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">populateDisplayData</a></span>(<a href="../../../../../../../org/apache/beam/sdk/transforms/display/DisplayData.Builder.html" title="interface in org.apache.beam.sdk.transforms.display">DisplayData.Builder</a>&nbsp;builder)</code>
<div class="block">Register display data for the given transform or component.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore">RpcQosOptions.Builder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#toBuilder--">toBuilder</a></span>()</code>
<div class="block">Create a new <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions.Builder</code></a> initialized with the values from this instance.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#toString--">toString</a></span>()</code>&nbsp;</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, finalize, getClass, notify, notifyAll, wait, wait, wait</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="populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>populateDisplayData</h4>
<pre>public&nbsp;void&nbsp;populateDisplayData(<a href="../../../../../../../org/apache/beam/sdk/transforms/display/DisplayData.Builder.html" title="interface in org.apache.beam.sdk.transforms.display">DisplayData.Builder</a>&nbsp;builder)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html#populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">HasDisplayData</a></code></span></div>
<div class="block">Register display data for the given transform or component.
<p><code>populateDisplayData(DisplayData.Builder)</code> is invoked by Pipeline runners to collect
display data via <a href="../../../../../../../org/apache/beam/sdk/transforms/display/DisplayData.html#from-org.apache.beam.sdk.transforms.display.HasDisplayData-"><code>DisplayData.from(HasDisplayData)</code></a>. Implementations may call <code>super.populateDisplayData(builder)</code> in order to register display data in the current namespace,
but should otherwise use <code>subcomponent.populateDisplayData(builder)</code> to use the namespace
of the subcomponent.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html#populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">populateDisplayData</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display">HasDisplayData</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>builder</code> - The builder to populate with display data.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display"><code>HasDisplayData</code></a></dd>
</dl>
</li>
</ul>
<a name="getMaxAttempts--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxAttempts</h4>
<pre>public&nbsp;int&nbsp;getMaxAttempts()</pre>
<div class="block">The maximum number of times a request will be attempted for a complete successful result.
<p>For a stream based response, the full stream read must complete within the specified number
of attempts. Restarting a stream will count as a new attempt.
<p><i>Default Value:</i> 5</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withMaxAttempts-int-"><code>RpcQosOptions.Builder.withMaxAttempts(int)</code></a></dd>
</dl>
</li>
</ul>
<a name="getInitialBackoff--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInitialBackoff</h4>
<pre>public&nbsp;<a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a>&nbsp;getInitialBackoff()</pre>
<div class="block">The initial backoff duration to be used before retrying a request for the first time.
<p><i>Default Value:</i> 5 sec</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withInitialBackoff-org.joda.time.Duration-"><code>RpcQosOptions.Builder.withInitialBackoff(Duration)</code></a></dd>
</dl>
</li>
</ul>
<a name="getSamplePeriod--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSamplePeriod</h4>
<pre>public&nbsp;<a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a>&nbsp;getSamplePeriod()</pre>
<div class="block">The length of time sampled request data will be retained.
<p><i>Default Value:</i> 2 min</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withSamplePeriod-org.joda.time.Duration-"><code>RpcQosOptions.Builder.withSamplePeriod(Duration)</code></a></dd>
</dl>
</li>
</ul>
<a name="getSamplePeriodBucketSize--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSamplePeriodBucketSize</h4>
<pre>public&nbsp;<a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a>&nbsp;getSamplePeriodBucketSize()</pre>
<div class="block">The size of buckets within the specified <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getSamplePeriod--"><code>samplePeriod</code></a>.
<p><i>Default Value:</i> 10 sec</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withSamplePeriodBucketSize-org.joda.time.Duration-"><code>RpcQosOptions.Builder.withSamplePeriodBucketSize(Duration)</code></a></dd>
</dl>
</li>
</ul>
<a name="getOverloadRatio--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOverloadRatio</h4>
<pre>public&nbsp;double&nbsp;getOverloadRatio()</pre>
<div class="block">The target ratio between requests sent and successful requests. This is "K" in the formula in
<a target="_blank" rel="noopener noreferrer"
href="https://landing.google.com/sre/book/chapters/handling-overload.html">SRE Book - Handling
Overload</a>
<p><i>Default Value:</i> 1.05</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withOverloadRatio-double-"><code>RpcQosOptions.Builder.withOverloadRatio(double)</code></a></dd>
</dl>
</li>
</ul>
<a name="getThrottleDuration--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getThrottleDuration</h4>
<pre>public&nbsp;<a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a>&nbsp;getThrottleDuration()</pre>
<div class="block">The amount of time an attempt will be throttled if deemed necessary based on previous success
rate.
<p><i>Default value:</i> 5 sec</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withThrottleDuration-org.joda.time.Duration-"><code>RpcQosOptions.Builder.withThrottleDuration(Duration)</code></a></dd>
</dl>
</li>
</ul>
<a name="getBatchInitialCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBatchInitialCount</h4>
<pre>public&nbsp;int&nbsp;getBatchInitialCount()</pre>
<div class="block">The initial size of a batch; used in the absence of the QoS system having significant data to
determine a better batch size.
<p><i>Default Value:</i> 20</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withBatchInitialCount-int-"><code>RpcQosOptions.Builder.withBatchInitialCount(int)</code></a></dd>
</dl>
</li>
</ul>
<a name="getBatchMaxCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBatchMaxCount</h4>
<pre>public&nbsp;int&nbsp;getBatchMaxCount()</pre>
<div class="block">The maximum number of writes to include in a batch. (Used in the absence of the QoS system
having significant data to determine a better value). The actual number of writes per request
may be lower if we reach <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getBatchMaxBytes--"><code>batchMaxBytes</code></a>.
<p><i>Default Value:</i> 500</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withBatchMaxCount-int-"><code>RpcQosOptions.Builder.withBatchMaxCount(int)</code></a></dd>
</dl>
</li>
</ul>
<a name="getBatchMaxBytes--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBatchMaxBytes</h4>
<pre>public&nbsp;long&nbsp;getBatchMaxBytes()</pre>
<div class="block">The maximum number of bytes to include in a batch. (Used in the absence of the QoS system
having significant data to determine a better value). The actual number of bytes per request
may be lower if <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#getBatchMaxCount--"><code>batchMaxCount</code></a> is reached first.
<p><i>Default Value:</i> 9.5 MiB</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withBatchMaxBytes-long-"><code>RpcQosOptions.Builder.withBatchMaxBytes(long)</code></a></dd>
</dl>
</li>
</ul>
<a name="getBatchTargetLatency--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBatchTargetLatency</h4>
<pre>public&nbsp;<a href="https://static.javadoc.io/joda-time/joda-time/2.10.10/org/joda/time/Duration.html?is-external=true" title="class or interface in org.joda.time">Duration</a>&nbsp;getBatchTargetLatency()</pre>
<div class="block">Target latency for batch requests. It aims for a target response time per RPC: the response
times for previous RPCs and the number of writes contained in them, calculates a rolling
average time-per-write, and chooses the number of writes for future requests to hit the target
time.
<p><i>Default Value:</i> 5 sec</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withBatchTargetLatency-org.joda.time.Duration-"><code>RpcQosOptions.Builder.withBatchTargetLatency(Duration)</code></a></dd>
</dl>
</li>
</ul>
<a name="getHintMaxNumWorkers--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHintMaxNumWorkers</h4>
<pre>public&nbsp;int&nbsp;getHintMaxNumWorkers()</pre>
<div class="block">A hint to the QoS system for the intended max number of workers for a pipeline. The provided
value can be used to try to scale calculations to values appropriate for the pipeline as a
whole.
<p>If you are running your pipeline on <a target="_blank" rel="noopener noreferrer"
href="https://cloud.google.com/dataflow">Cloud Dataflow</a> this parameter should be set to the
same value as <a target="_blank" rel="noopener noreferrer"
href="https://cloud.google.com/dataflow/docs/guides/specifying-exec-params#setting-other-cloud-dataflow-pipeline-options"><code>maxNumWorkers</code></a>
<p><i>Default Value:</i> 500</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withBatchMaxCount-int-"><code>RpcQosOptions.Builder.withBatchMaxCount(int)</code></a></dd>
</dl>
</li>
</ul>
<a name="isShouldReportDiagnosticMetrics--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isShouldReportDiagnosticMetrics</h4>
<pre>public&nbsp;boolean&nbsp;isShouldReportDiagnosticMetrics()</pre>
<div class="block">Whether additional diagnostic metrics should be reported for a Transform.
<p>If true, additional detailed diagnostic metrics will be reported for the RPC QoS subsystem.
<p>This parameter should be used with care as it will output ~40 additional custom metrics
which will count toward any possible pipeline metrics limits (For example <a target="_blank"
rel="noopener noreferrer"
href="https://cloud.google.com/dataflow/docs/guides/using-cloud-monitoring#custom_metrics">Dataflow
Custom Metrics</a> limits and <a target="_blank" rel="noopener noreferrer"
href="https://cloud.google.com/monitoring/quotas#custom_metrics_quotas">Cloud Monitoring custom
metrics quota</a>)
<p><i>Default Value:</i> <code>false</code></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html#withReportDiagnosticMetrics--"><code>RpcQosOptions.Builder.withReportDiagnosticMetrics()</code></a></dd>
</dl>
</li>
</ul>
<a name="toBuilder--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toBuilder</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore">RpcQosOptions.Builder</a>&nbsp;toBuilder()</pre>
<div class="block">Create a new <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions.Builder</code></a> initialized with the values from this instance.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions.Builder</code></a> initialized with the values from this instance.</dd>
</dl>
</li>
</ul>
<a name="equals-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre>public&nbsp;boolean&nbsp;equals(<a href="https://static.javadoc.io/org.checkerframework/checker-qual/3.10.0/org/checkerframework/checker/nullness/qual/Nullable.html?is-external=true" title="class or interface in org.checkerframework.checker.nullness.qual">@Nullable</a> java.lang.Object&nbsp;o)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>equals</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a name="hashCode--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hashCode</h4>
<pre>public&nbsp;int&nbsp;hashCode()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>hashCode</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a name="defaultOptions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultOptions</h4>
<pre>public static&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" title="class in org.apache.beam.sdk.io.gcp.firestore">RpcQosOptions</a>&nbsp;defaultOptions()</pre>
<div class="block">Factory method to return a new instance of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions</code></a> with all default values.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>New instance of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions</code></a> with all default values</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#newBuilder--"><code>newBuilder()</code></a></dd>
</dl>
</li>
</ul>
<a name="newBuilder--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>newBuilder</h4>
<pre>public static&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore">RpcQosOptions.Builder</a>&nbsp;newBuilder()</pre>
<div class="block">Factory method to return a new instance of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions.Builder</code></a> with all values set to their initial
default values.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>New instance of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><code>RpcQosOptions.Builder</code></a> with all values set to their initial default values</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html#defaultOptions--"><code>defaultOptions()</code></a></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/sdk/io/gcp/firestore/FirestoreV1.WriteSuccessSummary.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.Builder.html" title="class in org.apache.beam.sdk.io.gcp.firestore"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/beam/sdk/io/gcp/firestore/RpcQosOptions.html" target="_top">Frames</a></li>
<li><a href="RpcQosOptions.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>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 ======= -->
</body>
</html>